第三章GUI程序设计.ppt
《第三章GUI程序设计.ppt》由会员分享,可在线阅读,更多相关《第三章GUI程序设计.ppt(73页珍藏版)》请在三一办公上搜索。
1、版权所有,1,第三章 GUI程序设计,GUI(Graphics User Interface),即图形用户界面,是指用图形的方式实现人与计算机之间的交互。,2,版权所有,目录,GUI程序设计方法窗体对话框标签、文本框和按钮菜单和多文档界面工具栏和状态栏单选钮、复选钮、组和面板列表框、组合框和复选列表框,3,版权所有,3.1 GUI程序设计方法,3.1.1 GUI程序模型,4,版权所有,3.1.2 建立GUI应用程序的一般步骤 利用C#编写GUI应用程序的一般步骤:(1)建立“Windows应用程序”项目(2)设计应用程序界面(3)设置窗口和控件的属性(4)编写事件方法代码(每个事件对应一个方法
2、,如鼠标下按一个按钮,对应一个方法,程序员可以编写该方法,所以控制了这个按钮的行为),5,版权所有,3.1.3 控件的基本属性(Control,child window)下面介绍的一些属性是多数控件都具有的属性:(1)Name:用来获取或设置控件的名称。名称是控件的标识。要控制一个控件,就必须找到它。(2)Text:用来获取或设置控件的标题文字。(3)Width和Height:用来获取或设置控件的大小。(4)Left和Top:用来获取或设置控件的位置。(5)Visible:用来获取或设置控件是否可见。取值为true或false。(6)Enabled:用来获取或设置控件是否对响应交互。取值为tr
3、ue或false。(7)ForeColor:用来获取或设置控件的前景色。(8)BackColor:用来获取或设置控件的背景色。,6,版权所有,(9)Font:用来获取或设置控件的字体。(10)BorderStyle:用来获取或设置控件的边框。(11)AutoSize:用来获取或设置控件是否自动调整大小。取值为true或false。(12)Anchor:获取或设置控件的哪些边缘锚定到其容器边缘。(Anchor 锚)(13)Dock:获取或设置控件停靠到父容器的哪一个边缘。(dock 码头;船坞)(14)TabIndex:用来获取或设置控件的Tab键顺序。(15)TextAlign:用来确定文本对
4、齐方式。(16)Cursor:用来获取或设置鼠标移到控件上时,被显示的鼠标指针的类型。(17)opacity 不透明度;阻光度 0100%,7,版权所有,对话框窗口控制,1、大小、位置、标题、最小最大按钮2、鼠标、透明度3、字体、是否置顶4、事件:鼠标的移动、下按,8,版权所有,按钮的控制:button,常见属性:Location、Image、TabStop、Size、Visible 改变方法:对象名.属性=.事件:在资源框中双击产生事件的处理函数 鼠标下按 private void button1_Click(object sender,EventArgs e)/添加代码,9,版权所有,实验
5、1,在对话框中增加一个按钮,双击按钮得到事件处理函数,添加代码,观察执行结果:private void button3_Click(object sender,EventArgs e)this.Text=“Hello”;/和C+的this-不同 Size si=new Size(200,200);this.Size=si;Point po=new Point(si);this.Location=po;Color c=new Color();this.BackColor=c;this.Opacity=50;MessageBox.Show(this.Text);,10,版权所有,实验2:用一个按钮
6、控制另一个按钮,控制另一个按钮的:位置、大小、是否显示、使能、取得Title,设置Title过程:生成2个按钮,双击其中一个按钮,添加代码。试验3:控制窗口透明度,11,版权所有,private void button2_Click(object sender,EventArgs e)Point p=button1.Location;p.X+;p.Y+;button1.Location=p;Size s=button1.Size;s.Height+=3;s.Width+=3;int x=(int)button1.Font.Size;x+;Font f=new Font(“宋体”,x);/建立字
7、体对象 button1.Font=f;/设置字体 button1.Text=哥变了吗?;button1.Size=s;button1.ForeColor=Color.Red;,12,版权所有,事件处理程序是绑定到事件的方法。当引发事件时,执行事件处理程序内的代码。每个事件处理程序提供两个使您得以正确处理事件的参数。如下为Button 控件的 Click 事件的事件处理程序:private void button1_Clicked(object sender,System.EventArgs e)第一个参数 sender 提供对引发事件的对象的引用。第二个参数e传递针对要处理的事件的对象。通过引
8、用对象的属性(有时引用其方法)可获得一些信息,如鼠标事件中鼠标的位置或拖放事件中传输的数据。,事件和事件处理方法,13,版权所有,编辑框:可编辑框和静态框,14,版权所有,实验1:让编辑框中内容为大写,15,版权所有,代码,private void textBox1_TextChanged(object sender,EventArgs e)textBox1.Text=textBox1.Text.ToUpper();/转大写 textBox1.SelectionStart=textBox1.Text.Length;/移动光标到最后/label1.Text=程序员改变;,16,版权所有,控制编辑
9、框,位置、大小、光标位置、前景色、字符颜色修改内容。private void button1_Click(object sender,EventArgs e)textBox1.Text=“sdFdgG”;/修改内容 textBox1.ForeColor=Color.Red;/修改文本颜色 textBox1.BackColor=Color.SeaGreen;textBox1.SelectionStart=1;/修改光标位置 textBox1.Focus();/编辑框获得焦点,17,版权所有,补充:定时器,定时发生的操作。最常用的地方,如计时器。1、添加定时器:视图工具箱鼠标左键按住 timer
10、拖拉到窗口。单击它,看到如下。2、,18,版权所有,3、双击 timer1,会自动生成定时器事件方法。4、切换到刚才的资源界面,添加一个按钮,一个编辑框。5、双击按钮,添加如下代码 private void timer1_Tick(object sender,EventArgs e)/定时执行的代码 DateTime d=DateTime.Now;textBox1.Text=d.ToString();private void button1_Click(object sender,EventArgs e)timer1.Interval=1000;timer1.Enabled=true;/允许状
11、态 timer1.Start();/开始定时,19,版权所有,本次课要求,GUI的基本操作资源界面与代码界面的切换增加控件设置属性,基本属性的作用定时器的生成与使用。,20,版权所有,多用途编辑框,工具箱RichTextBox,21,版权所有,这样查找参考资料,22,版权所有,掌握要点,设置内容、设置选中的内容、取出选中的内容、设置光标位置并插入内容、在指定位置插入字符串,23,版权所有,private void button1_Click(object sender,EventArgs e)richTextBox1.Text=HHHHHHjjjjjjjjjjjjjjjjjjjjjjjjjjj
12、jjjjjjjjjjjjjjjjjj;richTextBox1.SelectionColor=Color.Red;richTextBox1.Focus();richTextBox1.Select(10,20);richTextBox1.SelectionStart=15;/移动光标到 richTextBox1.SelectionColor=Color.Red;Font f=new Font(宋体,16);richTextBox1.SelectionFont=f;richTextBox1.SelectionBackColor=Color.Black;String s=richTextBox1.S
13、electedText;/MessageBox.Show(s);richTextBox1.SaveFile(C:test1.txt,RichTextBoxStreamType.TextTextOleObjs);/保存成txt richTextBox1.SaveFile(C:test1.rtf,RichTextBoxStreamType.RichText);/保存成rtf格式,24,版权所有,private void button2_Click(object sender,EventArgs e)OpenFileDialog d=new OpenFileDialog();if(d.ShowDia
14、log()=DialogResult.OK)/读txt文件 richTextBox1.LoadFile(d.FileName,RichTextBoxStreamType.PlainText);private void button3_Click(object sender,EventArgs e)OpenFileDialog d=new OpenFileDialog();if(d.ShowDialog()=DialogResult.OK)/读rtf文件 richTextBox1.LoadFile(d.FileName,RichTextBoxStreamType.RichText);,25,版权
15、所有,在指定位置插入文本,private void button4_Click(object sender,EventArgs e)string textData=I want to put this string on the clipboard.;Clipboard.SetData(DataFormats.Text,(Object)textData);richTextBox1.Text=哈哈和经济上看看看看看撒或积极啊;richTextBox1.SelectionStart=10;if(Clipboard.GetDataObject().GetDataPresent(DataFormats
16、.Text)=true)richTextBox1.Paste();,26,版权所有,插入图片,OpenFileDialog openFileDialog1=new OpenFileDialog();openFileDialog1.Filter=图片文件|*.jpg|所有文件|*.*;if(openFileDialog1.ShowDialog()=DialogResult.OK)Clipboard.SetDataObject(Image.FromFile(openFileDialog1.FileName),false);richTextBox1.Paste();,27,版权所有,单选与多选按钮,
17、CheckButton:可以多选,是按钮的一种 RadioButton:只能单选,是按钮的一种,28,版权所有,要求掌握,会设置初始状态、会取状态。方法是,知道其名字,然后取它的成员。bool re=Man.Checked;/取状态,true为选中,false为没有选中 Man.Checked=false;/去选中,29,版权所有,列表框ListBox,显示多项,可以单选或多选。,30,版权所有,要求,初始化:设置行宽、字体、内容,是否多选1、加内容 listBox1.Items.Add(“Hello”);2、是否支持选择多列 public Form1()InitializeComponent
18、();listBox1.ItemHeight=40;/行高/多选如图,在行为中,代码如下listBox1.SelectionMode=SelectionMode.MultiSimple;,31,版权所有,获取行数:listBox1.Items.Count删除某行:listBox1.Items.RemoveAt(0);清空:listBox1.Items.Clear();检索:int n=listBox1.FindString(sss,0);表示从0行开始检索有内容“sss”的,有则返回行号,32,版权所有,多选提取选中的内容,private void button2_Click(object s
19、ender,EventArgs e)for(int i=0;i listBox1.SelectedItems.Count;i+)string s=listBox1.SelectedItemsi.ToString();s+=;s+=i.ToString();MessageBox.Show(s);见例子ListBox多选,33,版权所有,组合框Combox,用来选择子项;上面是编辑框,下面是列表框。要求掌握:加入内容、提取选项、禁止编辑加入内容:comboBox1.Items.Add(“nnnn”);选中某项:comboBox1.Text=comboBox1.Items0.ToString();提
20、取选项内容也是它禁止编辑:dropdownstyle属性改为dropdownlist,34,版权所有,private void button1_Click(object sender,EventArgs e)string s=textBox1.Text;if(s!=)listBox1.Items.Add(s);/到后面加一行 listBox1.Items.Insert(2,hhhhh)/插入第2行,35,版权所有,ListView的使用,用于多行多列的列表。初始化时有如下一行:listView1.View=View.Details;一、初始化表头,有2方法:1、代码控制 listView1.C
21、olumns.Add(序号,50,HorizontalAlignment.Center);listView1.Columns.Add(姓名,50,HorizontalAlignment.Center);/参数为:内容,长度,居中,36,版权所有,2、在设计时初始化资源界面属性ColumnsCollection添加二、添加和删除行列值1、整体添加/listView1.Clear();/清除内容,包括表头 listView1.Items.Clear();/清除内容 for(int i=0;i 10;i+)listView1.Items.Add(i.ToString(),0);listView1.I
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第三 GUI 程序设计
链接地址:https://www.31ppt.com/p-5051079.html