首页 | 社区 | 博客 | 招聘 | 文章 | 新闻 | 下载 | 读书 | 代码
亲,您未登录哦! 登录 | 注册

用数据库保存VB程序的用户设置

打印文章

分享到:
作者:土人

很多软件都有保存用户设置的功能,以便用户下一次启动时其程序界面及相关设置都是自己最中意和习惯的,这使得软件具有人性化,用户用起来感到亲切。用VB编写的软件可以通过多种途径实现此功能,这里介绍用数据库方法来保存用户的个性化设置。
假设我们已经完成了一个用TextBox做编辑栏的字处理程序,该程序提供了让用户对编辑栏背景色和字体的设置菜单,现在我们想让用户所作的设置能保存下来。怎么办呢?
第一步:给窗体添加一个Data控件。
第二步:用Access建立一个名为Pad的数据库,在库中建立一个表Myset,给表添加四个字段:backcolor(数据),forecolor(文本),fontname(文本),fontsize(文本)。注意:请将库文件存入程序所在目录。
如果你的机器没安装有Access,可通过VB建库。
第三步:编写如下代码:

在Form_Load事件添加:
注释:定位库文件路径
Data1.DatabaseName = App.Path + "\rtSet.mdb"
Data1.RecordSource = "MySet"

注释:设置背景色
Private Sub mnuBackColorSetting_Click()
CommonDialog1.Flags = cdlCCFullOpen
CommonDialog1.ShowColor
On Error GoTo err
Data1.Recordset.Edit
err:
If err.Number = 3021 Then
Data1.Recordset.AddNew
End If
Data1.Recordset.Fields("backcolor") = CommonDialog1.Color
Data1.Recordset.Update
Text1.BackColor = CommonDialog1.Color
End Sub

注释:设置字体
Private Sub mnuFontSetting_Click()
CommonDialog1.Flags = cdlCFEffects Or cdlCFBoth
CommonDialog1.ShowFont
On Error GoTo FontErr
Data1.Recordset.Edit
FontErr:
If err.Number = 3021 Then
Data1.Recordset.AddNew
End If
Data1.Recordset.Fields("fontsize") = CommonDialog1.FontSize
Data1.Recordset.Fields("forecolor") = CommonDialog1.Color
Data1.Recordset.Fields("fontname") = CommonDialog1.FontName
Data1.Recordset.Update

Text1.ForeColor = CommonDialog1.Color
Text1.Font.Name = CommonDialog1.FontName
Text1.Font.Size = CommonDialog1.FontSize

注释:窗体的Activate事件
Private Sub Form_Activate()
On Error Resume Next
Text1.BackColor = Data1.Recordset.Fields("backcolor")
Text1.Font.Size = Data1.Recordset.Fields("fontsize")
Text1.ForeColor = Data1.Recordset.Fields("forecolor")
Text1.Font.Name = Data1.Recordset.Fields("fontname")
End Sub

至此,我们的程序就能把用户的个性化设置保存下来了。应当注意,只有编译成可执行文件后才有效,在VB状态中运行会提示找不到库文件的。

本栏文章均来自于互联网,版权归原作者和各发布网站所有,本站收集这些文章仅供学习参考之用。任何人都不能将这些文章用于商业或者其他目的。( Pfan.cn )

编程爱好者论坛

本栏最新文章