关于记事本查找显示的问题

wslzxql 2010-02-23 11:41:30
我用的是java的awt写的记事本,在实现查找时,怎么将记事本的文本区域里找到的字符串选中,我在处理对话框的查找按钮事件里用了text.select("start","end"),本来想的是点一下"查找"text里的字符就会被选中,但是为什么只有在关闭了对话框时text里的才能被选择.怎么做?????麻烦有知道的告诉我一下,谢谢!
...全文
199 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jie8171256 2011-06-17
  • 打赏
  • 举报
回复
LZ,查找代码有木有,求指教...
wslzxql 2010-02-23
  • 打赏
  • 举报
回复
我用了text(文本区域).requestFocus();还是不能啊:
下面是我的部份代码向上查找的:edit:处理编辑的一个类,jsb:是一个frame(记事本框架),text:记事本里的文本区域,
s1:查找的字符串
int n=edit.this.jsb.text.getCaretPosition();

int c=edit.this.jsb.text.getText().lastIndexOf(s1, n);

edit.this.jsb.text.append("新字符");
//edit.this.jsb.text.setSelectionStart(c);
//edit.this.jsb.text.setSelectionEnd(s1.length()+c);
edit.this.jsb.text.requestFocus();
edit.this.jsb.text.select(c, c+s1.length());
jafapple 2010-02-23
  • 打赏
  • 举报
回复
焦点问题。要聚焦到你要选中的控件。查查API,看看哪个方法
ZRBRZB 2010-02-23
  • 打赏
  • 举报
回复
引用 5 楼 wslzxql 的回复:
我用了dialog.setModal(false)还是不行(初如时设的是模式的),如果在最开始初始化对话框时就可以了,为什么在后面不能改呢

后面也行,不过必须在dialog.setModal(false)之后再让对话框可见dialog.setVisable(true)。呵呵试试吧。
wslzxql 2010-02-23
  • 打赏
  • 举报
回复
我用了dialog.setModal(false)还是不行(初如时设的是模式的),如果在最开始初始化对话框时就可以了,为什么在后面不能改呢
jafapple 2010-02-23
  • 打赏
  • 举报
回复
引用 3 楼 zrbrzb 的回复:
把你的对话框设成非模式的就行了,dialog.setModal(false)


嗯, 如果你把对话框设置成模式的话,那就不行了, 赶紧看看是不是这样子。 查找时这样子做是不合理
ZRBRZB 2010-02-23
  • 打赏
  • 举报
回复
把你的对话框设成非模式的就行了,dialog.setModal(false)

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