当前位置:   article > 正文

JAVA GUI程序交互 示例_java gui 怎么调用后端

java gui 怎么调用后端
     GUI 事件处理机制是建立交互式应用程序的关键技术,其中事件是用户在程序界面上的各种操作,如单击,双击,移动,按下键盘上的键,抬起,关闭窗体,输入文本等, 而各种相应的业务处理由相应的监听器来完成。

下面以一个Swing的文本事件处理机制来体现事件监听器是如何处理用户操作的

  1. import java.awt.EventQueue;
  2. import java.awt.GridLayout;
  3. import java.awt.event.KeyAdapter;
  4. import java.awt.event.KeyEvent;
  5. import javax.swing.JFrame;
  6. import javax.swing.JLabel;
  7. import javax.swing.JPanel;
  8. import javax.swing.JTextField;
  9. import javax.swing.UIManager;
  10. import javax.swing.border.EmptyBorder;
  11. public class EventDemo extends JFrame{
  12. /**
  13. *
  14. */
  15. private static final long serialVersionUID = 8162801603108721756L;
  16. private JPanel contentPane;
  17. private JTextField textField1;
  18. private JTextField textField2;
  19. private JLabel label1;
  20. private JLabel label2;
  21. public static void main(String[] args){
  22. try {
  23. UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");// 设置程序外观的风格
  24. } catch (Throwable e) {
  25. // TODO: handle exception
  26. e.printStackTrace();
  27. }
  28. EventQueue.invokeLater(new Runnable(){
  29. @Override
  30. public void run() {
  31. // TODO Auto-generated method stub
  32. try {
  33. EventDemo frame = new EventDemo();// 设置窗体
  34. frame.setVisible(true);// 设置可见
  35. } catch (Exception e) {
  36. // TODO: handle exception
  37. e.printStackTrace();
  38. }
  39. }
  40. });
  41. }
  42. public EventDemo(){
  43. setTitle("监听文本输入事件");
  44. setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  45. setBounds(100, 100, 250, 100);
  46. contentPane = new JPanel();// 创建全局内容面板
  47. contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));// 设置边框大小
  48. setContentPane(contentPane);// 应用全局内容面板
  49. contentPane.setLayout(new GridLayout(2,1,5,5));// 为内容面板使用网格布局
  50. JPanel pannel1 = new JPanel();// 新建面板来组织标签
  51. contentPane.add(pannel1);// 添加一号内容面板
  52. label1 = new JLabel("第一个文本框");// 一号面板标签
  53. pannel1.add(label1);
  54. textField1 = new JTextField();// 一号内容面板文本框
  55. // 一号 文本框添加按键释放事件监听
  56. textField1.addKeyListener(new KeyAdapter() {
  57. @Override
  58. public void keyReleased(KeyEvent e){
  59. do_textField1_keyRelease(e);
  60. }
  61. });
  62. pannel1.add(textField1);// 应用文本框
  63. textField1.setColumns(18);// 将文本框设置成18列
  64. JPanel panel2 = new JPanel();
  65. contentPane.add(panel2);
  66. label2 = new JLabel("第二个文本框");
  67. panel2.add(label2);
  68. textField2 = new JTextField();
  69. panel2.add(textField2);
  70. textField2.setColumns(18);
  71. }
  72. protected void do_textField1_keyRelease(KeyEvent e) {
  73. // TODO Auto-generated method stub
  74. String text = textField1.getText();// 获得第一个文本框的文本内容
  75. textField2.setText(text);// 将获取的文本内容显示在第二个文本框内
  76. }
  77. }

运行结果如下:


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/931428
推荐阅读
相关标签
  

闽ICP备14008679号