很多軟件都有保存用戶設(shè)置的功能,以便用戶下一次啟動(dòng)時(shí)其程序界面及相關(guān)設(shè)置都是自己最中意和習(xí)慣的,這使得軟件具有人性化,用戶用起來(lái)感到親切。用VB編寫的軟件可以通過(guò)多種途徑實(shí)現(xiàn)此功能,這里介紹用數(shù)據(jù)庫(kù)方法來(lái)保存用戶的個(gè)性化設(shè)置。 假設(shè)我們已經(jīng)完成了一個(gè)用TextBox做編輯欄的字處理程序,該程序提供了讓用戶對(duì)編輯欄背景色和字體的設(shè)置菜單,現(xiàn)在我們想讓用戶所作的設(shè)置能保存下來(lái)。怎么辦呢? 第一步:給窗體添加一個(gè)Data控件。 第二步:用Access建立一個(gè)名為Pad的數(shù)據(jù)庫(kù),在庫(kù)中建立一個(gè)表Myset,給表添加四個(gè)字段:backcolor(數(shù)據(jù)),forecolor(文本),fontname(文本),fontsize(文本)。注意:請(qǐng)將庫(kù)文件存入程序所在目錄。 如果你的機(jī)器沒(méi)安裝有Access,可通過(guò)VB建庫(kù)。 第三步:編寫如下代碼:
在Form_Load事件添加: '定位庫(kù)文件路徑 Data1.DatabaseName = App.Path + "\rtSet.mdb" Data1.RecordSource = "MySet"
'設(shè)置背景色 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
'設(shè)置字體 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
|
|