用VisualBasic开发数据库浏览器

2016-02-19 12:28 3 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->

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

延伸阅读
窗体、查询、报表、宏的联合使用 将窗体、查询、报表、宏联合使用可以解决许多问题,是一项重要的技巧。 1、从窗体中获得查询中的条件 对于这个问题这里以成绩表的打印为例来说明。我们要打印不同班级的成绩表,首先建立相应报表的查询,在查询中的班级字段下的条件中输入条件:Between [forms]![打印表格]![开始班号] And [forms]![...
标签: PHP
  PHP学习还在继续中,不过在一些大型PHP交流论坛遇到一些朋友对最基本的数据库概念并不清楚,便产生写此文的念头! (一)概念 数据库是一中信息的集合,每个集合都包含一条或多条形式统一的记录,记录由字段构成.通常将集合称为表,将记录称为表中的行. 数据库一般分为:平面文件数据库(TEXT),层次化数据库,网络数据库,关系数据库(mysql),对象...
用Visual C++开发数据库应用程序 EMAIL:zzh1415@21cn.com 1、 概述 1、1 Visual C++开发数据库技术的特点 Visual C++提供了多种多样的数据库访问技术——ODBC API、MFC ODBC、DAO、OLE DB、ADO等。这些技术各有自己的特点,它们提供了简单、灵活、访问速度快、可扩展性好的开发技术。 简单性 Visual C++中提供了MFC类库、ATL模板类以及Ap...
各子系统集成的技巧 1、选项组、开关按钮、组合框等控件的运用 在窗体上将这些控件巧妙地加以运用可以有机地将有关系统通过一个窗体来控制,这些控件选择值可以传递到查询、报表及宏中的条件中去,从而使得对查询、报表及宏的控制显得灵活方便。 2、选项卡控件的运用 在Access 97 版中新增加了“选项卡”控件,这...
实例 1.启动Oracle Server. Startup[nomount|mount|open][force][pfile=filename] 参数说明: nomount:只启动实例 mount:启动实例,并装载数据库 open:启动实例,装载并打开数据库。 Force:终止实例,并重新启动数据库。(默认选项) Pfile:指定非默认参数文件名。 2.停...

经验教程

827

收藏

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