歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Java GUI之事件監聽與處理的匿名類實現方法

Java GUI之事件監聽與處理的匿名類實現方法

日期:2017/3/1 10:47:47   编辑:Linux編程

Java GUI之事件監聽與處理的匿名類實現方法:

  1. package com.sinosuperman.driver;
  2. import java.awt.Dimension;
  3. import java.awt.FlowLayout;
  4. import java.awt.Toolkit;
  5. import java.awt.event.ActionEvent;
  6. import java.awt.event.ActionListener;
  7. import javax.swing.JButton;
  8. import javax.swing.JFrame;
  9. import javax.swing.JOptionPane;
  10. import javax.swing.JPanel;
  11. public class MainBench {
  12. public static void main(String[] args) {
  13. JFrame frame = new MyFrame();
  14. }
  15. }
  16. class MyFrame extends JFrame {
  17. private static final long serialVersionUID = 1L;
  18. Toolkit tk = Toolkit.getDefaultToolkit();
  19. Dimension d = tk.getScreenSize();
  20. JPanel panel;
  21. public MyFrame() {
  22. panel = new MyPanel();
  23. this.add(panel);
  24. this.setSize((int) d.getWidth() / 2, (int) d.getHeight() / 2);
  25. this.setLocation((int) (d.getWidth() - this.getWidth()) / 2, (int) (d.getHeight() - this.getHeight()) / 2);
  26. this.setResizable(false);
  27. this.setVisible(true);
  28. }
  29. }
  30. class MyPanel extends JPanel {
  31. private static final long serialVersionUID = 5263963243638550398L;
  32. JButton okBtn;
  33. JButton exitBtn;
  34. public MyPanel() {
  35. this.setLayout(new FlowLayout(FlowLayout.CENTER));
  36. okBtn = new JButton("OK");
  37. exitBtn = new JButton("Exit");
  38. okBtn.addActionListener(new ActionListener() {
  39. public void actionPerformed(ActionEvent e) {
  40. JOptionPane.showConfirmDialog(null, "Are you sure?");
  41. }
  42. });
  43. exitBtn.addActionListener(new ActionListener() {
  44. public void actionPerformed(ActionEvent e) {
  45. int result = JOptionPane.showConfirmDialog(null, "Are you sure to exit?");
  46. if (result == JOptionPane.YES_OPTION) {
  47. System.exit(0);
  48. }
  49. }
  50. });
  51. this.add(okBtn);
  52. this.add(exitBtn);
  53. }
  54. }

Copyright © Linux教程網 All Rights Reserved