Windows窗体界面设计
创建窗体实验报告总结(3篇)

第1篇一、实验背景随着计算机技术的不断发展,窗体已成为软件开发中不可或缺的一部分。
窗体作为用户与软件交互的界面,其设计和实现直接影响着软件的用户体验。
为了提高自己的软件开发能力,我们进行了一次创建窗体的实验,通过实际操作来加深对窗体设计原理和实现方法的理解。
二、实验目的1. 掌握窗体设计的基本原理和方法。
2. 学会使用常用的窗体控件,并了解其属性和事件。
3. 提高编程能力,培养团队协作精神。
三、实验内容1. 窗体设计:根据需求设计窗体布局,确定窗体控件的位置和属性。
2. 控件使用:熟练运用常用的窗体控件,如按钮、文本框、标签、单选按钮等。
3. 事件处理:为控件编写事件处理程序,实现窗体的功能。
四、实验步骤1. 创建窗体:在Visual Studio中创建一个新的Windows窗体应用程序项目。
2. 设计窗体:根据需求设计窗体布局,添加控件,设置控件属性。
3. 编写代码:为控件编写事件处理程序,实现窗体的功能。
4. 测试与调试:运行程序,测试窗体功能,查找并修复错误。
五、实验结果与分析1. 窗体设计在本次实验中,我们根据需求设计了一个简单的窗体。
窗体中包含了一个文本框、一个标签和一个按钮。
文本框用于输入信息,标签用于显示提示信息,按钮用于提交信息。
2. 控件使用在实验中,我们使用了文本框、标签和按钮等常用控件。
通过设置控件的属性,如文本框的Text属性用于显示和输入文本,标签的Text属性用于显示提示信息,按钮的Click事件用于处理提交信息的功能。
3. 事件处理在事件处理方面,我们为按钮的Click事件编写了以下代码:```csharpprivate void btnSubmit_Click(object sender, EventArgs e){string inputText = txtInput.Text;lblResult.Text = "输入内容:" + inputText;}```上述代码中,当用户点击按钮时,程序会获取文本框中的文本,并将其显示在标签上。
C# 第6章 窗体、控件和组件

窗体的常用方法和事件
方法和事件名 说明
13
Close()方法
Hide()方法 Show()方法 Load事件
使窗体关闭,并释放资源;
使窗体隐藏,并不释放资源; 显示窗体; 加载窗体时处理的事件;
Click事件
Closing、Closed事件 GetFocus事件 Activated事件
鼠标单击窗体时处理的事件;
它还只是一个TextBox类型的变量而已,如果在InitializeCompon ent( )之前调用这个TextBox的属性或方法,就会出错。
6.1.3 窗体常用的属性
属性 Name BackColor ForeColor 含义 窗体的名称,代码中通过该属性来访 问窗体 窗体的背景色 窗体上文本的前景色 注意
C#中的InitializeComponent()方法
注意: InitializeComponent( )方法写在前面和后面是有区别的。
23
InitializeComponent( )方法是用来初始化窗体组件的,在Initializ
eComponent之前,窗体的各个控件还没有进行初始化,比如说
窗体上有一个TextBoxUserName,在InitializeComponent( )之前
19
20
6.1.2 窗体的创建、显示与隐藏
【例6-1】演示窗体的基本用法以及如何显示和关闭窗体。 部分运行效果如图:
C#中的InitializeComponent()方法
在每一个窗体生成的时候,都会针对于当前的窗体定义Initi alizeComponent()方法,该方法实际上是由系统生成的对于
3、如何隐藏一个打开的窗体 (1)隐藏当前窗体:this.Hide(); (2)隐藏其它窗体:Application.OpenForms["Form1"].H ide();
WinForm常用窗体控件的使用

