?? 16-10-2轉換.frm
字號:
VERSION 5.00
Begin VB.Form Form1
Caption = "數制轉換"
ClientHeight = 2655
ClientLeft = 60
ClientTop = 345
ClientWidth = 9870
LinkTopic = "Form1"
ScaleHeight = 2655
ScaleWidth = 9870
StartUpPosition = 3 '窗口缺省
Begin VB.CommandButton Command2
Caption = "H -> B"
Height = 375
Left = 4320
TabIndex = 5
Top = 1680
Width = 1215
End
Begin VB.CommandButton Command1
Caption = "H -> D"
Height = 375
Left = 4320
TabIndex = 4
Top = 840
Width = 1215
End
Begin VB.TextBox txtbinary2
Height = 375
Left = 5640
TabIndex = 3
Top = 1680
Width = 3735
End
Begin VB.TextBox txthex2
Height = 375
Left = 720
TabIndex = 2
Top = 1680
Width = 3495
End
Begin VB.TextBox txtdec2
Height = 375
Left = 5640
TabIndex = 1
Top = 840
Width = 3735
End
Begin VB.TextBox txthexdec
Height = 375
Left = 720
TabIndex = 0
Top = 840
Width = 3495
End
Begin VB.Label Label4
Caption = "Binary"
Height = 255
Left = 5640
TabIndex = 9
Top = 1320
Width = 2775
End
Begin VB.Label Label3
Caption = "Hex"
Height = 255
Left = 720
TabIndex = 8
Top = 1320
Width = 3015
End
Begin VB.Label Label2
Caption = "Decimal"
Height = 255
Left = 5640
TabIndex = 7
Top = 480
Width = 2655
End
Begin VB.Label Label1
Caption = "Hex"
Height = 255
Left = 720
TabIndex = 6
Top = 480
Width = 2655
End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Private Sub Command1_Click()
txtdec2.Text = CStr(Hex2Dec(txthexdec.Text)) '調用函數過程Hex2Dec
End Sub
Private Sub Command2_Click()
txtbinary2.Text = Hex2Bin(txthex2.Text) '調用函數過程Hex2Bin
End Sub
Function Hex2Bin(InputData As String) As String
Dim i As Integer
For i = 1 To Len(InputData)
Hex2Bin = Hex2Bin & ChH2B(Mid(InputData, i, 1))
Next i
End Function
Function ChH2B(tmp As String) As String
Dim i As Integer, dec As Integer
ChH2B = ""
dec = Val("&h" & tmp)
For i = 1 To 4
ChH2B = CStr(dec Mod 2) & ChH2B
dec = dec \ 2
Next i
End Function
Private Sub txthex2_LostFocus()
Dim i As Integer
txthex2.Text = UCase(txthex2.Text)
For i = 1 To Len(txthex2.Text)
'如果輸入數據有問題,則清空文本框中數據,并重新獲得焦點
If Not IsNum(Mid(txthex2.Text, i, 1)) Then
txthex2.Text = ""
txthex2.SetFocus
Exit Sub
End If
Next i
End Sub
Private Sub txthexdec_LostFocus()
Dim i As Integer
txthexdec.Text = UCase(txthexdec.Text)
For i = 1 To Len(txthexdec.Text)
'如果輸入數據有問題,則清空文本框中數據,并重新獲得焦點
If Not IsNum(Mid(txthexdec.Text, i, 1)) Then
txthexdec.Text = ""
txthexdec.SetFocus
Exit Sub
End If
Next i
End Sub
Private Function IsNum(tmp As String) As Boolean
'判斷每位數據是否是合法的十六進制數據
If IsNumeric(tmp) Or tmp >= "A" And tmp <= "F" Then
IsNum = True
Else
IsNum = False
End If
End Function
'將十六進制數轉換為十進制數的程序如下:
Function Hex2Dec(InputData As String) As Long
'轉換十六進制數為十進制數
Hex2Dec = Val("&h" & InputData)
End Function
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -