博文
VB中控件大小随窗体大小变(2005-10-06 12:38:00)
摘要:有时窗体变化后,如改变分辨率后控件大小却不能随之改变。手工代码调整实在麻烦,下面的模块实现自动查找窗体上控件并使其改变大小以适应窗体变化。
在Form的Resize事件中调用函数Resize_All就能实现控件自动调整大小,如:
Private Sub Form_Resize()
Dim H, i As Integer
On Error Resume Next
Resize_ALL Me 'Me是窗体名,Form1,Form2等等都可以
End Sub
在模块中添加以下代码:
Public Type ctrObj
Name As String
Index As Long
Parrent As String
Top As Long
Left As Long
Height As Long
Width As Long
ScaleHeight As Long
ScaleWidth As Long
End Type
Private FormRecord() As ctrObj
Private ControlRecord() As ctrObj
Private bRunning As Boolean
Private MaxForm As Long
Private MaxControl As Long
Private Const WM_NCLBUTTONDOWN = &HA1
Private Declare Function SendMessage Lib "USER32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Private Declare Function ReleaseCapture Lib "USER32" () As Lo......
在Visual Basic 6.0 中创建Word文档(2005-10-05 21:48:00)
摘要:在Visual Basic 6.0 中创建Word文档
作者: 寻大勇
出处: 计算机与信息技术
责任编辑: 方舟
[ 2004-12-22 10:43 ]
摘要:分析了Word对象模型的结构,特别是Document对象及其使用方法,提出了在Visual Basic中创建Word格式文档的方法,并给出了该方法的应用实例。
关键词:Visual Basic,Word对象模型,文档
引言
Word文档是实际工作学习中最为常用的文档格式之一。
随着社会信息化程度的提高,一些传统的由人工完成工作逐渐转向由计算机来处理。计算机自动组卷系统便是一个典型的例子。为了追求更高的效率,一些计算机自动组卷系统的单位用户要求由软件输出Word格式的试卷不需排版直接供印刷使用。
由于Microsoft Office套件的普及,Word文档、电子表格文档、电子幻灯片等文档日渐常用。虽然在Office中各个程序的文档可以方便地转换,但是这种转换是以失去文档原本的格式为代价的。例如,在自动组卷系统中,存储在Access数据库中的试卷可以通过Access提供的导出功能产生Word文档,但产生的文档是无格式的,需花费大量时间重新排版方可符合用户在试卷格式上的要求。
针对这一问题,本文讨论通过研究Word对象模型,提出使用该对象模型创建符合用户所要求的特定格式的Word文档的方法。
Word对象模型
1、Word对象模型层次结构
对象是 Visual Basic的基石,几乎在 Visual Basic 中的每个操作都与修改对象有关。Word 的任何元素(如文档、表格、段落、域、书签等)都可以用 Visual Basic 中的对象来代表。
对象代表一个 Word 的元素,如文档、段落、书签或单个的字符。集合也是一个对象,该对象包含其他数个对象,通常这些对象属于相同的类型,例如,一个集合对象中可包含文档中的所有书签对象。通过使用属性和方法,可以修改单个的对象,也可修改整个的对象集合。
Microsoft Word Visual Basic提供一套完整的Wo......
VB多类图片数据库存取技巧 (2005-10-05 21:42:00)
摘要:VB多类图片数据库存取技巧
作者: COMMERCE·TANG
出处: yesky
责任编辑: 方舟
[ 2002-11-15 10:58 ]
众所周知,MDB数据库的通用类型和二进制类型字段都可以存取图片,但这样做会使数据库的体积庞大,降低数据库的存取效率。
笔者思考出数据库中存取图片的另一种方法,希望与爱好者们分享。
一、实现思路:
用户添加或修改图片时控制使用COMMONDIALOG的SHOWOPEN对话框,然后记录通用对话框的FILENAME到变量A,再使用APP.PATH找到到特定目录下的该图片文件,改变窗体上放置图片控件的属性即可显示。数据库中只使用一文本型字段记录下变量A,图片文件保存在程序目录下,此法可同时使用GIF、JPG和BMP等等图像文件。
二、实现方法:
1、在窗体上建立IMAGE控件,名为IMAGE1。
2、用DATA控件得到数据源表。
3、建立“更改图片”按钮COMMAND1,其代码为:
Private Sub Command1_Click()
CommonDialog1.FileName = ""
CommonDialog1.Filter = "文件bmp|*.bmp|文件JPG|*.JPG|文件GIF|*.GIF"
CommonDialog1.ShowOpen
Dim a As String
a = CommonDialog1.FileTitle '得到不含路径文件名
If a <> "" Then
Image11.Picture = LoadPicture(App.Path & "\bmp\" & a)
'\bmp\是我用于存取图片的本系统文件夹下的一个子文件夹。
Data1.Recordset.Edit
Data1.Recordset.Fields("tp") = a 'TP是存取图片名称的字段。
Data1.Recordset.Update
End If
End Sub
......
在VB中存取数据库中的图片(详细解释)(2005-10-05 21:40:00)
摘要:在VB中存取数据库中的图片
作者: 史美康
出处: vbeden.com
责任编辑: 方舟
[ 2001-07-05 09:20 ]
一、 数据库的设计
数据库可以采用微软的Access97或者SQL Server来进行,首先新建一张表,取名为Table,添加三个字段,分别是:姓名 Char型(SQL Server中)文本型(Access中);编号Char型(SQL Server中)文本型(Access中);照片image型(SQL Server中)OLE对象(Access中),设计好后存盘。为了可以进行远程调用,我们采用ODBC的方法进行,双击打开控制面板里的ODBC数据源,点“系统DSN”选项卡,按“添加”按钮选择对应的数据源驱动程序Access的*.mdb或者SQL Server,依照添加向导加添加数据源,下面就可以开始程序的编写了。
二、 程序的编写
运行VB,新建一个工程。本程序采用ADO控件和动态链接库访问数据库,需要加入ADO的运行库,单击“工程\引用”菜单,出现引用对话框,选择Microsoft ActiveX Data Objects2.0 Library并确定。
添加一个Form,四个Label控件,两个TextBox控件,一个PictureBox控件,一个ADODC控件,三个CommandButton控件,一个CommandDialog控件,如果ADODC和CommandDialog控件没有出现在工具框上,请单击菜单“工程\部件”。点“控件”选项卡,在其中选中Microsoft ADO Data Control 6.0(OLEDB)和Microsoft Common Dialog Control 6.0两项按“确定”按钮。
下面是以上各个控件的一些属性:
Form1.MaxButton=False
Label1.Caption=姓名:
Label2.Caption=编号:
Label3.Name= ResName
Label3.BackColor= &H80000009&
Label3.BorderStyle......
VB实现图像在数据库的存储与显示(chunk方法)(2005-10-05 21:38:00)
摘要:VB实现图像在数据库的存储与显示
作者: 李树海 陆体虎
出处: 计算机与信息技术
责任编辑: 方舟
[ 2004-12-31 11:40 ]
摘 要 本文以VB6与Access97作为开发工具,介绍了图像在数据库中的存储与显示技术。
关键词 数据库,数据控件,二进制,图像存储,图像显示,ADODB,Recordset
数据库是数据管理的最新技术,是计算机科学的重要分支,是现代计算机信息系统和计算机应用的基础和核心。在科学技术高速发展的今天,在信息资源无处不在、无处不用,已成为各部门的重要财富的时候,对于从事程序开发的人员来说显得尤为重要。
如今,对数据库的操作不仅仅满足于对字符和数字的单一操作,图像的存储与显示已显得尤为重要。下面作者将以VB6.0与Access97作为开发工具,分别介绍两种图像显示与存储的方法。
利用数据控件和数据绑定控件
利用这种方法,不写或写少量代码就可以构造简单的数据库应用程序,这种方法易于被初学者接受。在举例之前,先把数据绑定功能简要的说明一下,凡是具有DataSource属性的控件都是对数据敏感的,它们都能通过数据控件直接使用数据库里的数据。比如CheckBox Control , ComboBox Comtrol , TextBox Comtrol , PictureBox Control ,Image Comtrol … 因为这种方式涉及到的知识点比较少,也比较容易理解,不多作说明,现直接介绍编程步骤。
1、从数据库中显示所需要的图片
首先,添加一个Data数据控件,设置它的DatabaseName和RecordSource属性,
strPath = App.Path
If Right(strPath, 1) <> "\" Then
strPath = strPath & "\"
MyData.DatabaseName = strPath & "ExampleDB.mdb" '数据库存地址
MyData.RecordSource = "Info" '表名
第二步......
VB开发应用软件之动手前(2005-10-05 21:36:00)
摘要:一. 写在动手之前
也许你已经迫不及待要动手写程序了,在这里,可以先不要着急,我们先来看看一下在Windows下编程都有哪些方法要注意的,这对我们的编程学习是很有帮助的。
1 窗口程序
我们可以找到一些编程中的共性和特点,在日后的学习中可以举一反三,从而在整体上把握Windows下的窗口程序开发。
可以想一下:
对于普通的应用程序,是不是都是以“窗口”为基本界面的(而在Visual Basic 6中,窗口也称作“窗体”)?
在一般窗口上,我们是不是可以看到可能有标题、菜单、按钮、工具栏(上面是“按钮”)……?
在窗口中,我们可以看到标题中说明了这个程序的功能或相关特性,我们称这个“标题”是所在窗口(窗体)的一个“属性”。而窗口还有很多属性,如窗口状态(WindowsState,可能会是最小化、最大化和正常)、是否可以看见(Visible,可能的值是True或False)等等。
对于在窗口上的其它组成部分,如菜单、按钮、文本框、标签等等,我们称其为“控件(Control)”,在这里我们可以理解为控件的含义就是:在窗口之上,有着不同特征和作用的功能组件。如菜单可以通过选择要做相应的操作,而按钮则是通过单击来实现特定操作,文本框用于输入或显示文本(或称字符串),标签只是用于显示文本等。
2 关于控件
在窗口程序开发中,我们会用到很多控件,这些控件有的是Visual Basic 6开发环境提供的,有些是第三方开发的,而且我们还可以自己制作一些控件来使用,但有一个共同点,就是我们使用这些控件,实际是在使用它们的“属性”、“方法”和“事件”,下面分别来介绍。
(1) 属性
在窗口中,我们已经看到了一些关于属性的概念,而实际上,我们完全可以将窗口也做为一种特殊的控件来使用。
属性,可以用来表示某个控件的特征和特性,如汽车的颜色是什么。对于它的操作一般有两个,一是设置,即将属性值赋给控件;再就是读取属性值,就是给出控件的特征值。
如在按钮控件中,有一个“Caption”属性,它指明了在按钮上显示的文本(字符串),如“退出”、“确定”等等。它可以用来标明按钮的作用。
又如文本框的“Locked”属性,用于指明是否锁定这个文本框,当为T......
利用VB控件操作目录和文件夹-2(2005-10-05 21:27:00)
摘要:2、文件夹
对文件夹的操作,我们可以使用folder对象,它提供了对文件夹所有属性和方法的访问.下表市对其主要属性的解释:
DateCreated
返回指定文件或文件夹的创建日期和时间
DateLastAccessed
返回最后一次访问指定文件或文件夹的日期和时间
Drive
返回指定文件或文件夹所在的驱动器符号
Files
返回由File对象组成的所有Files集合,这些Files集合包含在指定的文件夹中,包括设置了隐藏和系统文件属性的那些文件夹
IsRootFolder
如果指定的文件夹是根文件夹,则返回True,否则返回False
Name
设置或返回指定文件或文件夹的名称
ParentFolder
返回指定文件或文件夹的父文件夹的Folder对象
Path
返回指定文件、文件夹或驱动器的路径
ShortName
返回较早的需要8.3文件命名约定的程序所使用的短文件名
ShortPath
返回较早的需要8.3文件命名约定的程序所使用的短路径
Size
对文件来说,本属性返回以字节为单位的文件大小;对文件夹来说,返回以字节为单位包括其中所有文件或子文件夹的大小
SubFolders
返回包含所有文件夹的一个Folders集合,这些文件夹包含在某个特定文件夹中, 包括设置了隐藏和系统文件属性的那些文件夹
Type
返回指定文件或文件夹的类型信息.
使用Folder对象的第一部就是先用FileSystemObjectd的GetFolder方法得到Folder对象, 该方法的作用是返回指定路径上的与某个文件夹相关的Folder对象.要保证指定的文件夹是实际存在的,否则会出错.
让我们来看一看其中的各种属性及其用法吧.
(1)Attributes属性可以返回文件或文件夹的属性,或者设置他们的新属性.所设属性可以是以下值中任意一个或多个的逻辑组合.
常数
值
说明
Normal
0
为一般文件,不设置属性
ReadOnly
1
为只读文件,属性为读/写
Hidden
2
为隐藏文件,属性为读/写
System
......
利用VB控件操作目录和文件夹-1(2005-10-05 21:26:00)
摘要:一) 察看和显示目录下的文件和文件夹
对于这个实现,其实很简单。首先想到的就是VB中给我们提供的现成的控件。主要有这么两类:
一类是驱动器列表框(DriveListBox)、目录列表框(DirListBox)和文件列表框(FileListBox)三个控件组合而成的自定义对话框;
另一类是windows提供的标准对话框。
他们在工具箱中的位置和图标如下所示:
1、驱动器列表框是一个下拉式的列表框,他和一般下拉式的列表框的不同仅在于功能上的不同,它提供了一个驱动器的列表。当单击右边的箭头时,则弹出计算机中的所有驱动器的下拉列表。默认状态下,在驱动器列表中显示的是当前驱动器,我们可以输入或从下拉列表中选择有效的驱动器标示符。
下面是它的主要属性,事件和方法.
属性
Drive
本属性用于返回或设置运行时选择的驱动器.默认值为当前驱动器
改变Drive属性会触发Change事件.
示例: Drive1.Drive = “c:\”
设置C盘为当前驱动器.
事件
Change
当选择一个新驱动器或通过代码改变了Drive属性时触发该事件
下面是示例代码:
Private Sub Drive1_Change()
Dir1.Path = Drive1.Drive
‘当选择一个新驱动器时,将驱动器列表中选中的当前驱动器,赋给目录列表的路径.
End Sub
2、目录列表框
目录列表框用于显示当前驱动器的目录结构,目录列表框从最高层目录开始,显示当前驱动器的目录结构,并按层次关系缩进跟目录下的所有子目录。下面是它的主要属性,方法和事件:
属性
Path
本属性用于返回或设置运行时选择的路径,默认路径为当前路径.改变Dri属性会触发Change事件.
示例: Dri1.Path = Drive1.Drive
设置在驱动器列表框中选中的驱动器盘符为目录列表的当前路径.
ListIndex
本属性用来返回或设置控件中当前被选择......
VB中操作目录的Winodws API小结(2005-10-05 21:24:00)
摘要:下面是windows中提供的对于目录进行操作的API函数及其功能:
CreateDirectory,
CreateDirectoryEx
创建一个新目录
GetCurrentDirectory
在一个缓冲区中装载当前目录
GetDiskFreeSpace,GetDiskFreeSpaceEx
获取与一个磁盘的组织有关的信息,以及了解剩余空间的容量
GetDriveType
判断一个磁盘驱动器的类型
GetFullPathName
获取指定文件的完整路径名
GetLogicalDrives
判断系统中存在哪些逻辑驱动器字母
GetLogicalDriveStrings
获取一个字串,其中包含了当前所有逻辑驱动器的根驱动器路径
GetSystemDirectory
这个函数能取得Windows系统目录(System目录)的完整路径名。在这个目录中,包含了所有必要的系统文件。根据微软的标准,其他定制控件和一些共享组件也可放到这个目录。通常应避免在这个目录里创建文件。在网络环境中,往往需要管理员权限才可对这个目录进行写操作
GetTempPath
获取为临时文件指定的路径
GetVolumeInformation
获取与一个磁盘卷有关的信息
GetWindowsDirectory
这个函数能获取Windows目录的完整路径名。在这个目录里,保存了大多数windows应用程序文件及初始化文件
RemoveDirectory
删除指定目录
SetCurrentDirectory
设置当前目录
SetVolumeLabel
设置一个磁盘的卷标(Label)
让我们通过几个例子来详细的了解一下其中主要的几个函数及其用法:
1、GetLogicalDrives
作用:判断系统中存在哪些逻辑驱动器字母
声明形式:Declare Function GetLogicalDrives Lib "kernel32" Alias "GetLogicalDrives" () As Long
说明:此函数的返回值类型为Long,这个结构中的二进制位标志着存在哪些驱动器。其中,位......
VB中利用Windows API实现文件操作(2005-10-05 21:23:00)
摘要:下面是windows中提供的对于文件进行操作的API函数及其功能:
Windows API函数
功能
CloseHandle
关闭一个内核对象。其中包括文件、文件映射、进程、线程、安全和同步对象等。涉及文件处理时,这个函数通常与vb的close命令相似。应尽可能的使用close,因为它支持vb的差错控制。注意这个函数使用的文件句柄与vb的文件编号是完全不同的
CompareFileTime
根据FILETIME结构的信息,对比两个文件的时间
CopyFile
复制文件。与vb的filecopy命令相似
CreateFile
这是一个全功能的函数,可打开和创建文件、管道、邮槽、通信服务、设备以及控制台
DeleteFile
删除指定文件
FindClose
关闭由FindFirstFile函数创建的一个搜索句柄
FindFirstFile
根据文件名查找文件
FindNextFile
根据调用FindFirstFile函数时指定的一个文件名查找下一个文件
FlushFileBuffers
针对指定的文件句柄,刷新内部文件缓冲区
GetBinaryType
判断文件是否可以执行
GetFileAttributes
判断指定文件的属性
GetFileInformationByHandle
这个函数提供了获取文件信息的一种机制——在一个BY_HANDLE_FILE_INFORMATION结构中装载与文件有关的信息
GetFileSize
判断文件长度
GetFileTime
取得指定文件的时间信息
GetFileType
在给出文件句柄的前提下,判断文件类型
GetFileVersionInfo
从支持版本标记的一个模块里获取文件版本信息
GetFileVersionInfoSize
针对包含了版本资源的一个文件,判断容纳文件版本信息需要一个多大的缓冲区
GetShortPathName
获取指定文件的短路径名
GetTempFileName
这个函数包含了一个临时文件的名字,它可由应用程序使用
lclose
关闭指定的文件,请参考CloseHandle函数,了解进一步的情况......