紫外工控论坛

 找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

搜索

六天学会VB数据库编程之第二天 使用Data控件访问数据库

2010-12-20 20:05| 发布者: 冰糖| 查看: 1482| 评论: 0

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

鲜花

握手

雷人

路过

鸡蛋

--------------------------------------------------------------------------------------------------------------------
本站是工控技术交流站点,论坛内容均为网络收集或会员所发表,并不代表本站立场,会员拥有该内容的所有权力及责任!
本站内容如有侵犯您的版权,请按下面方式联系本站管理员,我们将及时删除处理
管理员:冰糖 QQ:5483695(请直击主题), Mail:admin#ziwai.net(#改成@) 其它非本人.
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论!

QQ|Archiver|手机版|小黑屋|紫外工控论坛. ( 苏ICP备11032118号-1 )

GMT+8, 2024-5-18 21:10 , Processed in 0.437500 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

返回顶部