(8)BackColor: 用来获取或设置控件的背景色。 (9)Font:
用来获取或设置控件的字体,包括字体名称、字号以
及是否以斜体、加粗和下划线显示。 (10)Locked: 确定是否可以移动控件或者调整控件的大小。 (11)TabIndex: 用来获取或设置控件的Tab键顺序。
15
(12)TextAlign: 用来确定文本对齐方式。
4、为button1的click事件填写代码为
label1.visible=false; button1.enabled=false;
button2.enabled=true; 为button2的click事件填写代码为 label1.visible=true; button1.enabled=true; button2.enabled=false;
24
例:MouseEnter事件练习。 private void button1_MouseEnter(object sender, System.EventArgs e) { //颜色在System.Drawing名称空间下 button1.BackColor=Color.Red; }
25
例:MouseLeave事件练习。
Visual C# 程序设计
常见窗体控件的使用
1
本章中我们将主要介绍以下内容: windows窗体 标签 按钮 文本框 单选按钮 复选按钮 列表框 组合框 ToolTip控件 PictureBox控件
2
利用C#编写GUI(Graphics User Interface)应用 程序的一般步骤: (1)建立“Windows应用程序”项目 (2)设计应用程序界面
11
5. 2 WinForms中的常用控件
第9章 多重窗体设计

4.具体代码 l 主窗口程序代码 Private Sub Command1_Click() „选择不同复选框显示不同求面积窗体 If Option1.Value = True Then three.Show Unload Me ElseIf Option2.Value = True Then four.Show Unload Me Else five.Show Unload Me End If End Sub
3.编写程序代码
a.程序分析:在完成任务“求多边形面积”程序代码设计编 写过程中,求多边形面积采用把多边形划分成三角形的方 式来求解面积的,即,求多边形面积就是求多个三角形面 积,为此在本程序编写设计过程中设立了一个用海伦公式 求三角形面积的公共模块,实现在其他窗体中可以随时调 用求三角形面积的公共模块中的过程。 具体代码包括:主窗口程序代码、公共模块程序代码、 三角形求面积程序代码、四边形求面积程序代码和五边形 求面积程序代码
同样,模块的添加也有两种方式,一种方式是通过点击 工程菜单命令,选择“添加模块”,出现如图9-5所示“添加 模块”对话框,选择模块,单击“打开”按钮,在工程窗体 中将会以默认的名字添加模块;另一种方式,在“工程”窗 体中,选择“窗体”,点击右键,出现弹出菜单,选择“添 加…”,出现下一级下拉菜单,选择“添加模块”,同样会出 现时打开多个文本文件”程序设计过程中, 采用设置一个子窗体,程序设计过程中采用 “tempfrm.Show”和“tempfrm.RichTextBox1.LoadFile (Names(0) & Names(i))”语句根据选择的文件数打开子窗体 个数。 6.课后练习 练习1:在理解掌握本课课业设计任务一、二的基础上,选 择其中一个课业设计任务,再次独立完成该程序的设计编 写任务。 练习2:在课堂任务2“同时打开多个文本文件”增加一个帮 助菜单,在帮助菜单下面,增加“软件使用说明”和“关 于我们”两个子菜单。所增加“帮助”菜单具有任务1所设 计的功能。
GUI(图形用户界面)设计基础

创建 WinForms应用程序
基础核心命名空间 using System; 提供了大量绘图工具的访问权限 using System.Drawing; ArrayList、BitArray、Hashtable、Stack、 using System.Collections; StringCollection 和 StringTable 类 using ponentModel; using System.Windows.Forms; 大量窗体和控件 namespace SampleProject { /// <summary> /// Form1 的摘要说明。 /// </summary> public class Form1 : System.Windows.Forms.Form { /// <summary> /// 必需的设计器变量. /// </summary>
认识窗体类
Form 类:.NET 预定义的窗体类
Form1 继承自 Form
冒号表示继承 Form类定义了窗体的基本属 性和行为 我们创建的窗体都继承自 Form类 构造函数 Form1具有相应的属性和行为 做一些初始化的工作 编译器自动调用
// Form1.cs namespace MyForm { public partial class Form1 : Form { public Form1() { InitializeComponent(); } } }
C# windows程序设计
成都大学信息科学与技术学院软件工程系
课程介绍
课程简介
本课程介绍使用 C# 开发 Windows 应用程序所需 的知识和技能 掌握基本的C#语法 掌握数据库的基本知识 掌握面向对象的编程思想 能够使用Visual 图形化界面开发环境
C#界面设计教程

22
C#程序设计实用教程
通过“计算器”这个例子,已初步了解了Windows应
9.2 Windows窗体
用程序的结构。
下面具体介绍Windows应用程序的设计和开发。
一个应用程序除了需要实现应有的功能外,还必须具
有良好的用户界面。在C#中,Windows应用程序的界
面是以窗体(Form)为基础的,窗体是Windows应用程
(2)标签:1个。
用于标示计算结果所在的文本框。
(3)文本框:1个。
用于显示计算结果。
2013-8-13
10
C#程序设计实用教程
9.1.2 计算器控件
具体添加控件步骤如下: 首先向窗体中添加按钮(Button)。
具体操作为:
在工具箱中单击Button,然后移动鼠标指针到窗体中的预定 位置,按下左键拖动鼠标,划出一个方框,释放鼠标左键后, 一个按钮就被添加到刚才方框的位置了。调整好大小和位置 后单击选中该按钮,在“属性”窗口中可以看到该控件名为 Button1,将该按钮的Text属性设置为“1”。 继续在窗体中添加其余15个按钮,并分别设置好它们的属性。
2013-8-13 8 C#程序设计实用教程
9.1.2 计算器控件
控件表示用户和程序之间的图形化连接。控件可以
提供或处理数据、接受用户输入、对事件做出响应或 执行连接用户和应用程序的其他功能。
因为控件本质上是具有图形接口的组件,所以它能通 过组件所提供的功能并与用户交互。 窗体中的控件有很多,“工具箱”中的“Windows窗 体”里包含了所有Windows的标准控件,用户还可以 根据需要自己定义控件。通过在“属性”窗口中改变 控件的属性可以改变的外观和特性。
软件界面设计
例如一个控件双击可以执行某些动作,而同样控件,双击却没有任何反映
一个控件只做单一功能,不复用
很多人为了写程序方便,喜欢把一个控件在不同情况下做不同功能用,这些对用户初次 理解增加难度,只有用户熟悉后才能理解。 例如 :改变红色选项,左边的参数代表 不同的设置,可能由于为了节省控件或者编程量,但是只有熟练用户才回使用,这种情 况下解决方法: 1:分组,使用双份控件. 2:使用TABLE页,给用户很明显的视觉 变化
五:(Text)文字表达
提示信息、帮助文档文字表达遵循以下准则:
1:口语化、客气、多用您、请,不要用或少用专业术语,杜绝错别字 2:断句逗号 句号顿号分号的用法,\r\n 提示信息比较多的话,应该分段, 3:警告、信息、错误 使用对应的表示方法 4:使用统一的语言描述,例如一个关闭功能按钮,可以描述为 退出、返回、关闭,则应该统一规定。 5: 根据用户不同采用相应的词语语气语调,
Onsize的时候做控件位置、大小的相应改变。 BCB/DELPHI的VCL中,大部分控件 有布局属性: 某些控件拥有alignment属性,可以用来做布局调节:TcustomPanel, Tmemo等,考左靠右靠上靠下以及撑满(Client)属性,用 来根据版面自动调节。 大 部分控件有属性Anchors,里面上下左右akLeft, akTop等如果为true,则表示相对各个边 缘的距离是否改变。这个可以进一步设计好排版工作。
2:区域排列 一行控件,纵向中对齐, 控件间距基本保持一致 行与行之间间距相 同,靠窗体Border距离应大于行间间距(间距加边缘留空)。 当屏幕有多个编辑区域, 要以视觉效果和效率来组织这些区域。 3:数据对齐要适当 说明文字,中文版应 使用中文全角冒号,纵向对齐时,并按冒号右对其,如图。 纵向控件宽度尽量保持 相通。并左对齐。 例如金额等字符穿应根据小数点对齐,或者右对齐 4:有效组 合 逻辑上相关联的控件应当加以组合,以表示其关联性,反之,任何不想光的项目 应当风格开,在项目集合间,用间隔对其进行分组,或者使用方框划分各自区域。 例如: 以下界面,选择搜索方式来判断号码范围是表示主叫号码范围还是被叫号码范 围,和入帐方式无关, 则应该修改为: 搜索方式和入帐方式调换位置。以免用户产 生误解。 5:窗口缩放时,控件位置、布局: 为了使界面不出现跑版或者难看的 局面,解决方法: 1:固定窗口大小,不允许改变尺寸, 2:改变尺寸辨率的大小,缩放时的状态和原则,并且为将来设 计 的按钮,菜单,标签,滚动条及状态栏预留位置。设计中将整体色彩组合进行合理 搭配,将软件商标放在显著位置,主菜单应放在左边或上边,滚动条放在右边,状 态 栏放在下边,以符合视觉流程和用户使用心理
第4章 窗体和常用控件
VB采用了事件驱动的编程机制。当没有事件发生时,程序处 于停滞状态,只有事件发生时,程序才会运行。窗体除了 Click事件外,还有以下常见的事件。 (1)Initialize事件 当窗体第一次创建时会触发Initialize事件,一般将窗体的初 始化代码存放在该事件过程中。 (2)Load 事件 在一个窗体被装载时触发Load事件。通常,Load 事件过程用 来包含一个窗体的启动代码,例如,指定控件缺省设置值等。 (3)Unload事件 运行程序后,如果关闭窗体,就会触发Unload事件。 (4)Activate事件 当一个窗体变为活动窗体时,就会触发Activate事件。
Private Sub Option1_Click() = "宋体" End Sub Private Sub Option2_Click() = "黑体" End Sub Private Sub Option3_Click() = "楷体" End Sub
其主要属性是Caption属性,该属性用于设置在 按钮上显示的文本,命令按钮见事件是Click事件。
【例4-3】
对象属性设置如表所示。
对象名称 属性 Text1 Text Text2 Text Text3 Text Locked Label1 Caption Label2 Caption Label3 Caption Command1 Caption 属性值 空白 空白 空白 True 加数1 加数2 和 求和 说明 程序启动时文本框内无文本 程序启动时文本框内无文本 程序启动时文本框内无文本 设置该文本框不可编辑 标签框标题 标签框标题 标签框标题 命令按钮标题
最传统的界面设计MFC
From: 新闻
For: 分类信息
3.2.5
复选框控件
From: 新闻
For: 分类信息
3.2.6
列表框控件
From: 新闻
For: 分类信息
From: 新闻
For: 分类信息
3.2.4
单选按钮控件
From: 新闻
For: 分类信息
单选按钮控件的重要属性
属 性
Caption Group MultiLine Push Like
For: 分类信息
CEdit类的常用函数
函
Create SetReadOnly SetSel GetSel GetLine GetLineCount LimitText Clear
数
创建一个CEdit控件
说
明
设置文本为只读格式,不能编辑文本 选择编辑框中的文本范围 获取用户在文本中的选择 获取控件中的一行文本 获取多行文本控件的文本行数 限制文本长度 清除选定的文本
From: 新闻
For: 分类信息
3.打开对话框
在程序中可以使用CDialog::DoModal()函数打开一个模式对话框,并返回 用户操作的结果。假定对话框对应的类为CMyDialog,则使用下面的代 码如下打开该对话框。 CMyDialog dlg; dlg.DoModal(); 当无法创建对话框或者用户关闭对话框时,DoModal()函数会返回一个int 类型的值,具体说明如下: -1,表示无法创建该对话框。 IDABORT,表示用户单击对话框中的“终止”按钮,关闭对话框。 IDOK,表示用户单击对话框中的“确定”按钮,关闭对话框。 IDCANCEL,表示用户单击对话框中的“取消”按钮,关闭对话框。
实验报告软件设计(3篇)
第1篇一、实验目的1. 理解软件设计的基本概念和原则。
2. 掌握软件设计的方法和工具。
3. 培养软件设计的实践能力。
4. 提高软件设计文档的编写能力。
二、实验环境1. 操作系统:Windows 102. 开发工具:Visual Studio 20193. 编程语言:C三、实验内容本次实验以设计一个简单的学生信息管理系统为例,进行软件设计。
1. 需求分析学生信息管理系统主要功能包括:(1)学生信息录入:包括姓名、性别、年龄、学号、班级等基本信息。
(2)学生信息查询:根据学号、姓名等关键字进行查询。
(3)学生信息修改:修改学生信息。
(4)学生信息删除:删除学生信息。
(5)学生信息统计:统计学生信息。
2. 系统架构设计(1)采用分层架构,分为表现层、业务逻辑层和数据访问层。
(2)表现层:使用Windows窗体作为用户界面。
(3)业务逻辑层:封装业务逻辑,实现功能模块。
(4)数据访问层:负责与数据库进行交互,实现数据的增删改查。
3. 类设计(1)学生类(Student)属性:姓名、性别、年龄、学号、班级方法:添加学生信息、删除学生信息、修改学生信息、查询学生信息(2)学生管理类(StudentManager)属性:学生列表方法:添加学生、删除学生、修改学生、查询学生、统计学生信息(3)数据库访问类(DatabaseAccess)方法:连接数据库、执行SQL语句、关闭数据库连接4. 数据库设计(1)数据库:使用SQL Server 2019(2)数据表:学生表(Student)字段:姓名、性别、年龄、学号、班级5. 界面设计(1)使用Windows窗体设计用户界面。
(2)界面包括:学生信息录入、查询、修改、删除、统计等功能模块。
6. 编码实现(1)使用C进行编程实现。
(2)根据设计文档,实现各个类和方法。
7. 测试与调试(1)进行功能测试,确保系统正常运行。
(2)进行性能测试,确保系统响应速度快。
(3)调试程序,修复发现的错误。