案例解析:
JTextField设置文本框。并用setBounds设置文本框距离窗口左上角的距离:x,y和窗口大小。
用JButton设置“搜索”按钮,同时用setBounds设置距离和大小。同时对“搜索”按钮设置监听器,
因为鼠标单击是常用鼠标常用方法所以用addActionListener更简洁,接口重写,就一个方法,可以采用lambda表达式。
设置标签 JLabel jl=new JLabel();是为了打印输入在屏幕上文字。获取输入框中的内容 jtf.getText(); 当单击搜索框时,屏幕上会输出“XX是个难得的人才”。
同理对按钮设置键盘监听器,由于回车回车键是keyListener常用方法,所以采用addActionListener
可以采用同鼠标一样的方法,获取文本框的内容,打印到屏幕。或者直接用doClick()调用鼠标单击。代码如下:
public class MyJFrame extends JFrame {
JPanel center =new JPanel();
public MyJFrame()throws IOException {
init();
this.setVisible(true);
}
private void init(){
this.setSize(800,600);
this.setTitle("随机小游戏");
this.setLocationRelativeTo(null);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLayout(null); //设置为空布局
this.setResizable(false);
JLabel jl=new JLabel();
jl.setBounds(10,50,500,300);
JTextField jtf =new JTextField(); //文本框
jtf.setBounds(10,10,150,30);
JButton jb=new JButton("搜索"); //鼠标单击监听器
jb.setBounds(180,10,60,30);
jb.addActionListener(
(ActionListener) ->{
String text =jtf.getText();
jl.setText(text+"是个难得的人才");
});
jtf.addActionListener((ActionEvent e)->{ //常用键enter 用addActionListener
jb.doClick();
});
this.add(jl);
this.add(jtf);
this.add(jb);
}
}
代码运行效果如下: