首页
博客
源码
资源
博客
源码
写文章
发布博客
发布资源
登录
X
swing
相关资讯
热门
最新
代码人生
01-01 08:00
代码人生
Swing组件集合的事件处理(五)
Swing组件集合的事件处理(五),2.2.4Timer类除了EventQueue的invokeAndWait()与invokeLater()方法外,我们还可以使用Timer类来创建在事件分发线程上执行的动作。Timer提供了一种在预定义的时间之后通知ActionListener的方法。计时器可以重复通知监听吕在,或者是只通知一次。创建计时器对象下面是用于创建在ActionListener调用之间
69
代码人生
01-01 08:00
代码人生
Swing菜单与工具栏(一)
Swing菜单与工具栏(一),本书的前面两章描述了一些低级的Swing组件。本章将会深入Swing面向菜单的组件。菜单与工具栏通过提供一些可视化的命令选项可以使得我们的程序更为友好。尽管Swing组件可以支持多个按键的命令序列,菜单被设计用来提供使用鼠标的图形化选择,而不是通过键盘。本章将要讨论的菜单组件的使用如下:对于级联菜单,我们可以创建一个JMenu组件,并将其添加到JMenuBar。对于J
68
代码人生
01-01 08:00
代码人生
Swing 边框(一)
Swing 边框(一),Swing组件提供了对组件周围的边框区域进行定制的功能。为了简单,我们可以使用预定义的八个边框,或者是我们可以创建自己的边框。在本章中,我们将会了解如何最好的使用已存在边框以及如何创建我们自己的边框。7.1SomeBasicsonWoringwithBorders边框是带有标准的setBorder()与getBorder()属性方法的JComponent属性。所以,所有的J
64
代码人生
01-01 08:00
代码人生
Swing组件集合的事件处理(二)
Swing组件集合的事件处理(二),2.2多线程的Swing事件处理为了提高其效率并降低其复杂性,所有的Swing组件都被设计为非线程安全的。尽管这听起比较恐怖,他只是简单的意味着对Swing组件的所有访问需要由一个单一线程完成--事件分发线程。如果我们并不确定我们位于一个特定的线程中,我们可以使用publicstaticbooleanisDispatchThread()方法请求EventQueu
62
代码人生
01-01 08:00
代码人生
Swing组件集合的事件处理(二)
Swing组件集合的事件处理(二),2.2多线程的Swing事件处理为了提高其效率并降低其复杂性,所有的Swing组件都被设计为非线程安全的。尽管这听起比较恐怖,他只是简单的意味着对Swing组件的所有访问需要由一个单一线程完成--事件分发线程。如果我们并不确定我们位于一个特定的线程中,我们可以使用publicstaticbooleanisDispatchThread()方法请求EventQueu
62
代码人生
01-01 08:00
代码人生
Swing组件集合的事件处理(四)
Swing组件集合的事件处理(四),2.2.3管理监听器列表如果我们正在创建我们自己的组件并且希望这些组件触发事件,我们需要维护一个要通知的监听器列表。如果监听器列表是用于AWT事件的,我们可以使用AWTEventMulticaster类用于列表管理。对于Swing库而言,如果事件并不是一个预定义的AWT事件类型,我们需要自己管理监听器列表。通过使用javax.swing.event包中的Even
60
代码人生
01-01 08:00
代码人生
Swing组件集合的事件处理(三)
Swing组件集合的事件处理(三),2.2.2使用属性变化监听器作为观察者除了基本的事件委托机制以外,JavaBean引入另一种观察者设计模式的变体,这次是通过属性变化监听器。PropertyChangeListener实现是观察者模式的确切表示。每一个观察者观察Subject的一个属性的变化。当Subject中发生变化时,观察者会被通知新的状态。图2-4显示了与JavaBean库中用于属性变化处
60
代码人生
01-01 08:00
代码人生
swing列表、文本框
swing列表、文本框 3.6列表 下拉框 package com.zishi.lesson06;?import javax.swing.*;import java.awt.*;?public class TestComboboxDemo01 extends JFrame {? public TestComboboxDemo01(){? &nb
59
代码人生
01-01 08:00
代码人生
Swing组件集合的事件处理(四)
Swing组件集合的事件处理(四),2.2.3管理监听器列表如果我们正在创建我们自己的组件并且希望这些组件触发事件,我们需要维护一个要通知的监听器列表。如果监听器列表是用于AWT事件的,我们可以使用AWTEventMulticaster类用于列表管理。对于Swing库而言,如果事件并不是一个预定义的AWT事件类型,我们需要自己管理监听器列表。通过使用javax.swing.event包中的Even
57
代码人生
01-01 08:00
代码人生
Swing 边框(二)
Swing 边框(二),现在我们已经描述了边框基础,现在我们来了解一下每一个预定义的特定边框,在某种程度上以复杂性的顺序进行描述。7.2.1EmptyBorderClass由逻辑上来说,空边框就是在其内部不进行任何绘制的边框。当我们在使用一个通常的AWT容器并且需要覆盖insets()或是getInsets()方法时我们可以使用EmptyBorder。他可以使得我们保留组件周围的额外空间从而略微向
57
«
1
2
3
4
»