平时编程比较多,自己总结了不少经验和技巧,这里我从以前的程序里一点点地复制出来给大家分享
1. 限制在文件框里只输入数字,用这样一个过程,把它放在控件的KeyPress事件里
Public Sub LimitInput(KeyAscii As Integer)
If KeyAscii > 57 Then
KeyAscii = 0
Beep
End If
If KeyAscii >= 32 And KeyAscii <= 47 Then
KeyAscii = 0
Beep
End If
End Sub
这个比 if Keyascii<asc("0") or keyascii>asc("9") 好用的多,因为没有过滤掉回车,删除之类的按键.
2.单击选中文本,我们在输入资料的时候经常要修改已经填好的数据,有时候比较长的话还得一个字符一个字符地删,用这个过程只要一单击文件框就自动选中文本框中所有文件,可以直接覆盖写入,把这个过程放在文本框的单击事件中.
Public Sub SelText(TxtBox As Control)
TxtBox.SetFocus
TxtBox.SelStart = 0
TxtBox.SelLength = Len(TxtBox.Text)
End Sub
3.判断文件格式.我在做播放器的时候要智能导入支持的音乐文件/播放列表文件(包括MP3/WMA/AVI/MPEG/M3U等等格式),要能从己获取的文件名中判断是否支持此文件,用这一行:
If InStr(1, "mp3wavmidiasxwmawmvavimpgmmpeg", Trim(Mid(FileName, InStrRev(FileName, ".") + 1))) <> 0
这行能判断FileName是否是支持的音乐文件格式.
4.在处理ID3/ID2为空的文件时,因为得不到音乐文件标题,所以直接用文件的文件名作为音乐标题,但此标题必须去掉扩展名和地址,也就是说只留下光秃秃的文件名,如C:\1\2\3\MyLove.wma 就只留下MyLove,要实现这个功能只用下面这一行:
Left(Mid(FileName, InStrRev(FileName, "\") + 1), InStr(1, Mid(FileName, InStrRev(FileName, "\")), ".") - 2)
5.在给某公司写管理系统时经输入很多配件及型号名称,而这些名称又经常是带些特殊字符的,如×,√,Φ 输入很不方便,有些人甚至都不会输入,怎么办呢?
这里我约定输入*号时自动变成"×",输入&号时自动变成"Φ"
要怎么实现呢?
看代码:
在文本框的KeyPress事件中写入:
if keyascii=asc("*") then keyascii=asc("×")
if keyascii=asc("&") then keyascii=asc("Φ")
6.在填写表单时习惯写完一项就回车,然后焦点自动转到下一项,这要怎么实现呢?
首先你要按顺序给每个控件设置好TABINDEX,然后再在控件的KEYPRESS里写代码
if Keyascii=13 then SendKeys "{tab}"
7.让某一按键失效,其实上面也已经有了,就是在keypress里边写keyascii=0,比如说要过滤小数点,则这样写
if keyascii=asc(".") then keyascii=0
代码太多 暂时找了这么几条 以后有空再补吧,希望对初学者有点帮助.
VB的一些小技巧 字符串处理