NI LabVIEW,CVI,数据采集等产品讨论区

取消
显示结果 
搜索替代 
您的意思是: 

string control 限定

我的前面板需要对一string控件进行限定,只能输入0到9,A到F的数,怎样才能办到?
注:为了使显示符合要求,中间允许有空格,但我在运用时,有没有命令把两边和中间的空格都拿掉?
谢谢
0 项奖励
1 条消息(共 7 条)
5,622 次查看

选中String Control,右击,在弹出的快捷菜单中,点击Hex Display。这时,该输入控件只接受16进制的输入。

处理时,得到的就是一段16进制的Buffer。如果是接口通讯内容,你可以直接将其发送。如果作为某种数据输入,你可以使用String/Number Conversion中的 Hexadecimal String To Number方便的处理。

 

Message Edited by hunt978 on 10-08-2009 06:42 AM
0 项奖励
2 条消息(共 7 条)
5,609 次查看

谢谢,如果要确操作者输入固定长度的16进制数,比如只能输入4个字节的,超过四个字节,输入无效,少于四个字节,左侧全部补上0,怎样才能做到,谢谢

0 项奖励
3 条消息(共 7 条)
5,595 次查看

4个字节的16进制也就是无符号型16位整数。昨天试验的时候我的LabVIEW中的Numeric Control不接收16进制的输入,所以只能用String Control的Hex Display来代替。今天又能用了。不好意思~~~

 

右击Numeric Control选择快捷菜单的Display Format...在弹出的对话框中的选择HexFormat,稍微配置一下,然后就可以了。

 

如果Numeric Control不能用,只能用String Control。采用事件触发的方式,仍然是HexDisplay,配置String Control的Mouse Leave事件,检查String的长度,或者使用String/ String Subset,截取从Offset开始的Length=4就可以了。然后,再将子字符串输入该StringControl的属性节点Value中。

 

 

Message Edited by hunt978 on 10-08-2009 08:21 PM
0 项奖励
4 条消息(共 7 条)
5,581 次查看

This VI trims String In (Hex) to Four (4) Bytes and Left-Padding with 0x00 if less than Four (4) Bytes.

 

It could be better... for your reference.

Message Edited by ian fung on 10-09-2009 03:21 PM
Ian F
Since LabVIEW 5.1... 7.1.1... 2009, 2010, 2014
依恩与LabVIEW
LVVILIB.blogspot.com
0 项奖励
5 条消息(共 7 条)
5,572 次查看

谢谢 ian fung,你是马来西亚华人?有时间喝茶,我的电话91204219,

0 项奖励
6 条消息(共 7 条)
5,540 次查看
Yes. So, you are in Sg? Just sms you.
Ian F
Since LabVIEW 5.1... 7.1.1... 2009, 2010, 2014
依恩与LabVIEW
LVVILIB.blogspot.com
0 项奖励
7 条消息(共 7 条)
5,534 次查看