Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-模块/函数/VBA

VB常见编程技巧

时 间:2008-01-14 08:37:49
作 者:UMVSOFT整理   ID:16  城市:江阴
摘 要:VB常见编程技巧
正 文:

□ 如何一行程序太长,查阅起来很麻烦,能不能换行?
VB的程序代码是允许换行书写的,只要在每次换行的最后一个字
符加上换行字符“_”就可以了。例如:
Sub PicMove()
Frm.Picture2.Left = Frm.Picture1.Left + _ ’加上换行符
Frm.Picture1.Width
End Sub
□ 如何在设计的时候清空存在的图片?
用鼠标点中该图片,按F4列出其属性窗口,然后再选中Picture
属性,按Del键便可清空图片。

□ Visual Basic 如何注释一段较长程序代码?
VB注释程序代码的符号是“'”,只要在某行程序前面加上
“'”,就可以注释该行程序。但如果程序代码很长的时候,一行
一行地注释令人觉得难以忍受。VB本身提供了这个功能,在主菜
单“视图”选项的“工具栏”下,选中Edit,VB的界面会出现
一排工具按钮,其中的(图片)用于“设置注释块”和“解除注
释块”。

□ 怎么实现鼠标一移上去就出现小提示窗口的功能?
VB 5.0里每个控件都有ToolTipText属性,只要加上一行程序
就可以了。例如:Label1.ToolTipText = "这是提示!"。

□ 如何获得当前软件的运行磁盘目录和命令行参数?
VB里面有个系统对象叫App。App.Path就是当前软件的运行目
录。而命令行参数存放在一个系统变量里面,叫Command。程序语
句如下:
Label1.Caption=App.Path
Label2.Caption=Command$

□ 我想换掉鼠标显示的形状,怎么做?
VB提供的系统控件一般都有MousePointer和MouseIcon属性。
我们可以寻找自己喜欢的*.ICO,*.CUR文件,实现的程序如下:
Screen.MousePointer= 99 ’用户鼠标类型
Screen.MouseIcon=LoadPicture("C:\ABC\1.ICO") ’读取鼠标文件

□ 如何判断一个文件是否存在?
可以通过打开该文件试图读取资料的方法实现,如果文件打开
成功,证明该文件存在;反之,文件就不存在。
Function FileExists(fname$) As Boolean
On Error Resume Next ’设置错误处理
Dim X as Integer

X = FreeFile ’取得一个空闲文件句柄
Open fname$ For Input As X ’试图打开该文件
If Err = 0 Then ’如果打开成功
FileExists = True
Else ’否则
FileExists = False
End If
Close X
End Function

□ 如何设置程序的错误出口?
On Error语句用于程序的错误出口处理。一般的处理方法有两种。
1) 遇到错误跳转到某一行程序去执行,On Error GoTo someline。
例如:
On Error GoTo ERR_LINE
...
Label1.Caption=“正确执行”
ERR_LINE:
...
Label1.Caption=“出错了!”

2) 遇到错误之后忽略当前错误,继续执行,On Error Resume Next。
例如:
3) On Error Resume Next
...
Label1.Caption=“不管对不对都要执行”
...

□ 怎样获得键盘输入和判断敲键的Ascii值?
把窗体的KeyPreview属性设置成True,然后在Form_KeyPress
事件里编写程序代码如下:
Private Sub Form_KeyPress(KeyAscii As Integer)
Me.Caption = Str(KeyAscii)
...
End Sub

□ VB有位操作吗?怎么知道一个字节的某个位的值?
下面是一个字节的异或操作例子:
Private Sub Form_Click()
Dim bitvalue As Byte ’定义字节变量

bitvalue = &H10 ’16进制赋值
bitvalue = bitvalue Xor &H10 ’异或操作XOR
Debug.Print bitvalue ’输出结果
End Sub

□ 我希望窗体一运行就在屏幕的中央,怎么实现?
VB的系统对象Screen记录了当前显示模式的高度和宽度,
可以利用这个值来设置窗体的位置。
Sub CenterForm(frm As Form) ’定义过程
frm.Move (Screen.width - frm.width) \ 2, (Screen.Height - frm.Height) \ 2
End Sub

Private Sub Form_Load()
CenterForm Me ’调用过程
End Sub

□ 很多软件都有鼠标一按下文字框TextBox,就选中所有文字的功能,是怎么实现的?
Sub TextFocus(ctl As Control) ’定义过程
ctl.SelStart = 0
ctl.SelLength = Len(ctl.Text)
End Sub

Private Sub Text1_GotFocus()
TextFocus Text1 ’过程调用
End Sub

□ 如何屏蔽列表框Combo的键盘输入?
Private Sub Combo1_KeyPress(KeyAscii As Integer)
KeyAscii=0
End Sub

□ 如何使一行字符串垂直显示?
’函数:垂直显示字符串
Function RotateString(in_str As String) As String
Dim tmpstr As String
’把每个字符都取出来加上回车换行符号
For i = 1 To Len(in_str)
tmpstr = tmpstr + Mid$(in_str, i, 1) & vbCrLf
Next i
RotateString = tmpstr
End Function

Private Sub Form_Click()
Label1.Caption = RotateString("你知道我在这里吗?")
End Sub

□ 如何定义一个数据结构?
Visual Basic是使用Type ... End Type来实现数据结构的


Access软件网官方交流QQ群 (群号:54525238)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助