用VisualBasic开发数据库浏览器

江崎便猴

江崎便猴

2016-02-19 12:28

下面图老师小编跟大家分享用VisualBasic开发数据库浏览器,一起来学习下过程究竟如何进行吧!喜欢就赶紧收藏起来哦~
MicrosoftAccess是VisualBasic最常用的数据库,但VisualBasic没有提供类似FoxproforWindows的BROWS命令的函数来浏览Access数据库。本程序提供了一种类似BROWS命令界面浏览Access数据库的方法,感兴趣的读者可以把这个程序改写为带参数(数据库名、表名、字段名、字段宽度等)的子程序,实现类似Foxproforwindows的BROWS命令的功能,在自己的应用程序中调用。
  首先,在窗口中定义一个网格(gridl)、一个列表框(list1)、一个普通对话框(dlg)、一个数据察觉项(datal)、两个命令按钮(command1和command2),排好位置。
  程序执行时,按“打开”按钮打开一个对话框,选定数据库文件后程序在列表框中显示数据库包含的表名,单击列表框中的表名即可浏览该表。本程序可自动根据字段长度和字体大小设置浏览区的大小,以保证浏览区不会超出窗口。如果窗口满足不了浏览区,程序自动给浏览区加水平或竖直滚动条。附程序清单:
  1SubCommand1_Click()'鼠标器点“打开”键
  2Dim,IAsInteger,cuntAsInteger
  3grid1.Visible=False
  4dlg.Filename=""
  5dlg.Filter="Access(*.MDB)|*.MDB"
  6dlg.FilterIndex=1
  7dlg.Action=1'打开对话框
  8Ifdlg.Filename=""Then'如果未选定文件
  9GoTocanc
  10EndIf
  11datal.Connect=""
  12datal.DatabaseName=dlg.Filename
  13datal.RecordSource=""
  14datal.Refresh
  15browser.Caption="Access浏览器[" datal.DatabaseName "]"
  16cunt=datal.Database.TableDefs.Count
  17listl.Clear
  18ForI=0Tocunt-1'将表名加入到列表框
  19IfLeft(datal.Database.TableDefs(I).Name,4)"Msys"Then
  20listl.Additemdatal.Database.TableDefs(I).Name
  21EndIf
  22NextI
  23label1.Visible=True
  24list1.Visible=True
  25list1.ListIndex=0
  26canc:
  27EndSub
  28SubCommand2_Click()'鼠标器点“退出”键
  29End
  30EndSub
  31SubForm_Load()
  32browser.Caption="Access浏览器"
  33grid1.Height=3200
  34grid1.Visibli=False
  35list1.Visible=False
  36label1.Visible=False
  37EndSub
  38SubListl_Click()'鼠标器点列表框
  39DimctAsInteger
  40data1.RecordSource=listl.Text
  41ct=data1.Database.TableDefs(list1.ListIndex).Fields.Count
  42grid1.Cols=ct
  43grid1.Row=0
  44ForI=0Toct-1'将表中各字段名加到网格第一行
  45grid1.Col=I
  46grid1.Text=data1.Database(data1.RecordSource),Fields(I).Name
  47Nexti
  48data1.Refresh
  49data1.Recordset.MoveLast
  50grid1.Rows=data1.Recordset.RecordCount 1
  51data1.Recordset.MoveFirst
  52grid1.Row=0
  53WhileNotdata1.Recordset.EOF'将数据读入网格各单元
  54grid1.Row=grid1.Row 1
  55Fori=0Toct-1
  56grid1.Col=I
  57IfNotIsNull(datal.Recordset(I).Value)Then
  58grid1.Text=datal.Recordset(I).Value
  59Else
  60grid1.Text=""
  61EndIf
  62cellwidth=TextWidth(grid1.Text) 200
  63Ifcellwidthgrid1.ColWidth(I)Then
  64gridl.ColWidth(I)=cellwidth
  65EndIf
  66NextI
  67data1.Recordset.MoveNext
  68Wend
  69grid1.Width=0
  70Fori=0Toct-1'计算网格总宽度
  71grid1.Width=gridl.Width gridl.ColWidth(I)
  72NextI
  73Ifgrid1.WidthscalewidthThen'如果网格总宽度大于窗口宽度
  74grid1.Width=scalewidth
  75EndIf
  76grid1.Height=(gridl.Rows 2)*20*grid1.FontSize'计算网格长度
  77Ifgrid1.Height3200Then'如网格长度出界
  78grid1.Height=3200
  79EndIf
  80browser.Width=grid1.Width 300'设置窗口宽度
  81grid1.Visible=True
  82EndSub->

展开更多 50%)
分享

猜你喜欢

用VisualBasic开发数据库浏览器

编程语言 网络编程
用VisualBasic开发数据库浏览器

提高VisualBasic访问数据库效率

编程语言 网络编程
提高VisualBasic访问数据库效率

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

用Delphi开发Web服务数据库程序

编程语言 网络编程
用Delphi开发Web服务数据库程序

为什么用VB开发数据库---VB数据库入门之(一)

编程语言 网络编程
为什么用VB开发数据库---VB数据库入门之(一)

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

提高VisualBasic访问数据库的效率

编程语言 网络编程
提高VisualBasic访问数据库的效率

Access数据库开发技巧

编程语言 网络编程
Access数据库开发技巧

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

VB数据库数据的选项录入及选项增减与编辑

VB数据库数据的选项录入及选项增减与编辑

同一个帐号不能同时登陆的问题

同一个帐号不能同时登陆的问题
下拉加载更多内容 ↓