VB6最大化、最小化命令
Me.WindowState = 0 '0為普通,1為最小,2為最大
當窗口大小化時發生事件
Private Sub Form_Resize() '
如果父窗體被最小化發生事件
If Form1.WindowState = vbMinimized Then
★文本框自動剔除常用符號及空格,只保留漢字及數字的VB代碼
'數字0-9 的Ascii碼是 48-57
'字母A-Z 的Ascii碼是 65-90 小寫字母是 97-122 (下面代碼是使用Ucase函數轉為大寫,所以我97-122從缺)
'漢字 16進制區間 B0A1-F7FE B=66 F=70(下面代碼是使用16進制碼的第一位,其它英文字,數字與符號的16進制第一碼不會在B-F之間)
'添加 Command1
Dim i%, h$, aa$, bb$
Private Sub Command1_Click()
aa = "科!@#杰!@#¥在@!@#@線"
bb = ""
For i = 1 To Len(aa)
h = Hex(Asc(Mid(aa, i, 1)))
If (Asc(Left(h, 1)) >= 66 And Asc(Left(h, 1)) <= 70) Or (Asc(Mid(UCase(aa), i, 1)) >= 65 And Asc(Mid(UCase(aa), i, 1)) <= 90) Or (Asc(Mid(UCase(aa), i, 1)) >= 48 And Asc(Mid(UCase(aa), i, 1)) <= 57) Then
bb = bb & Mid(aa, i, 1)
End If
Next i
MsgBox bb
End Sub
VB6的文本框只能輸入數字和VB只能輸入一小小數點的方法
Private Sub Text1_KeyPress ( KeyAscii As Integer )
If KeyAscii > = Asc ( "0" ) And KeyAscii < = Asc ( "9" ) Or KeyAscii = 8 Or KeyAscii = Asc ( "." ) Then
If KeyAscii = Asc ( "." ) And InStr ( 1, Text1.Text, ".", vbTextCompare ) > 0 Then
KeyAscii = 0
End If
If Text1.SelStart > = Len ( Text1.Text ) - 2 And _
InStr ( 1, Text1.Text, ".", vbTextCompare ) > 0 And _
Len ( Text1.Text ) - InstrRev ( Text1.Text, ".", Len ( Text1.Text ) , vbTextCompare ) > = 2 And _
KeyAscii <> 8 Then
KeyAscii = 0
End If
Else
KeyAscii = 0
End If
End Sub
更強大更實用的限制文本框只能輸入特定字符的方法
調用方法
http://pan.baidu.com/share/link?shareid=214382&uk=1711549925
★VB文本框保留小數點后3位
x = Text2.Text
Text1.Text = Format(x, "0.000")
★vb窗口置頂代碼
Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Const SWP_NOMOVE = &H2 '不更動目前視窗位置
Const SWP_NOSIZE = &H1 '不更動目前視窗大小
Const HWND_TOPMOST = -1 '設定為最上層
Const HWND_NOTOPMOST = -2 '取消最上層設定
Const FLAGS = SWP_NOMOVE Or SWP_NOSIZE
Private Sub Form_Load()
If App.PrevInstance = True Then End '防止程序重復運行
SetWindowPos Me.hwnd, HWND_TOPMOST, 0, 0, 0, 0, FLAGS '窗口置頂
End Sub
★visual Basic 6 如何給窗體窗口加上透明度
'窗口透明度聲明開始
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function SetLayeredWindowAttributes Lib "user32" (ByVal hwnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long
Private Const WS_EX_LAYERED = &H80000
Private Const GWL_EXSTYLE = (-20)
Private Const LWA_ALPHA = &H2
'窗口透明度聲明結束
'窗體透明度開始
Private Sub Form_Activate()
On Error Resume Next
For i = 0 To 200 Step 5 '0-200是窗體的透明度.從0開始到150.漸漸出現窗體.步長為5
SetLayeredWindowAttributes Me.hwnd, 0, i, LWA_ALPHA
DoEvents
Next i
End Sub '窗體透明度結束