读书人

用代码实现选择文字的有关问题

发布时间: 2012-04-14 17:14:21 作者: rapoo

用代码实现选择文字的问题
大虾们好,

本小虾用以下代码模拟按键,打算实现一段文字的选择,但是组合键无效,

把鼠标(光标)点击到 console 上某段文字后面,

执行如下代码

import java.awt.Robot;

robot = new Robot();
robot.keyPress(16) // shift
robot.keyPress(36) // home
robot.keyRelease(36) // home
robot.keyRelease(16) // shift

//Page Up, Page Down, 箭头等方式也不起作用,

注: 通过手来按的话,是可以选择到文字的

结果只看到光标移动,没有见到文字被选择

哪位大虾指导一下,不盛感激。


[解决办法]
应该用事件监听来处理
可以在KeyListner的KeyPressed事件里设置一个成员变量表示某个key被按下,KeyReleased事件取消成员变量的状态,然后再MouseMotionListener的mouseMoved事件中,结合该成员变量的状态来处理

[解决办法]
看到有人说要加个Delay,不知道灵不灵:


robot = new Robot();
robot.keyPress(16) // shift
robot.delay(100);
robot.keyPress(36) // home
robot.keyRelease(36) // home
robot.delay(100);
robot.keyRelease(16) // shift

另外,楼主是不是用 KeyEvent.KV_SHIFT 这种常量会更好点点。。。
[解决办法]
支持一下

读书人网 >J2ME开发

热点推荐