版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 窗口是窗口是Windows程序设计中的另一项重要内容,它程序设计中的另一项重要内容,它是应用程序与用户进行交互的一个重要途径,常用于实现是应用程序与用户进行交互的一个重要途径,常用于实现应用程序的输入、输出功能。在应用程序的输入、输出功能。在C#中没有提供为窗口专门中没有提供为窗口专门设计的类。设计的类。 在在Visual Studio 2008中,可以通过使用中,可以通过使用Windows窗窗体设计器来构造自定义窗口,根据具体需要,可以向窗口体设计器来构造自定义窗口,根据具体需要,可以向窗口中添加诸如中添加诸如Label、Textbox和和Button之类的控件。之类的控件。.NET Fr
2、amework还包含预定义窗口,也称为通用窗口,用户还包含预定义窗口,也称为通用窗口,用户可以自行修改以适应应用程序的需要。本章将主要介绍可以自行修改以适应应用程序的需要。本章将主要介绍C#中通用窗口的相关知识。中通用窗口的相关知识。章节内容章节内容17.1 自定义窗口自定义窗口17.2 文件窗口文件窗口17.3 文件夹浏览窗口文件夹浏览窗口17.4 打印打印17.5 打印预览窗口打印预览窗口17.6 【字体】窗口和【颜色】窗口【字体】窗口和【颜色】窗口17.7 MessageBox类类17.8 小结小结17.1 自定义窗口自定义窗口自定义窗口即由用户根据应用程序的需求自行设计的自定义窗口即由
3、用户根据应用程序的需求自行设计的窗口。通常根据工作模式的不同,自定义窗口分有模窗口。通常根据工作模式的不同,自定义窗口分有模式窗口和无模式窗口两种。有模式窗口要求用户在继式窗口和无模式窗口两种。有模式窗口要求用户在继续运行程序前先响应窗口;无模式窗口不要求用户在续运行程序前先响应窗口;无模式窗口不要求用户在继续运行程序前先响应窗口,而是停留在屏幕上随时继续运行程序前先响应窗口,而是停留在屏幕上随时可用。可用。调用窗体的调用窗体的ShowDialog()方法显示有模式窗口。方法显示有模式窗口。调用窗体的调用窗体的Show()方法显示无模式窗口。方法显示无模式窗口。17.2 文件窗口文件窗口包括文
4、件打开窗口和文件保存窗口。文件窗口包括文件打开窗口和文件保存窗口。文件打开窗口由文件打开窗口由OpenFileDialog类实现,用于浏览本类实现,用于浏览本地和网络中任意计算机上的文件夹,并可选择打开一地和网络中任意计算机上的文件夹,并可选择打开一个或多个文件;个或多个文件;文件保存窗口由文件保存窗口由SaveFileDialog类实现,用于浏览文类实现,用于浏览文件系统并选择要保存文件的位置。件系统并选择要保存文件的位置。17.2 文件窗口using System.IO;private void button1_Click(object sender, EventArgs e) SaveF
5、ileDialog sfdlg = new SaveFileDialog(); sfdlg.Filter = 所有文件所有文件*.*|*.*|文本文件文本文件*.txt|*.txt|C#文件文件|*.cs|C文件文件|*.c; sfdlg.InitialDirectory = c:user; sfdlg.Title = 保存文本文件保存文本文件; sfdlg.FilterIndex = 2; /如果用户单击文件保存窗口的【保存】按钮,向文件写如果用户单击文件保存窗口的【保存】按钮,向文件写 if (sfdlg.ShowDialog() = DialogResult.OK) FileStream
6、 fs = new FileStream(sfdlg.FileName, FileMode.OpenOrCreate, FileAccess.Write); StreamWriter fileStream = new StreamWriter(fs); fileStream.WriteLine(textBox1.Text); fileStream.Close(); 17.3 文件夹浏览窗口在进行文件操作时,除了使用文件窗口获得文件路径在进行文件操作时,除了使用文件窗口获得文件路径外,还经常需要获得文件夹的路径,这就需要使用文外,还经常需要获得文件夹的路径,这就需要使用文件 夹 浏 览 窗 口
7、。 在 程 序 中 , 使 用件 夹 浏 览 窗 口 。 在 程 序 中 , 使 用FolderBrowserDialog类的类的ShowDialog方法显示文方法显示文件夹浏览窗口。件夹浏览窗口。17.4 打印private void Form1_Load(object sender, EventArgs e) pdoc.PrintPage += new System.Drawing.Printing.PrintPageEventHandler(pdoc_PrintPage); pd.Document = pdoc;/设置设置Document属性为需要打印的文档属性为需要打印的文档void
8、pdoc_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)e.Graphics.FillRectangle(Brushes.Red, new Rectangle(400, 400, 400, 400); private void button1_Click(object sender, EventArgs e) /打印文档打印文档 if (pd.ShowDialog() = DialogResult.OK) pd.Document.Print(); private void button2_Click(
9、object sender, EventArgs e)Application .Exit (); 17.5 打印预览窗口在在C#中,可以通过两种方式进行打印预览,即使用中,可以通过两种方式进行打印预览,即使用PrintPreviewControl控件和控件和PrintPreviewDialog组件。组件。PrintPreviewDialog组件又称打印预览窗口,用于组件又称打印预览窗口,用于显示文档打印后的外观,该窗口包含打印、放大、显示文档打印后的外观,该窗口包含打印、放大、显示一页或多页等命令按钮显示一页或多页等命令按钮.17.5 打印预览窗口using System.Drawing.Pr
10、inting;private void Form1_Load(object sender, EventArgs e) PrintDocument myDocument = new PrintDocument(); myDocument.PrintPage += new PrintPageEventHandler(docToPrint_PrintPage);private void button1_Click(object sender, EventArgs e) printPreviewDialog1.Document = myDocument;/将打印预览的打印文档设置为打将打印预览的打印文
11、档设置为打印文档印文档 printPreviewDialog1.ShowDialog();/显示打印预览窗口显示打印预览窗口 void myDocument _PrintPage(object sender, PrintPageEventArgs e) e.Graphics.FillRectangle(Brushes.Red, new Rectangle(150, 300, 500, 500);17.5 打印预览窗口打印预览控件(打印预览控件(PrintPreviewControl)用于按文档打)用于按文档打印时的外观显示文档。此控件没有命令按钮和其他用户印时的外观显示文档。此控件没有命令按钮
12、和其他用户界面元素,因此通常只有在自定义打印预览用户界面时界面元素,因此通常只有在自定义打印预览用户界面时才使用它。如果需要标准的用户界面,可以使用才使用它。如果需要标准的用户界面,可以使用 PrintPreviewDialog控件控件. 17.5 打印预览窗口private void Form1_Load(object sender, EventArgs e) PrintDocument docToPrint = new PrintDocument(); printPreviewControl1.Document = docToPrint; docToPrint.PrintPage += n
13、ew PrintPageEventHandler(docToPrint_PrintPage);void docToPrint_PrintPage(object sender, PrintPageEventArgs e) string text = 这是打印预览控件的演示!这是打印预览控件的演示!; Font printFont = new Font(宋体宋体,40, FontStyle.Regular); e.Graphics.DrawString(text, printFont, Brushes.Red, 100, 100); e.Graphics.FillRectangle(Brushes
14、.Red, new Rectangle(150, 300, 500, 500);17.6.1 【字体】窗口 【字体】窗口是标准的【字体】窗口是标准的Windows窗口,用于设置当窗口,用于设置当前所选文字的字体。默认情况下,在【字体】窗口前所选文字的字体。默认情况下,在【字体】窗口中显示字体、字形、大小的列表框,以及删除线和中显示字体、字形、大小的列表框,以及删除线和下划线效果的复选框。下划线效果的复选框。 可以通过可以通过FontDialog类的类的ShowDialog()方法显示方法显示【字体】窗口,通过【字体】窗口,通过FontDialog类的类的Font属性获取属性获取用户选择的字体。
15、其中,用户选择的字体。其中,Font是一个对象,用于公是一个对象,用于公开字体、字形、字号等开字体、字形、字号等 .17.6.2 【颜色】窗口 【颜色】窗口允许用户从调色板选择颜色,也可以【颜色】窗口允许用户从调色板选择颜色,也可以将自定义的颜色添加到该调色板上。将自定义的颜色添加到该调色板上。 在程序中,使用在程序中,使用ColorDialog类的类的ShowDialog()方方法就可以显示【颜色】窗口。当用户选择颜色或自法就可以显示【颜色】窗口。当用户选择颜色或自定义颜色后,它的定义颜色后,它的Color属性就记住了该颜色值。属性就记住了该颜色值。17.7 MessageBox类 消息框用
16、于向用户显示一些通知消息,可以显示文本、消息框用于向用户显示一些通知消息,可以显示文本、按钮和图标。按钮和图标。 简单地调用简单地调用MessageBox类的静态方法类的静态方法Show()即可实即可实现消息框。使用现消息框。使用Show()方法可以通过传递参数来确定方法可以通过传递参数来确定消息框的标题、消息文本、按钮以及图标。消息框的标题、消息文本、按钮以及图标。Show()方方法的语法形式如下:法的语法形式如下: Public static DialogResult Show (string text, string caption, MessageBoxButtons buttons,
17、 MessageBoxIcon icon,MessageDefaultButton defaultButton) text用于设置在消息框中显示的提示文本;用于设置在消息框中显示的提示文本; caption用于设置消息框的标题;用于设置消息框的标题; buttons用于设置消息框中显示的按钮,是一个用于设置消息框中显示的按钮,是一个MessageBoxButtons枚举枚举; icon用于设置消息框上出现的图标,是一个用于设置消息框上出现的图标,是一个MessageIcon枚举;枚举;MessageBoxDefaultButton用于设置消息框上的默认按钮。用于设置消息框上的默认按钮。17.7 MessageBox类MessageBoxButtons枚举值 枚举值包含的按钮AbortRetryIgnore“中止”、“重试”、和“忽略”按钮OK“确定”按钮OKCancel“确定”和“取消”按钮RetryCancel“重试”和“取消”按钮YesNo“是”和“否”按钮YesNoCancel“是”、“否”和“取消”按钮17
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 加工课课件教学课件
- 幼师课件用电教学课件
- 2024年国际旅游开发与合作合同
- 2024年广州市二手房交易合同(标准版)
- 2024年度智能制造设备采购合同
- 2024年度物业公司居民关系协调服务合同
- 2024年大数据中心合作运营合同
- 2024年工程质量检验与确认合同
- 鱼罐头课件教学课件
- 2024年库房租赁与健身器材存放合同
- 香菇种植示范基地项目可行性策划实施方案
- 混凝土硫酸盐侵蚀基本机理研究
- 《机械设计基础A》机械电子 教学大纲
- 水工岩石分级及围岩分类
- 基因扩增实验室常用仪器使用课件
- 斜井敷设电缆措施
- 施工机械设备租赁实施方案
- 牙膏产品知识课件
- 液化气站人员劳动合同范本
- 第一章 教育政策学概述
- 常见土源性寄生虫演示文稿
评论
0/150
提交评论