很多软件都有保存用户设置的功能,以便用户下一次启动时其程序界面及相关设置都是自己最中意和习惯的,这使得软件具有人性化,用户用起来感到亲切。用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
|