第6章 窗体应用程序设计 王德俊 上海交通大学继续教育学院
第6章 窗体应用程序设计 6.1 概述 6.2 组件的公共属性、事件和方法 6.3 常用的控件 6.4 常用的对话框 6.5 消息对话框 6.6 菜单和工具栏的设计
6.3 常用的控件 6.3.1 按钮类控件 6.3.2 文本类控件 6.3.3 列表类控件
6.3.2 文本类控件 TextBox控件(文本框) 2. RichTextBox控件
1 TextBox控件(文本框) 文本框经常用于获取用户输入的文本或显示程序以文本方式输出的结果,可以用于简单的文本编辑操作。 属性 说明 可以保存最大长度为2048个字符 SelectedText 文本框中已被选中的文本 SelectionLength 文本框中已被选中的文本的长度 ReadOnly 为true时文本框只读, 为false,可读可写 PasswordChar 设置为“*”,输入字符时显示 “*” ,也可以为其它字符 SelectionStart 文本框中已被选中的文本的开始位置 Multiline 为true时,表示允许输入多行字符,false单行, "\r\n"表示换行 ……
1 TextBox控件(文本框) BorderStyle属性有三个值:None、FixedSingle和Fixed3D(默 认值),不同取值的效果如下图: ScrollBars属性用于设置文本框的滚动条,有四种取值: None:没有滚动条 Horizontal:只有水平方向上有滚动条 Vertical:只有垂直方向上有滚动条 Both:垂直和水平方向上都有滚动条
(1)重要属性 Lines属性:当Multiline属性为true时,文本框中允许编辑多行字符。Lines 属性则可以实现文本的逐行访问。Lines属性值的类型为字符串数组—— string[ ]。 例如,可以用下列语句将文本框textBox1中的数据逐行读出: string[ ] lines = textBox1.Lines; for (int i = 0; i < lines.Length; i++) { //处理第i+1行数据lines[i] }
(2)重要事件 TextChanged事件 一旦文本框的内容发生改变,都会立即触发该事件,从而调用相应的 事件处理函数。
2 RichTextBox控件 (1)重要属性: SelectionColor属性 SelectionFont属性 该属性用于设置被选中文本的颜色。例如: richTextBox1.SelectionColor = Color.Red; //红色 SelectionFont属性 该属性用于设置被选中文本的字体。例如: richTextBox1.SelectionFont = new Font("隶书", 18, FontStyle.Bold | FontStyle.Italic | FontStyle.Underline); C#不提供对被选中文本单独进行字体、字号或样式的设置,而这几项 必须同时进行(对颜色可以单独设置):例6.2
(2)重要方法 Find()方法 该方法用于在RichTextBox控件中寻找一个给定的字符串,返回字符串 在RichTextBox控件中第一个匹配字符的索引,如果查找失败则返回-1。 它重载有多个版本,常用的包括: int richTextBox1.Find(string str); int richTextBox1.Find(string str, RichTextBoxFinds option); int richTextBox1.Find(string str, int start, RichTextBoxFinds option); int richTextBox1.Find(string str, int start, int end, RichTextBoxFinds option);
(2)重要方法 SaveFile()方法 该方法将RichTextBox控件中的文本数据保存到指定的文件中,有三种 重载版本,常用两种: void SaveFile(string path) void SaveFile(string path, RichTextBoxStreamType fileType) 其中,path为包含文件名的路径,fileType为文件的存储类型,其常用 取值及其意义是: RichTextBoxStreamType.RichText: rtf格式(保存字体等设置信息) RichTextBoxStreamType.UnicodePlainText:unicode格式(支持多种 语言的纯文本) RichTextBoxStreamType. PlainText: 纯文本格式(不保存字体等设置 信息)。 例如,下列语句将控件richTextBox1中的文本保存到C:/text.rtf文件中: richTextBox1.SaveFile("C:/text.rtf"); richTextBox1.SaveFile ("C:/text.rtf", RichTextBoxStreamType.RichText);
(2)重要方法 LoadFile()方法 该方法用于将指定的文件加载到RichTextBox控件中,它也有三种重载 版本,常用: void LoadFile(string path) void LoadFile(string path, RichTextBoxStreamType fileType) 例如,下列语句将在控件richTextBox2中打开C:/text.rtf文件: richTextBox2.LoadFile("C:/text.rtf"); richTextBox2.LoadFile("C:/text.rtf", RichTextBoxStreamType.RichText);
(3)重要事件 ModifiedChanged事件 SelectionChanged事件 RichTextBox控件中的文本一旦受到更改,立即触发该事件。 SelectionChanged事件 一旦移动光标,该事件即可发生。因此可以利用该事件监控光标。
例6.2(RTBoxEditer) 用RichTextBox控件构造一个文本编辑器,使其能够设置文本的字体、字号和颜色等信息,并能打开和保存rtf格式文件
本讲小结 TextBox控件(文本框) 2. RichTextBox控件