我有四个复选框,从复选框 1 到复选框 4。将这四个复选框视为二进制 0000。如果选中复选框 1,则二进制应更改为 1000。其他复选框的方式相同,应设置相应的位。最后,我想要的输出是四位的十六进制等效值。如果未选中任何复选框,则应返回 0 到 F.0。F,当所有复选框都被选中时。
问问题
263 次
1 回答
1
有很多方法。例如,如果它只有 4 位,则将它们单独相加:
Dim intValue As Integer = 0
If CheckBox0.Checked Then intValue += 1
If CheckBox1.Checked Then intValue += 2
If CheckBox2.Checked Then intValue += 4
If CheckBox3.Checked Then intValue += 8
Dim strHex As String = intValue.ToString("x")
如果可能超过 4 个,最好用循环替换中间位。最后一行的 .ToString("x") 给出了十六进制表示的数字。我想这就是你所需要的?
于 2012-09-24T11:42:51.680 回答