说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

在VB中直接用ODBC API访问数据库

HTML文档下载 WORD文档下载 PDF文档下载
在VB中直接用ODBC API访问数据库


中国航空信息中心 吴 斌

  从WINDOWS 95开始,微软为我们提供了一个好用的文件搜索器。使用这个搜索器,我们可以方便快捷的查找到符合条件的文件。但有时我们在程序设计中也需要这一功能,能否在自己的程序中实现呢?答案当然是肯定的。下面我们就来着手设计一个VB程序中的文件搜索器。

  首先,进入VB中,建立一个新的表单。在表单上建立一个驱动器列表框(DriveList),一个目录列表框(FolderList),一个检查框(SubCheck),一个ListView控件(FileList),两个文本框(FileName,FileSize)和两个按钮(cmdSearch,cmdExit)。需要注意的是ListView 控件是 Mscomctl.ocx 文件中一组 ActiveX 控件的一部分。若要在应用程序中使用 ListView 控件,必须将 Mscomctl.ocx 文件添加到工程中。选择ListView控件,点击鼠标右键,在弹出菜单中选择“属性”。在属性窗口的“列首”页中设置将要显示的列,连续按动“插入列”5次。排列好各控件的位置,然后加入以下代码:

Option Explicit
Dim FileSys As Scripting.FileSystemObject

Private Sub CmdExit_Click()
End
End Sub

Private Sub DriveList_Change()
FolderList.Path = DriveList
End Sub

Private Sub Form_Load()
Dim I As Integer
Set FileSys = New Scripting.FileSystemObject
FolderList.Path = Left(DriveList.Drive, 2) & "\"
With FileList.ColumnHeaders.Item(1)
.Alignment = lvwColumnLeft
.Text = "文件名"
.Width = 2000
End With
With FileList.ColumnHeaders.Item(2)
.Alignment = lvwColumnRight
.Text = "大小(KB)"
.Width = 1500
End With
With FileList.ColumnHeaders.Item(3)
.Alignment = lvwColumnLeft
.Text = "类型"
.Width = 1500
End With
With FileList.ColumnHeaders.Item(4)
.Alignment = lvwColumnLeft
.Text = "路径"
.Width = 2000
End With
With FileList.ColumnHeaders.Item(5)
.Alignment = lvwColumnLeft
.Text = "修改时间"
.Width = 2000
End With
End Sub

Private Sub Form_Unload(Cancel As Integer)
Set FileSys = Nothing
End Sub

Private Sub cmdSearch_Click()
Dim SFolderStart As Scripting.Folder
Set SFolderStart = FileSys.GetFolder(FolderList.Path)
FileList.ListItems.Clear
AddFiles SFolderStart
If FileList.ListItems.Count = 0 Then MsgBox _
"没找到任何符合条件的文件!",vbOKOnly + vbInformation, "提示信息"
End Sub

Private Sub AddFiles(SFolderSearch As Scripting.Folder)
Dim SFolder As Scripting.Folder
Dim SFile As Scripting.File
Dim sngFileSize As Single
Dim lngSize As Long
Dim Itm As ListItem
If SubCheck.Value = 1 Then
If SFolderSearch.SubFolders.Count Then
For Each SFolder In SFolderSearch.SubFolders
AddFiles SFolder
Next SFolder
End If
End If
sngFileSize = FileSize * 1000
For Each SFile In SFolderSearch.Files
With SFile
If .Size >= sngFileSize And IIf(FileName.Text < > "", _
InStr(.Name, FileName.Text) > 0, True) Then
Set Itm = FileList.ListItems.Add(Text:=.Name)
lngSize = .Size / 1000
With Itm
.SubItems(1) = Format(lngSize, "#,###")
.SubItems(2) = SFile.Type
.SubItems(3) = SFile.ParentFolder
.SubItems(4) = SFile.DateLastModified
End With
End If
End With
Next SFile
Set Itm = Nothing
Set SFolder = Nothing
End Sub
  运行后,选择相应目录,再在FileName文本框中输入要查找的文件名或文件名的一部分,然后再在FileSize文本框中输入文件的大小,按下搜索按钮即可搜索到相应文件。当然,这只是个功能较为简单的文件搜索器,有兴趣的读者可以使用Scripting.FileSystemObject对象的属性为其添加一些更为有用的功能。

  本例程序在Visual Basic 4.0、Windows 95环境下调试通过。



