关于JTextArea焦点的问题

sqzydsl 2008-03-23 07:42:50
我的一界面里有两个JTextArea,我想让光标在那个JTextArea里面,就对其操作,例如我复制一个字符串,把光标放在那个位置,就在那粘贴,就是想获取焦点所在的组件,请帮忙一下
...全文
417 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
kanebluba 2008-03-24
  • 打赏
  • 举报
回复
2楼的匿名类用得不错,学习了
sqzydsl 2008-03-24
  • 打赏
  • 举报
回复
我想要的是如何判断焦点所在的那个组件,例如,如果在jtf1,按钮事件就对jtf1进行操作,请帮忙
syz720 2008-03-24
  • 打赏
  • 举报
回复
有学习了点东西:{使用FocusAdapter,只需要实现“失去”或者“获得”,任意一个方法就可以了!而使用FocusListener,必须同时实现这两个方法}
sqzydsl 2008-03-24
  • 打赏
  • 举报
回复
多谢,我想问一下就是想用按钮粘贴已复制的数据,使用按钮事件,在焦点所在的JTextField中进行操作,怎么样处理这两个不同的对象,使用FocusLister好象不行,无法使用按钮
kanebluba 2008-03-24
  • 打赏
  • 举报
回复
不过调用listen函数下的监听函数怎么触发?能再贴段代码吗?
龙四 2008-03-23
  • 打赏
  • 举报
回复
grabFocus();呢?
numb1126 2008-03-23
  • 打赏
  • 举报
回复
这里要说明一下,使用FocusAdapter,只需要实现“失去”或者“获得”,任意一个方法就可以了!而使用FocusListener,必须同时实现这两个方法。
其实,也可以不一一为每一个控件都添加监听,只需要为整个窗体添加一个监听,然后在事件监听代码里,使用(强制转换)e.getSource()得到触发事件的那一个部件,然后对其进行你要的操作就可以了。e是FocusEvent的变量名……
numb1126 2008-03-23
  • 打赏
  • 举报
回复
发现这里提问的同志表达能力都有点问题。。。。。。你的意思是不是想表达,哪个area获得焦点,就得到这个area的对象,并对其进行操作?要为他们添加焦点监听事件,具体代码我随便写了点,你试下看看吧。

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class FocusTest extends JFrame{
JTextArea txaA=new JTextArea();
JTextArea txaB=new JTextArea();
//构造函数
public FocusTest(){
this.getContentPane().add(txaA,BorderLayout.NORTH);
this.getContentPane().add(txaB,BorderLayout.SOUTH);
listen();
this.setSize(300,200);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}

public void listen(){
//为A文本域添加焦点侦听器,使用FocusListener作为参数
txaA.addFocusListener(new FocusListener(){
//实现失去焦点方法。
public void focusLost(FocusEvent e){
txaA.setText("我已失去焦点!");
}
//实现得到焦点方法。
public void focusGained(FocusEvent e){
txaA.setText("我已得到焦点!");
txaB.setText("");//清空B
}
});
//为B文本域添加焦点侦听器,使用FocusAdapter作为参数
txaB.addFocusListener(new FocusAdapter(){
public void focusGained(FocusEvent e){
txaB.setText("我已获得焦点!");
}
});
}
public static void main(String[] args){
new FocusTest();
}
}
guofei_gf 2008-03-23
  • 打赏
  • 举报
回复
JTextArea的requestFocus()方法可以获得焦点
至于你说的什么粘贴,我没明白是什么意思
Java 2实用教程(第三版)实验指导与习题解答 清华大学出版社 (编著 耿祥义 张跃平) 实验模版代码 建议使用文档结构图 (选择Word菜单→视图→文档结构图) 上机实践1 初识Java 4 实验1 一个简单的应用程序 4 实验2 一个简单的Java Applet程序 4 实验3 联合编译 5 上机实践2 基本数据类型与控制语句 6 实验1 输出希腊字母表 6 实验2 回文数 6 实验3 猜数字游戏 8 上机实践3 类与对象 9 实验1 三角形、梯形和圆形的类封装 9 实验2 实例成员与类成员 12 实验3 使用package语句与import语句 13 上机实践4 继承与接口 15 实验1 继承 15 实验2 上转型对象 17 实验3 接口回调 18 上机实践5 字符串、时间与数字 19 实验1 String类的常用方法 19 实验2 比较日期的大小 21 实验3 处理大整数 22 上机实践6 组件及事件处理 23 实验1 算术测试 23 实验2 信号灯 25 实验3 布局与日历 28 上机实践7 组件及事件处理2 31 实验1 方程求根 31 实验2 字体对话框 34 实验3 英语单词拼写训练 37 上机实践8 多线程 41 实验1 汉字打字练习 41 实验2 旋转的行星 43 实验3 双线程接力 47 上机实践9 输入输出流 50 实验1 学读汉字 50 实验2 统计英文单词字 53 实验2 读取Zip文件 56 上机实践10 Java 中的网络编程 57 实验1 读取服务器端文件 57 实验2 使用套接字读取服务器端对象 59 实验3 基于UDP的图像传输 62 上机实践11 数据结构 66 实验1 扫雷小游戏 66 实验2 排序与查找 70 实验3 使用TreeSet排序 72 上机实践12 java Swing 74 实验1 JLayeredPane分层窗格 74 实验2 使用表格显示日历 75 实验3 多文档界面(MDI) 78 上机实践1 初识Java 实验1 一个简单的应用程序 2.模板代码 Hello.java package 实验一; public class Hello { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("你好,很高兴学习Java"); //命令行窗口输出"你好,很高兴学习Java" A a=new A(); a.fA(); } } class A { void fA() {System.out.println("we are student"); } } 实验2 一个简单的Java Applet程序 2.模板代码 FirstApplet.java import java.applet.*; import java.awt.*; public class FirstApplet extends Applet { public void paint(Graphics g) { g.setColor(Color.blue); g.drawString("这是一个Java Applet 程序",10,30);//在Java Applet中绘制一行文字:“这是一个Java Applet 程序” g.setColor(Color.red); g.setFont(new Font("宋体",Font.BOLD,36)); g.drawString("我改变了字体",20,50);//在Java Applet中绘制一行文字:“我改变了字体” } }实验3 联合编译 2.模板代码 public class MainClass { public static void main (String args[ ]) { System.out.println("你好,只需编译我") ; //命令行窗口输出"你好,只需编译我" A a=new A(); a.fA(); B b=new B(); b.fB(); } } public class A { void fA() {

62,614

社区成员

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

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