haorui658 发表于 2009-12-13 21:00:58

怎么读取控件的文字并判断是中文还是英文呢?

本帖最后由 haorui658 于 2010-1-6 20:46 编辑

怎么读取控件的文字并判断是中文还是英文呢?我知道一个控件的ID,如2334,如果该控件是一个按钮,我怎么知道它的文本是什么?用什么函数?貌似GUIctrlread只能读取自己写的控件文本.

顽固不化 发表于 2009-12-14 08:22:48

ControlGetText
--------------------------------------------------------------------------------

获取指定控件上的文本.


ControlGetText ( "窗口标题", "窗口文本", 控件ID)

haorui658 发表于 2010-1-6 20:46:39

回复 2# 顽固不化


    真是谢谢你

sanmoking 发表于 2010-1-8 09:55:02

不止论坛有搜索功能,chm的帮助文件也有搜索功能的啊。。

awfymwvf 发表于 2010-1-8 10:34:40

没有说怎么判断是中文还是英文啊

haorui658 发表于 2010-1-19 13:05:57

回复 4# sanmoking


    恩 是的 但是在用英文的文档,很多没有搜到

sanmoking 发表于 2010-1-19 13:29:59


Func chzn($txt,$RE = 0);匹配汉字,$re = 0,只返回匹配的第一个汉字词组,$re = 非0,以数组形式返回所有汉字部分
$ch = StringRegExp($txt, '[^\x00-\xff]+', 3);用了正则提取汉字,比如 [<td>23日星期三</td>]可以提取出来[日星期三]
If @Error = 0 Then
IF $RE = 0 Then
Return $ch;返回结果,这个仅仅返回第一个汉字组合,如果相反会所有的请用下面这句,将返回一个数组。
Else
Return $ch;将返回整个数组。
EndIf
Else
Return ""
endif
EndFunc


上面的代码返回指定字符串(对于控件上的文字可以用楼上楼上……的方法得到)是否有中文字符,有的话返回得到的中文字符,没有的话返回空字符串"",

另外检测字符串是否英文,是否数字,是否符号,帮助里都有现成的命令。

StringIsAlNum检查某个字符串是否仅含有字母或数字(文字数字式字符).
StringIsAlpha检查某个字符串是否仅含有字母(文字字符).
StringIsASCII检查某个字符串是否仅含有ASCII码值介于 0x00 到 0x7f (0-127)之间的字符.
StringIsDigit检查某个字符串是否仅含有数字(0-9)字符.



StringIsInt检查某个字符串是否整型数.
StringIsLower检查某个字符串是否仅含有小写字母.
StringIsSpace检查某个字符串是否仅含有"空白符".
StringIsUpper检查某个字符串是否仅含有大写字母.
StringIsXDigit检查某个字符串是否仅含有十六进制字符(0-9, A-F).



这么多命令,怎么都够用了吧?

haorui658 发表于 2010-1-19 21:19:12

问题解决了 依然感谢楼上的回复
页: [1]
查看完整版本: 怎么读取控件的文字并判断是中文还是英文呢?