2013年云计算的九大威胁 W3C小组发起新“汽车与Web平台业务组”项目 苹果CEO:请忘掉股价 未来依然有伟大产品 两周营收100万,GO桌面在Google Play做对了什么 “吸金王”Puzzle &amp;amp; Dragons是如何炼成的 初创公司Kickboard:让父母了解孩子的在校表现 Rackspace收购开源数据库公司ObjectRocket 投资人表示微软应推出iPad版Office 三星:谷歌养大的一匹狼 UC九游年度战略:2013计划分成超3亿元 X-Canvas:UC将发布高性能HTML5游戏引擎 淘宝:OceanBase分布式系统负载均衡案例分享 Cloud Foundry面临代码分支 策略为王股票软件VC源代码简介 StarCraft开发:用肮脏的技巧解决难题 忠于用户:美团1000亿的卫星与Groupon的窘境 360周鸿祎开放日回应质疑:都是做搜索惹的祸 轻量级的高性能Web框架:Play 为什么会失败?社交鼻祖Friendster的“验尸”报告 那些年Google公开的大数据领域论文 遍地撒网,重点培养,King.com颠覆性游戏商业模式 Adobe正式发布Photoshop Touch图像处理应用 2013年全球重要黑客大会一览 Gartner:2013年公有云将增长18.5%,达1310亿美元 开源炫彩界面库简介 一周消息树:我的十年编程自学之路 移动搜索状态:谷歌称雄 仍有较大发展空间 移动周报:我为什么弃用Objective-C而选择RubyMotion? 2月浏览器排行:IE高歌猛进 Chrome创17个月新低 Twitter创始人:最好的程序员大多是自学成才的 Evernote遭到攻击,5000万用户密码重置 如何获取提交表单的内容 Ado 问题 oracle中删除一个用户,用语法如何写 北京的兄弟们你们找工作通过哪几种方式 请问哪儿有cobol的编译器? 请问考系分的兄弟,都在看什么辅导书啊? 不能解决的给分,解决的给钱,时间限制在,13日之前!!!!!!!!!!!! 如何重新定义超连接的样式? ini和注册表能不能一起用? 调制解调器 SYNC灯不亮。 hehe GCC不认识sockaddr_in,但认识sockaddr,哪位大侠指点一下是什么地方没有配置好 asp中的过程和函数是否可以传递两个以上的参数? 假设我在dataGrid中的修改某一个单元格内容之后,焦点还没有离开,再去保存,就保存不了! 求助!!!鲁文易盘无法驱动,急!!!!!!!!!! 为什么只能用localhost访问? 还是烦人乱码问题~~JSP 连不上网。 人家说我有热情没天分,当不了程序员 中秋节给大家助助兴,小游戏一只,最终获胜的可获全部分数,100大分哦! 简单问题,急! 请教零长度问题(不好意思没分了救命啊) 请教零长度问题(不好意思没分了救命啊) sizeof的问题 今天的最近一问.... 写一个参数有默认值的函数出现的问题! 请教零长度问题(不好意思没分了救命啊) 有个关于可见性的问题,请指点, Delphi6中控制Excell2000的Chart的问题 看哪个地方出名人多 c++ 求学 (更上一层楼) 请教零长度问题(不好意思没分了救命啊) 高分寻求jtest4.5的破解 或注册方法 关于批量删除不同目录下相同文件的问题。 如何在VFP中运行VFP代码? 如何调用chm帮助文件? iptables问题 请教零长度问题(不好意思没分了救命啊) 大家來討論工作的問題 能用c语言编有关网络的程序吗?谢谢大侠们了:) 要在程序中控制在DBCHART显示不同颜色部分的内容及数值,如'34 丰田',来者有分? 提个建议:在祝福 璇玑大力 的贴子中,有不少的“名句妙词”,我们花点时间,搜集于一贴,同意的举手!(我的分数太紧张) 低级问题:如何把TFileStream中的一个字节读到一个byte变量中? 串口编程问题 jsp+mysql用的的resin服务器,运行一段时间,网站访问速度就很慢了,一般会是什么原因引起的呢? 两个字符串,前面是任意字符,后面必须是数字,怎么验证这两个字符串前面的字符是否一样? 怎么才能不关?? 祝大家中秋节快乐,进来帮小妹一把!关于JavaMail收邮件的问题! 一段列表筐代码不知道能不能短一些(请高手帮忙) 一个关于安装控件的问题? 请教SNMP的命令? 变本加厉的厉是什么意思 一张大正方形纸,第一次剪成4张正方形纸片,以后将前一次剪得每一片再剪成4张,像这样剪n将得到多少张? 假如我是丑小鸭,400字 穷人翻了身就变本加厉的使唤人是什么意思 万物简史 哪个出版社的好· 一张足够大的正方形纸片,第一次把它剪成4张正方形纸片,以后每一次都将前一次剪得的每一片再剪成4张正方形纸片.如此进行下去.(1)剪3次后,共得到________张正方形纸片;(2)剪n次后,共 英语翻译 有关文明的议论文,400~500字 已知|x-2|+(3x+y+m)²=0,当m为何值时,y≥0? 怎样写金融危机的社会调查报告的提纲? 如何写社会调查报告和提纲拜托各位大神 中国疾控中心、国家流感中心:H7N9北京119指挥中心:寒衣节烧纸引火灾北京:明年购车摇号指标净减9万 暂不激活社会资本 释放市场能量——十八大法5名醉汉从马戏团\"绑架\"一只羊美国安局被曝重点监视韩国 韩当局索要美国两名移民者闯入国会山抗议被逮捕美国被曝重点监视韩国 韩要求美方做详英国内阁会议严禁使用平板电脑 避免遭巴基斯坦前总统穆沙拉夫获红色清真寺案美国安局被曝重点监视韩国 韩当局索要丢书大作战 玩遍全世界《超级快递》陈赫搞笑北美记者来访海信3天,满眼都是海外雄大乐透彩票的“加法” 你懂多少?未来五年 半数重庆人在健身会龙庄之谜外媒:中国拥有的美国债务不会让特朗普星桥腾飞鼎力支持孤独症儿童家庭康复论北京门头沟区(非天然)发生2.6级地里皮首秀,有改观没奇迹中国将鼓励企业在菲律宾投资兴建工业园洪荒守护之造化道尊玉女宗的唯一男丁仙剑三之游戏人间武道屠神斩破空宇斗破苍穹之绝恋踩仙踏道虚空假面异界纵横混在丧尸的世界琉火焚冰傲红尘婺源江岭梯田风光旅游莲花峰旅游猴子观海旅游屯溪老大桥旅游大同古城墙旅游九龙壁旅游华严寺旅游善化寺旅游悬空寺旅游天下第一关旅游大罗山旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