Java学习13 GUI程序设计(Swing)

Swing概述

  • Java基础类库,Java Foundation Classes,JFC

    • 用于GUI的类库:AWT,Java 2D,Java accessiblility
  • 重量组件,Heavy-Weight Components

    • AWT:通过对等组件(本地底层平台实现的GUI组件,C/C++)完成具体工作,包括组件绘制和响应。运行速度快;但平台相关性大,开销大
  • 轻量组件,Heavy-Weight Components

    • Swing:100%Java,不存在本地对等组件,通过绘图实现。多平台一致,开销小;但运行相对慢

java中AWT和SWing的区别与联系

Swing典型组件

  • Swing组件根父类javax.swing.JComponent

  • 继承:Object<–Component<–Container<–JComponent

JFrame

  • 继承Frame,实现了javax.swing.WindowConstants接口
    • DO_NOTHING_ON_CLOSE
    • HIDE_ON_CLOSE
    • DISPOSE_ON_CLOSE
    • EXIT_ON_CLOSE

Swing菜单/按钮/工具条

  • 菜单:JMenuBar/JMenu/JMenuItem

    • 菜单快捷键
      • setMnemonic:需要获得焦点
      • setAccelerator:不需要获得焦点
    // 快捷键N
    jMenuItem1.setMnemonic(KeyEvent.VK_N);
    // 快捷键Ctrl+N
    jMenuItem1.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,KeyEvent.CTRL_MASK));
  • 工具条,按钮:JToolBar,JButton,ImageIcon

    • 提示
      • setToolTipText
    // 按钮提示
    jButton1.setToolTipText("按钮");

Swing标准对话框

javax.swing.JOptionPane

  • 错误、警告、确认用户操作
  • 接收用户简单信息
  • 列举简单选项

表格

javax.swing.JTable

javax.swing.JTree

定时器

javax.swing.Timer:用于指定时间延迟后,触发ActionEvent事件,执行处理方法

  • setRepeats()
  • setInitialDelay():如设为0,定时器启动即执行一次
  • start()
  • stop()
  • restart()
// 定时器1秒钟执行myListner监听器方法
Timer t1 = new Timer(1000, myListner);
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值