Chinaunix首页 | 论坛 | 博客
  • 博客访问: 685310
  • 博文数量: 845
  • 博客积分: 5000
  • 博客等级: 大校
  • 技术积分: 5015
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-15 16:22
文章分类

全部博文(845)

文章存档

2011年(1)

2008年(844)

我的朋友

分类:

2008-10-15 16:37:07

  使用Data控件访问数据库

  很多软件都有保存用户设置的功能,以便用户下一次启动时其程序界面及相关设置都是自己最中意和习惯的,这使得软件具有人性化,用户用起来感到亲切。用VB编写的软件可以通过多种途径实现此功能,这里介绍用数据库方法来保存用户的个性化设置。

  假设我们已经完成了一个用TextBox做编辑栏的字处理程序,该程序提供了让用户对编辑栏背景色和字体的设置菜单,现在我们想让用户所作的设置能保存下来。怎么办呢?

  第一步:给窗体添加一个Data控件。

  第二步:用Access建立一个名为Pad的数据库,在库中建立一个表Myset,给表添加四个字段:backcolor(数据),forecolor(文本),fontname(文本),fontsize(文本)。注意:请将库文件存入程序所在目录。

  如果你的机器没安装有Access,可通过VB建库。

  第三步:编写如下代码。

  在Form_Load事件添加:

  '定位库文件路径

  Data1.DatabaseName = App.Path + " tSet.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

【责编:Luzi】

--------------------next---------------------

阅读(477) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~