作者medoc (街角的子供达 )
看板Visual_Basic
标题Re: [VB6 ] 比对字串中0与1的位置
时间Wed Apr 23 23:54:52 2008
小弟修改程式码
将做法改为使用Mid(string,x,y)
x是第几位元 y是取几位
可以达到当初要求
但...还是想知道是否有办法使用遮罩的方式完成比对工作
以下为修改後可执行之程式码
Option Explicit
Private Sub Form_Load()
MSComm1.CommPort = 1
MSComm1.Settings = "9600,n,8,1"
MSComm1.RTSEnable = True
End Sub
Private Sub cndSend_Click()
If Not MSComm1.PortOpen = True Then MSComm1.PortOpen = True
MSComm1.Output = "b"
Timer1.Interval = 500
Timer1.Enabled = True
End Sub
Private Sub cmdClose_Click()
MSComm1.PortOpen = False
End Sub
Private Sub Timer1_Timer()
txtResponse.Text = MSComm1.Input
Dim i As Integer
For i = 1 To 8 Step
If (Mid(txtResponse.Text,i,1) = 1) Then
Shape1(i-1).FillStyle = 1
Else
Shape1(i-1).FillStyle = 0
End If
Next i
Timer1.Enabled = False
End Sub
恳请大家赐教
或者有其他更好的方式可以比对这字串
请指导我
谢谢大家
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.167.161.212
1F:→ MOONRAKER:mscomm.input读出来是1101 而不是13这样的十进位数字? 04/24 02:06
2F:→ medoc:对 他送出来的是00000000这样子 04/24 10:39
3F:→ MOONRAKER:那我看别忙了 XD 这样字串比对绝对比bitmask更简单 04/24 17:57
4F:→ MOONRAKER:因为你若想用bitmask,就要先把字串拆开,然後把各个位 04/24 17:58
5F:→ MOONRAKER:数乘上权数再加起来,最後再mask,都是要拆字串 04/24 17:58