项目1-2:同学录任务1:实现同学录应用程序界面设计及交互(MDI窗体界面)2同学录主窗体参考界面3同学录参考界面-菜单设置图1-1“设置”菜单图1-2“处理”菜单4同学录参考界面-工具栏设置图2工具栏及按钮5同学录参考界面-状态栏设置图3状态栏61:主窗体界面设计提问示例使用了哪些控件及作用?如何快速完成界面布局?71:程序界面设计实现内容:主窗体(MDI窗体)界面设计及实现工具栏ToolStrip、状态栏StatusStrip等控件的常用属性设置及应用工具栏按钮Button控件的常用事件实现所需主要知识:⒈主窗体(MDI窗体)界面构成控件⒉主窗体(MDI窗体)涉及控件的主要属性及应用81-1:主窗体(MDI窗体)设置及代码实现Ⅰ属性窗口-设置属性⒈namename=frmMain⒉标题栏Text=同学录⒊确定该窗体是否是MDI窗体IsMdiContainer=true91-2:工具栏ToolStrip控件使用-1Ⅰ工具栏实现⒈在“工具箱”中选中“工具栏”控件⒉将“工具栏”控件拖拽到窗体,右击工具栏控件,选择“编辑项”⒊打开“项集合编辑器”编辑项图2工具栏及按钮101-2:工具栏ToolStrip控件使用-2Ⅰ工具栏ToolStrip控件属性设置⒈namename=默认值Ⅱ工具栏项属性设置示例:退出⒈namename=tsrbtnExit⒉显示文字Text=退出⒊图标Image⒋显示方式DisplsyStyle=ImageAndText⒌其它工具栏项选择111-3:状态栏StatusStrip控件使用-1图3状态栏Ⅰ状态栏实现⒈在“工具箱”中选中“状态栏”控件⒉将“状态栏”控件拖拽到窗体,右击状态栏控件,选择“编辑项”⒊打开“项集合编辑器”编辑项121-4:状态栏StatusStrip控件使用-2Ⅰ状态栏StatusStrip控件属性设置⒈namename=默认值Ⅱ工具栏项属性设置示例:当前登录用户名⒈namename=ssrlblUserName⒉显示文字Text=toolStripStatusLabel1⒊图标Image⒋显示方式DisplsyStyle=ImageAndText⒌其它状态栏项选择132:程序功能实现提问1如何从主窗体调用子窗体?创建哪些控件事件,事件内容(代码)?142:程序功能实现实现内容:实现主窗体(MDI窗体)调用子窗体所需主要知识:⒈在当前项目中创建新窗体⒉创建窗体实例对象⒊设置窗体为主窗体(MDI窗体)的子窗体⒋显示子窗体⒌菜单项及工具栏项常用事件应用152-1:在当前项目中创建新窗体162-2:主窗体(MDI窗体)调用子窗体代码实现1Ⅰ实现过程⒈实现内容以单击“增加”菜单项或单击“增加”工具按钮,弹出“增加同学信息”子窗体为例,弹出其它子窗体与此类似⒉位置mnsiAdd_Click事件、tsrbtnAdd_Click事件提问:如何编写代码提高代码利用率?172-3:主窗体(MDI窗体)调用子窗体代码实现2privatevoidAddWay(){frmAddf=newfrmAdd();f.MdiParent=this;f.Show();}privatevoidmnsiAdd_Click(objectsender,EventArgse){AddWay();}Ⅱ实现代码183:程序功能实现提问2登录窗体的一般实现方式?创建哪些控件事件,事件内容(代码)?193:程序功能实现实现内容:登录窗体设计及实现所需主要知识:⒈无标题栏窗体实现⒉创建类及类文件⒊静态变量应用⒋主窗体(MDI窗体)调用非子窗体203-1:登录窗体设计及实现Ⅰ属性窗口-设置属性⒈namename=frmLogin⒉无标题栏FormBorderStyle=None⒈密码输入显示字符PasswordChar*213-2:在当前项目中创建新类-1223-2:在当前项目中创建新类-2233-3:创建静态变量Ⅰ实现过程⒈实现内容保存当前登录用户名及密码,主窗体(MDI窗体)关闭标志⒉位置Info类publicclassInfo{publicstaticstringuserName;publicstaticstringuserPassword;publicstaticboolwinMainClose=false;}Ⅱ实现代码243-4:实现登录过程-1Ⅰ实现过程⒈实现内容主窗体(MDI窗体)调用登录窗体,并记录登录信息⒉位置frmMain_Load开始运行frmMain_Load隐藏frmMain显示frmLogin验证信息正确验证信息错误或点击“取消”关闭frmLogin显示frmMainwinMainClose=falsewinMainClose=true关闭frmLogin关闭应用程序说明:经色文字:主窗体执行代码蓝色文字:子窗体执行代码253-4:实现登录过程-2privatevoidLogIn()//登录处理{this.Visible=false;frmLoginf=newfrmLogin();f.ShowDialog();if(Info.winMainClose==true)//涉及到info类winmainClose属性{Application.Exit();}this.Visible=true;}Ⅱ实现代码264:程序功能实现提问3在主窗体(MDI窗体)中调用“登录信息”子窗口,如何显示当前登录的用户名及密码信息?创建哪些控件事件,事件内容(代码)?274:程序功能实现实现内容:实现主窗体(MDI窗体)调用“登录信息”子窗体,并在“登录信息”子窗体内显示当前登录的用户名及密码所需主要知识:⒈复选框CheckBox控件常用属性及事件284-1:登录信息子窗体设计及实现-1Ⅰ属性窗口-设置属性⒈namename=frmLoginInfo⒉窗体是否有“控件/系统”菜单框ControlBox=falseⅡ复选框-设置属性⒈namename=chkDisply⒉复选框选中Checked=true294-2:登录信息子窗体设计及实现-2Ⅰ实现过程⒈实现内容将当前登录用户名及密码显示在“登录信息”子窗体内⒉位置frmLoginInfo_Load事件、chkDisply_Click事件privatevoidfrmLoginInfo_Load(objectsender,EventArgse){this.Text=登录信息;txtLoginID.Text=Info.userName;txtLoginPass.Text=Info.userPassword;chkDisply.Checked=true;}Ⅱ实现代码304-2:登录信息子窗体设计及实现-3privatevoidchkDisply_Click(objectsender,EventArgse){if(chkDisply.Checked)txtLoginPass.Text=Info.userPassword;else{stringpass=;for(inti=0;itxtLoginPass.Text.Length;i++){pass=pass+*;}txtLoginPass.Text=pass;}}Ⅱ实现代码315:程序功能实现提问4如何在状态栏上显示当前登录用户信息?创建哪些控件事件,事件内容(代码)?325:程序功能实现实现内容:实现在状态栏内显示当前登录用户的用户名所需主要知识:⒈静态变量应用⒉状态栏项的应用335-1:实现在状态栏上显示当前用户名Ⅰ实现过程⒈实现内容实现在状态栏上显示当前用户名⒉位置frmMain_Load事件ssrlblUserName.Text=用户名:+Info.userName;Ⅱ实现代码