+ -
当前位置:首页 → 问答吧 → SendMessage a2, EM_REPLACESEL, 0, ByVal 值

SendMessage a2, EM_REPLACESEL, 0, ByVal 值

时间:2011-07-25

来源:互联网

我想在另外应用程序上自动发送消息,发送前能先清除另外程序上文本框的值吗?

SendMessage a2, EM_REPLACESEL, 0, ByVal ttt '向该句柄(文本框)发送 ttt的值

这句语句在发送前,能不能先清除,不清除总是累加上去了,郁闷啊!

作者: cixihpf   发布时间: 2011-07-25

先用EM_SETSEL(&HB1=177)进行全部选中,然后使用进行替换。说明如下:
MSDN:
EM_SETSEL(&HB1=177), 起点,终点 设置编辑控件中文本选定内容范围(或设置光标位置),该范围被反相显示,用于为复制、替换、粘贴、剪切、删除等编辑功能指定范围,光标将被移至指定的终点后面。还可使用指定相同起点和终点来移动光标而不是选定范围。当指定的起点等于0和终点等于-1时,文本全部被选中,此法常用在清空编辑控件。当指定的起点等于-2和终点等于-1时,全文均不选,光标移至文本未端,此法常用在文本未端追加内容。注意:当控件没有输入焦点时,本操作将会失败,一般在执行本操作前都应调用SetFocus先取得输入焦点。

作者: BestBadGod   发布时间: 2011-07-25