- 1、本文档共53页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第09讲 .NET窗体编程
C#.NET编程技术 第09讲 .NET窗体编程 内容提要 窗体程序与控制台程序 控件和组件 页面布局 多窗体应用程序 Windows窗体控件 内容提要 窗体程序与控制台程序 控件和组件 页面布局 多窗体应用程序 Windows窗体控件 使用VS2008构建应用程序 使用VS2008构建应用程序 使用VS2008构建应用程序 Window应用程序的生命周期 窗体应用程序 窗体应用程序与控制台应用程序 控制台程序没有消息循环(假如不在控制台程序中使用窗体),主线程代码依次执行后就结束 控制台程序适于代码验证和代码功能演示,执行一段代码,然后在控制台输出结果 窗体应用程序在后台使用消息循环来运作,前台使用窗体控件来提供用户交互界面 内容提要 窗体程序与控制台程序 控件和组件 页面布局 多窗体应用程序 Windows窗体控件 窗体界面的组成 窗体上有很多可视的东西 按钮、文本框、下拉框、菜单、图标…… 还有很多不可视但有用的东西 定时器、布局器等 这些窗体元素是什么? 记住:.NET是面向对象的语言,所以,这些东西都是对象,即都是某个类的实例 什么类的实例? 一切都是控件或组件! 控件与组件 什么是控件 具备可视形态的窗体元素,如按钮、文本框等 窗体控件继承自System.Windows.Form.Control类 什么是组件 不具有可视形态的窗体元素,可以完成某项功能或保存某些对象,例如定时器、图标列表等 继承自System.ComponentModel.Component类 Control也继承自Component,所以本质上控件就是具备可视形态的组件 控件基类:Control System.Windows.Forms.Control 这是所有窗体可见元素,即控件的基类 如何生成一个新的窗体控件? 预定义的控件 实际编程中,极少自己定义控件 .NET已经提供了丰富的控件和组件 Control类的主要方法 Control类的主要属性 Control类的主要事件 C#窗体编程的基本步骤 从工具栏拖拽想要的控件到窗体上 调整页面布局,即调整各控件的布局相关属性,如Anchor/Dock/Width等。必要时,可使用布局控件,如TableLayoutPanel 添加必要的菜单、工具条和状态栏等 编写各个控件的事件处理函数,在其中编程完成预期的功能,如响应Button.Click事件,以便在这个按钮被点击时执行一些代码 Form类 窗体本身也是控件,即Form控件 Form类除继承Control类的成员外,还自定义了一些成员 Form类主要属性 Form类主要方法 Form类主要事件 内容提要 窗体程序与控制台程序 控件和组件 页面布局 多窗体应用程序 Windows窗体控件 页面布局 窗口上控件众多时,需排列整齐以便美观 窗体尺寸发生变化时,相应的控件尺寸应跟随变化 使用Anchor和Dock Control.Anchor, Control.Dock 所有控件都具有的属性 Anchor,锁定控件与父控件的边距 即当父控件矩形大小发生变化时,子控件随之变化,以确保某个边仍保持相同距离 Dock,停靠在父控件的某个位置 上方、下方、充满全屏等 Panel控件 可以容纳其它各种控件的面板 可以将数个控件排列在Panel中,形成一个组合。操作Panel,即可实现这个组合的整体移动、隐藏、显示 Panel控件的特点:可容纳多个子控件,各子控件在Panel内按照绝对位置放置 FlowLayoutPanel控件 与Panel控件相似 可以将数个控件放在FlowLayoutPanel中,形成一个组合。操作FlowLayoutPanel ,即可实现这个组合的整体移动、隐藏、显示 与Panel控件的不同 FlowLayoutPanel内,各子控件不是按照绝对位置放置,而是按照流模式紧挨着排列 TableLayoutPanel控件 表格布局控件,可以分成多个子区域 例如分割成两行一列 每个子区域只能放置一个控件 其它页面布局控件 SpliterContainer 分割成左右两列 TableControl 以选项卡形式分布多个视图 GroupBox 给一个或多个控件加一个外框 这些控件仍以一组控件形式存在 内容提要 窗体程序与控制台程序 控件和组件 页面布局 多窗体应用程序 Windows窗体控件 多窗体应用程序 前面所介绍的内容,是在一个窗体上添加多个控件实现各类功能 流行的编辑类软件中,多为多窗体 即可以同时打开多个子窗体,如Word、PPT、VisualStudio 编写多窗体应用程序 设置主窗体的IsMdiContainer属性为true 生成子窗体(Form类的派生类实例) 将子窗体的MdiParent属性设置为主窗体 调用子窗体的Show方法,显示
文档评论(0)