用vb.net实现写字板程序报告(一)

王朝vb·作者佚名  2006-01-08
宽屏版  字体: |||超大  

所有源代码均在这里下载:

http://www.up2e.com/resource.php

[/url]

用vb.net实现简单的写字板程序的设计报告(一)-----by zigz(luhi*up2e.com)

[url=mailto:luluhai@eastday.com]luluhai@eastday.com

先看看界面:

一) 运用控件

MainMenu,SaveFileDialog,OpenFileDialog,FontDialog,ImageList,PrintDocument,ColorDialog等。

二) 关键功能

1) 首先说说最关键的,就是可以多个字体样式合并适用,比如一个字它可以既是加粗,又是斜体,又是加下划线!虽然这个可以用字体对话框做到,但是能够在工具栏按钮上实现这个功能可真是花费不少心机。

2) 实现了文本查找,替换功能。并且实现了控件的拖动。

3) 实现了打印预览功能。

三) 主要设计

一般的功能如打开文件,保存文件,复制,粘贴,剪切等等就不说了,可以参考代码文件。现在主要来说说一些关键功能的设计。

1) 提示型对话框

考虑用户在退出和关闭当前文本的时候,对用户文本内容保存提示。因此如果文本内容发生了改变,就需要在用户关闭当前文件的时候(比如新建文本,打开其他文本或者退出记事本时)弹除提示对话框,提醒用户是否保存当前文件。为了实现这个功能,需要设置一个Boolean型变量用来跟踪RichTextBox中文本内容改变的情况。RichTextBox控件有一个TextChanged事件,当文本发生改变的时候,这个事件就会被fired,所以利用这个事件来监视文本的改变。用一个Boolean型变量bSave作为标记。只要在适当的位置加入对Bsave的检查就可以判断文本内容的改变情况。

图1 保存提示

'声明一个全局boolean变量,用来标记richtextbox中文本变化和保存情况

Dim bSave As Boolean

Private Sub rtbox_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles rtbox.TextChanged

'文本发生了改变,则将变量bSave置为False

bSave = False

End Sub

2)关于在ComboBox中加载用户系统上的字体列表的问题

加载用户系统上的字体到写字板ComboBox的字体栏上,为了实现他,也花费了少时间,最终在VS.NET自带的Help中找到了答案。

'下面这段代码是加载当地系统中所有字体到Combobox中

Dim allfonts As FontFamily

For Each allfonts In System.Drawing.FontFamily.Families

comboxFont.Items.Add(allfonts.Name)

Next

图2 字体列表

未完待续......

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有