这个软件是电源控制软件(VB版本)调试时用的一个自己写的小软件,功能很简单就是求若干个十六进制之和的低八位,界面如下:
代码如下:
Option Explicit '使用变量前必须进行声明
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Dim strTxt As String '定义字符串
Dim N_long As Long '定义长整型数,表示字符串的长度
Dim N_number As Long '定义长整型数,表示字符串的长度
Dim N_times As Long '定义长整型数,表示点击的次数
Dim strNoCrLf As String '定义剔除回车换行后的字符串
Private Sub cmdCopy_Click()
Clipboard.Clear '清空剪切板
Clipboard.SetText txtResult.Text '将结果复制给剪切板
cmdCopy.Caption = "已复制"
End Sub
Private Sub cmdCopy_LostFocus()
cmdCopy.Caption = "复制结果"
End Sub
Private Sub Form_Load()
Call txtMain_Change
txtMain.SelStart = N_long '光标位置控制
N_times = 0
End Sub
Private Sub lblDate_Click()
N_times = N_times + 1
If N_times >= 5 Then
MsgBox "恭喜你看到此彩蛋!本软件按格式输入基本没Bug!", vbInformation, "彩蛋!"
N_times = 0
End If
End Sub
Private Sub lblVicrobin_Click()
Call ShellExecute(frmMain.hwnd, "open", "http://weibo.com/vicrobin/", vbNullString, vbNullString, &H0)
End Sub
Private Sub txtMain_Change()
Dim i As Integer, a As Integer, SUM As Long
strTxt = txtMain.Text '将文本框中的字符串取出
strNoCrLf = Replace(strTxt, vbCrLf, "") '剔除回车换行
N_long = Len(strNoCrLf) '剔除回车换行后的长度
N_number = UBound(Split(strNoCrLf, " ")) '计算空格数 空格数加1表示校验数的个数
txtNumber.Text = N_number + 1
For i = 1 To Len(strNoCrLf) Step 3
a = Val("&H" & Mid(strNoCrLf, i, 2))
SUM = SUM + a
Next
If ((SUM And 255) >= 0) And ((SUM And 255) <= 15) Then
txtResult.Text = "0" & Hex(SUM And 255)
Else
txtResult.Text = Hex(SUM And 255)
End If
End Sub
电源控制软件(VB版本)见上一篇博文:
这是一个用于电源控制软件调试的VB小软件,功能是计算十六进制数求和的低八位。通过简洁的界面,用户可以方便地进行校验码的计算。

7520

被折叠的 条评论
为什么被折叠?



