用VisualBasic开发数据库浏览器

2016-02-19 12:28 5 1 收藏

下面图老师小编跟大家分享用VisualBasic开发数据库浏览器,一起来学习下过程究竟如何进行吧!喜欢就赶紧收藏起来哦~

【 tulaoshi.com - 编程语言 】

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->

来源:http://www.tulaoshi.com/n/20160219/1600994.html

延伸阅读
模块的使用技巧 Access最重要的特征就是一般不必去写程序,然而可能因为要执行复杂或专业的操作而必须在模块中用Visual Basic编写程序,然后通过窗体中的命令按钮来执行相应的程序完成相应的任务。比如排名次、分段统计等。在编写Visual Basic程序时要注意以下一些问题和技巧。 1、变量的运用 ①对象变量的运用 在Access...
数据库开发之窗体编程 作者:李强 下载源代码 在很多管理信息系统的窗体都有一些共同点:可以通过框架菜单打开各种类型的视图窗口,而这些视图窗口具有MDI的一些特点,可以在框架窗体中最小化最大化还原等,并且点击菜单只能产生一个窗口(象SDI)。这种形式的窗口设...
标签: PHP
  PHP学习还在继续中,不过在一些大型PHP交流论坛遇到一些朋友对最基本的数据库概念并不清楚,便产生写此文的念头! (一)概念 数据库是一中信息的集合,每个集合都包含一条或多条形式统一的记录,记录由字段构成.通常将集合称为表,将记录称为表中的行. 数据库一般分为:平面文件数据库(TEXT),层次化数据库,网络数据库,关系数据库(mysql),对象...
各子系统集成的技巧 1、选项组、开关按钮、组合框等控件的运用 在窗体上将这些控件巧妙地加以运用可以有机地将有关系统通过一个窗体来控制,这些控件选择值可以传递到查询、报表及宏中的条件中去,从而使得对查询、报表及宏的控制显得灵活方便。 2、选项卡控件的运用 在Access 97 版中新增加了“选项卡”控件,这...
实例 1.启动Oracle Server. Startup[nomount|mount|open][force][pfile=filename] 参数说明: nomount:只启动实例 mount:启动实例,并装载数据库 open:启动实例,装载并打开数据库。 Force:终止实例,并重新启动数据库。(默认选项) Pfile:指定非默认参数文件名。 2.停...

经验教程

600

收藏

19
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部