C#家庭理财项目Word文件下载.docx
- 文档编号:17877602
- 上传时间:2022-12-11
- 格式:DOCX
- 页数:40
- 大小:272.83KB
C#家庭理财项目Word文件下载.docx
《C#家庭理财项目Word文件下载.docx》由会员分享,可在线阅读,更多相关《C#家庭理财项目Word文件下载.docx(40页珍藏版)》请在冰豆网上搜索。
但是可能大小有点不合适,这时右击属性,选择如下:
。
然后再添加两个label和两个textbox,两个button,这里注意了,button可以设置背景图片,这个很好的。
如下所示:
还有个技巧:
就是设置每个控件的TabIndex,越小就越靠在前面,这样就可以方便的使用tab来切换了。
5.首先我们完成注册功能
首先添加一个注册窗体,按项目右击添加窗体,就可以了。
命名为RegisterForm.cs
这里注意:
这些按钮什么的都可以向前面的地方复制过来就行了。
6.开始编码实现
在首页双击注册按钮:
然后要实现打开一个新的窗口需要两步:
privatevoidbtnRegister_Click(objectsender,EventArgse)
{
//1首先实例化窗口
RegisterFormrForm=newRegisterForm();
//2显示窗口
rForm.Show();
}
然后在后面添加一个lable
这里注意,叉叉符合时label里面的Image属性,然后设置对其为中左。
再在Text的前面打三个空格。
然后一样的复制三个作为判断,如下:
这里要注意的是三个默认是不显示的,设置属性为Visible为false
然后编写代码如下:
//点击注册按钮时
//第一步验证是否为空
boolisEmpty=checkEmpty();
if(isEmpty)
//插入数据库
//这个是用来判断是否为空值的
privateboolcheckEmpty()
boolresult=true;
if(this.txtUserName.Text.Trim()==string.Empty)
this.lblNameError.Visible=true;
//如果为空就显示错误信息
returnfalse;
else
//这个表示如果不为空的话,就隐藏信息
this.lblNameError.Visible=false;
if(this.txtPassword.Text.Trim()==string.Empty)
this.lblPasswordError.Visible=true;
//如果为空就显示错误信息
{//这个表示如果不为空的话,就隐藏信息
this.lblPasswordError.Visible=false;
if(this.txtConfirmPassword.Text.Trim()==string.Empty)
this.lblConfigPasswordError.Visible=true;
//如何两个密码都输入了这里判断两次密码的值是否相等
if(this.txtPassword.Text.Trim()!
=this.txtConfirmPassword.Text.Trim())
//这里注意留三个空格,给图片显示
this.lblConfigPasswordError.Text="
两次输入的密码不一致"
;
this.lblConfigPasswordError.Visible=false;
returnresult;
}}
注意几点:
1,密码是明文的,修改密码属性框的属性PasswordChar为*
//这个是取消按钮
privatevoidbtnCancel_Click(objectsender,EventArgse)
this.Close();
3数据库的操作
1,编写数据操作类Dbhelper
namespaceFamilyFinance
{
classDbHelper
privatestaticstringstrConn="
datasource=.;
initialcatalog=FamilyFinace;
uid=sa;
password=112966391012"
publicstaticSqlConnectionconn=newSqlConnection(strConn);
然后编写UserDao类用来操作数据库,以后再慢慢完善这个类
namespaceFamilyFinance.Dao
classUserDao
publicboolinsertUser(stringusername,stringpassword)
boolresult=false;
stringsql=string.Format("
insertintoFamilyUser(UserName,UserPassword)values('
{0}'
'
{1}'
)"
username,password);
SqlCommandcmd=newSqlCommand(sql,DbHelper.conn);
DbHelper.conn.Open();
intcount=cmd.ExecuteNonQuery();
if(count>
0){
result=true;
}}}
然后再在界面中调用即可,但是注意要引用的空间:
usingFamilyFinance.Dao;
这个就是上面的namespace。
UserDaoUserManager=newUserDao();
boolresult=UserManager.insertUser(this.txtUserName.Text,this.txtPassword.Text);
if(result)
MessageBox.Show("
添加用户成功"
);
}}}
4.实现窗体之间的传值四步走
在登录页面下:
publicpartialclassLoginForm:
Form
publicLoginForm()
InitializeComponent();
rForm.LForm=this;
//这里把当前窗口赋给注册窗口中的form实现窗口之间参数的第二步
privatevoidbtnLogin_Click(objectsender,EventArgse)
//用来接来注册窗口传递过来的用户名第三步
publicvoidGetUserName(stringUserName)
txtUserName.Text=UserName;
}
在注册页面里面:
publicpartialclassRegisterForm:
publicLoginFormLForm;
//实现窗口之间值传递的第一步,用来保存登录窗口
publicRegisterForm()
//添加成功后,将用户名传到登录页面中去。
第四步
this.LForm.GetUserName(this.txtUserName.Text.Trim());
5登录实现
1首先建立一个主窗口MainForm这个是登录之后看到的页面
2完善界面内容,很多内容可以从外面复制而来。
intqueryResult=0;
boolresult=checkEmpty();
//如果用户名和密码都存在就进行房屋数据库
queryResult=UserManager.queryUser(this.txtUserName.Text,this.txtPassword.Text);
if(queryResult>
0)
//如果存在的话,需要显示主窗口
MainFormmForm=newMainForm();
mForm.Show();
//然后隐藏登录窗口,这里其实有个问题,这样下次运行时就会有个程序占着位置
this.Hide();
this.lblAllError.Visible=true;
3.在UserDao层加入:
publicintqueryUser(stringusername,stringpassword)
intresult=0;
selectcount(*)fromFamilyUserwhereUserName='
andUserPassword='
"
username,password);
SqlCommandcmd=newSqlCommand(sql,DbHelper.conn);
result=(int)cmd.ExecuteScalar();
DbHelper.conn.Close();
6主界面
1.编写logo和标题
2.编写菜单栏
3.菜单栏边框效果是按照右边的小三角来的,然后选择RenderMode中选择System,就会出现一个横杆了,还有就是每个菜单项的设置,可以选择他的属性,然后选择backColor,同时,可以右击插入分隔符。
4.设置工具条:
更改颜色。
然后选择工具栏的小三角,选择button,右击选择小图片。
然后要更改小图标的大小,这里设置属性AutoSize为false,然后再更改Size的大小。
但是还是存在一个问题,就是他不会随着界面的方法而放大,这时就要设置ImageScaling为None,他会随着大小而改变。
当鼠标经过的时候要显示提示信息,编写属性ToolTipText。
在设置工具栏上多个图标的时候有个小技巧,就是设置一个后,复制这个到后面的,然后重新导入图片就行了,其他设置就不会改变了。
接下来是设置下面的Panel。
1是最左上角的小panel一个label,两个combox然后设置combox的属性值DropDownStyle为DropDownList.这样就变成的下拉框。
在combox中的小三角中选择编辑项,编写下拉列表。
然后按行填写下拉项。
但是运行的时候没有默认的选中值,方法就是在窗体加载的时候就选择出来:
privatevoidMainForm_Load(objectsender,EventArgse)
{//默认选择第一项
this.cboSort.SelectedIndex=0;
this.cboDir.SelectedIndex=0;
2然后右边是个Logo,选择一个picturebox然后,导入图片即可
3,是左边再放一个面板然后放四个按钮,设置按钮的属性:
FlatAppeareance,将bordersize设置为0;
然后将FlatStyle设置为Flat。
把字体改大一些。
然后给按钮设置图片,Image属性,接着是图片的布局为ImageAlign设置为左边就可以了。
然后复制三个就行了。
4,左边最下角是用来设置显示时间的。
首先是拖一个label标签,设置它的TextAlign为居中。
然后在界面中添加一个Timer控件,命名为:
tmDate,Enabled设置为True,Interval设置为1000这个是毫秒。
然后选择Timer的事件。
他虽然是每隔一秒显示一次,但是最初加载的窗体的时候有延迟,所以应该在Load方法里面添加这个,如下:
publicpartialclassMainForm:
publicMainForm()
//默认选择第一项
//一启动窗体就加载时间
DateTimedt=DateTime.Now;
stringdate=dt.ToLongDateString();
stringtime=dt.ToLongTimeString();
this.lblTime.Text=date+"
"
+time;
//显示系统时间,他会每秒自动刷新一次
privatevoidtmDate_Tick(objectsender,EventArgse)
this.lblTime.Text=date+"
+time;
}}
5,编写最下面,中间部分留着访问数据库的时候用,最下面是个Panel容器;
6,最最下面的隐藏部分Panel
注意选择picturebox时,导入图片还可以在小三角上面选择缩放模式AutoSize。
然后就会显示自动大小了。
注意在备注这个框框里,的小三角上面选了Mutiline,就可以显示多行了。
privatevoidbtnClose_Click(objectsender,EventArgse)
//主窗口为567Panel为134按钮的高度23
if(this.Size.Height==567)//当前是展开的窗口
this.Size=newSize(this.Size.Width,433);
this.pnlBottom.Visible=false;
//隐藏掉panel
//按钮的显示注意他是位置的变化
this.btnClose.Location=newPoint(this.btnClose.Location.X,this.btnClose.Location.Y-134);
this.btnClose.Text="
打开"
this.Size=newSize(this.Size.Width,567);
this.pnlBottom.Visible=true;
this.btnClose.Location=newPoint(this.btnClose.Location.X,this.btnClose.Location.Y+134);
关闭"
最后完成了框架:
然后收入,支出,差额是只读属性可以一次选择三个然后改为:
readOnly为True就可以了。
然后下面这个大的控件下面所有的东西都不要用,就将Panel的属性的Enabled改为False就可以了。
接下来是折叠功能的实现:
首先需要查看下整个Form的高度,通过属性size来判断。
其次是查看下Panel的高度,用他们相减就可以了。
7中间的数据显示
首先添加一个DataGridView这个是个非常强大的控件,主要用来处理表格信息的。
然后按右边的小三角。
在选择数据源中,添加项目数据源。
步骤如下:
然后按下一步
选择好了就继续,添加链接
这里注意了,可能要取消多来几次,打开数据看看自己的链接是多少
然后选择他就可以了,有个时候他不显示,然后刷新,取消之后再试下就可以了。
也可以复制到文本框里去,20110221-1117。
然后选择下一步
再按下一步的时候本来应该成功的。
然后选择表就可以了。
他会把表格信息都显示出来,但是遗憾的是,我的老出错。
后来还是选择人工
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 家庭理财 项目
![提示](https://static.bdocx.com/images/bang_tan.gif)