自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(284)
  • 收藏
  • 关注

ubuntu 12.04系统托盘不显示ibus输入法图标的解决方法

很简单,在终端运行下述命令,然后注销并重新登录即可。gconftool --type boolean -s /desktop/ibus/panel/show_icon_on_systray truegconftool --type boolean -s /desktop/ibus/panel/show truegsettings set com.canonical.Unity.Panel ...

2012-09-15 21:15:00 150

基本文本组件(一)

第14章探讨了Swing组件集合的JSpinner所提供的动态输入选择控件。在本章中,我们将会了解Swing基本文本组件的基本功能。更为高级的文本组件将会下一章中进行探讨。Swing组件集合包含五个文本组件。他们共享一个共同的父类,JTextComponent,其中定义了所有的文本组件的更同行为。JTextComponent的直接子类是JTextField,JTextArea以及JEditor...

2012-09-01 19:39:00 364

Spinner Model Controls(三)

14.4 JSpinner编辑器对于每一个JSpinner可用的模型,都有一个附属支持的JSpinner内联类可用。在其中模型允许我们控制对于组件哪些可以选择,微调编辑器允许我们控制如何显示与编辑每一个可选中的值。14.4.1 JSpinner.DefaultEditor类JSpinner的setEditor()方法允许我们使得任意的JComponent作为JSpiner的编辑顺。虽然我们一...

2012-07-10 19:37:00 149

Spinner Model Controls(二)

14.2 SpinnerModel接口到目前为止,我们已经了解了如何与主JSpinner类交互。SpinnerModel接口是组件的数据模型。SpinnerModel的定义如下:public interface SpinnerModel { // Properties public Object getValue(); public void setValue(Object);...

2012-07-10 19:33:00 136

Spinner Model Controls(一)

在前一章中,我们了解了如何使用基本的列表组件:JList与JComboBox。在本章中,我们将会开始探讨JDK 1.4版本所引入的JSpinner组件。14.1 JSpinner类JSpinner的作用类似于JList或是JComboBox组件与JFormattedTextField的结合。在JList与JComboBox控件中,用户可以由一个预定义的值集合中选择输入。JSpinner允许这种...

2012-07-10 19:19:00 146

List Model Controls(三)

13.3 JComboBox类Swing组件集合的JComboBox组件是一个多部分组件,允许用户借助于下拉列表由一个预定义的选项集合中进行选择。在其基本配置中,JComboBox类似于JLabel来显示当前的用户选择。嵌入在JLabel中的一个包含在JList控件中选择的弹出菜单。当所需要选项不可用时,JComboBox可以使用JTextField来输入新的选项。当需要时,JList部分会自被...

2012-07-01 10:01:00 123

List Model Controls(二)

13.2 JList类JList组件是用于由一个选项集合中选择一个或多个项目的基本Swing组件。我们向用户展示选项列表,依据于组件的选择模式,用户可以选择一个或多个。三个关键元素及其实现定义了JList结构:用于存储JList数据的数据模型,由ListModel接口定义。用于绘制JList的单元渲染器,由ListCellRenderer接口描述。用于选择JList元素的选择模式,由L...

2012-05-24 19:22:00 160

List Model Controls(一)

12章探讨了支持滚动与输入或是显示某些边界范围值的边界范围组件。在本章中,我们将会探讨表示选项列表的两个选择控件:JList与JComboBox。这两个组件之间的主要区别在于JList组件支持多项选择,而JComboBox不支持。同时,JComboBox允许用户提供不在可用选项中的选项。 13.1 ListModel接口图13-1显示了在本章中我们将要探讨的两个控件。这两个组件之间所共享...

2012-05-03 19:15:00 116

Bounded Range Components(二)

12.4 JSlider类尽管JScrollBar对于屏幕滚动区域十分有用,但是他并不适用于使得用户在一个范围内进行输入。对于这个目的,Swing提供了JSlider组件。除了提供了类似JScrollBar组件所提供的可拖动滑块以外,JSlider同时提供了可视化的标记以及标签来辅助显示当前的设置并且选择新的设置。图12-5显示了几个JSlider组件的示例。JSlider是由几部分组成...

2012-04-27 18:53:00 138

Bounded Range Components(一)

在前面的章节中,我们了解了当在屏幕没有足够的空间显示完整的组件时,JScrollPane如何提供了一个可滚动的区域。Swing同时提供了其他的一些支持某种滚动类型或是边界范围值显示的组件。这些可用的组件有JScrollBar,JSlider,JProgressBar,以及更为有限角度的JTextField。这些组件共享BoundedRangeModel作为他们的数据模型。Swing类所提供的这种数...

2012-04-26 19:10:00 107

高级Swing容器(三)

11.5 JViewport类JViewport很少在JScrollPane之外使用。通常情况下他位于JScrollPane的中间并且使用ViewportLayout管理器来响应在小空间内显示大Component的定位请求。除了位于JScrollPane的中间以外,JViewport也可以用于JScrollPane的行头与列头。11.5.1 创建JViewportJViewport只有一个无...

2012-04-22 18:44:00 81

高级Swing容器(二)

11.3 JTabbedPane类JTabbedPane类表示曾经流行的属性页来支持在一个窗口中多个容器的输入或输出,其中每次只显示一个面板。使用JTabbedPane类似于使用CardLayout管理器,所不同的是添加到修改内建卡片的支持。然而CardLayout是一个LayoutManager,而JTabbedPane是一个完全功能的Container。如果我们不熟悉属性页,标签对话框或是标...

2012-04-22 18:39:00 134

高级Swing容器(一)

第10章探讨了AWT与Swing中的布局管理器。在本章中,我们将会了解一些构建在这些布局管理器之上的容器以及其他的一些无需布局管理器的容器。我们的探讨由Box类开始,我们将会发现使用BoxLayout管理器来创建一个单行或单列组件的最好方法。接下来我们会了解JSplitPane容器,他类似于其中只有两个组件的特殊的Box。JSplitPane提供了一个分隔栏,用户可以拖动这个分隔栏来调整组件的大...

2012-04-13 18:51:00 118

布局管理器(二)

10.7 CardLayout类CardLayout布局管理器与其他的布局管理器十分不同。其他的布局管理器尝试一次显示容器中的所有组件,而CardLayout一次只显示一个组件。这个组件可以是一个组件或是一个容器,而后者会让我们看到布局在基于嵌入容器的布局管理器之上的多个组件。现在可以使用JTabbedPane组件了(会在下一章描述),CardLayout很少使用。10.8 BoxLayou...

2012-04-11 18:42:00 146

布局管理器(一)

在第9章中,我们了解了Swing组件集合中的各种弹出窗口以及选择器类。在本章中,我们将会了解AWT与Swing布局管理器。然而由于本书关注于Swing组件集合,我们不能仅是简单的使用。我们需要理解AWT与Swing布局管理器。事实上,比起五个Swing布局管理器中的三个,我们更经常使用的是五个AWT布局管理器中的四个。AWT布局管理器是FlowLayout,BorderLayout,GridLa...

2012-04-10 19:12:00 249

弹出窗口与选择器(五)

9.5 JFileChooser类Swing组件集合同时提供了用于选择文件名字与目录的选择器:JFileChooser类。这个选择器替换了原始AWT组件集合中使用FileDialog的需要。类似于其他的Swing选择器组件,JFileChooser并没有自动被放入一个弹出窗口中,但是他可以放在我们程序中用户界面的任何地方。图9-25显示了一个具有Metal观感,Ocean主题的JFileChoo...

2012-03-05 22:52:00 408

Hello Wordpress

http://mylxiaoyi.wordpress.com

2011-12-24 08:38:00 81

弹出窗口与选择器(四)

9.4 JColorChooser类我们可以将JColorChooser认为是一个只可以输入的JOptionPane,其输入域要求我们选择一种颜色。与JOptionPane类似,JColorChooser也仅是位于窗口中的一堆组件,而并不是一准备好用来使用的弹出窗口。图9-18显示在了我们自己的程序窗口中JColorChooser的样子。在顶部是三个可选择的颜色选择面板;在底部是一个预览面板。...

2011-06-12 18:57:00 173

弹出窗口与选择器(三)

9.3 ProgressMonitorInputStream类ProgressMonitorInputStream类表示一个输入流过滤器,这个输入流过滤器使用ProgressMonitor来检测一个输入流的读取。如果读取需要较长的时间完成,则会显示ProgressMonitor,且用户可以选择弹出窗口中的Cancel按钮,从而使得读取被中断并且输入流会抛出一个InterruptedIOExce...

2011-06-11 18:44:00 70

弹出窗口与选择器(二)

9.2 ProgressMonitor类ProgressMonitor类用来报告需要一段时间完成的任务的状态。这个类是一个特殊的Swing类,他并不是一个GUI组件,也不是一个选项面板或是JavaBean组件。相反,当任务的每一部分完成时,我们通知ProgressMonitor。如果任务需要一段相当长的时间来完成,ProgressMonitor会显示一个类似图9-15所示的弹出窗口。 ...

2011-05-19 18:49:00 108

弹出窗口与选择器(一)

在第8章中,我们了解了顶层容器,例如JFrame与JApplet。另外,我们探讨了用来创建弹出窗口来显示信息或是获取用户输入的JDialog类。尽管JDialog类可以工作得很好,Swing组件集合同时提供了一些更为简单的方法来由弹出窗口获取用户输入,我们将会在本章进行探讨。JOptionPane类对于显示信息,获取文本用户输入,或是获取问题答案十分有用。ProgressMonitor与Pro...

2011-05-15 10:30:00 228

Root Pane Container(四)

8.5 JApplet类JApplet类是AWT Applet类的扩展。为了在使用Swing组件的applet中能正确的进行事件处理,我们applet必须继承JApplet,而不是Applet。JApplet的作用与其他的实现了RootPaneContainer接口的高层窗口相同。JApplet与Applet之间一个重要的区别就是默认的布局管理器。因为我们向JApplet的内容面析添加组件...

2011-05-10 13:01:00 83

Root Pane Container(三)

8.3 JWindow类JWindow类与JFrame类类似。他使用JRootPane用于组件管理并且实现了RootPaneContainer接口。他是一个无装饰的顶层窗口。 8.3.1 创建JWindowJWindow类有五个构造函数: public JWindow()JWindow window = new JWindow();public JWindow(Fram...

2011-05-09 12:51:00 77

Root Pane Container(二)

8.2 JFrame类JFrame类是使用JRootPane并且实现了RootPaneContainer接口的Swing高层容器。另外,他使用WindowConstants接口来帮助管理相关操作。8.2.1 创建JFrameJFrame类提供了两个基本构造函数:一个用于不带标题的框架,而另一个用来创建带标题的框架。还有另外两个构造函数使用特定的GraphicsConfiguration...

2011-05-08 17:33:00 70

Root Pane Containers(一)

在第7章中,我们了解使用Swing组件周围的边框。在本章中,我们将会探讨高层Swing容器,并且将会发现与相对应的AWT容器的不同。使用Swing中的高层容器与使用高层AWT容器不同。对于AWT容器,Frame,Window,Dialog以及Applet,我们可以将组件直接添加到容器,并且我们只有一个位置来放置这些组件。在Swing世界中,高层容器,JFrame,JWindow,JDialog...

2011-04-25 19:30:00 234

Swing 边框(二)

7.2 Examining the Predefined Borders现在我们已经描述了边框基础,现在我们来了解一下每一个预定义的特定边框,在某种程度上以复杂性的顺序进行描述。7.2.1 EmptyBorder Class由逻辑上来说,空边框就是在其内部不进行任何绘制的边框。当我们在使用一个通常的AWT容器并且需要覆盖insets()或是getInsets()方法时我们可以使用Emp...

2011-04-24 22:44:00 143

[翻译]核心Swing组件(四)

4.4 Icon接口Icon接口用来将图标与各种组件相关联。一个图标可以是简单的绘画或者是使用ImageIcon类由磁盘所载入的GIF图像。这个接口包含描述尺寸的两个属性以及一个用来绘制图标的方法。 public interface Icon { // Properties public int getIconHeight(); public int getIcon...

2011-03-15 18:19:00 99

[翻译]核心Swing组件(三)

4.3 JLabel类我们要近距离查看的第一个真正的Swing组件就是最简单的JLabel。JLabel用作AWT Label的替换组件,但是所能做的事情更多。AWT Label仅限制为单行文本,JLabel可以是文本,图片,或者是两者都有。文本可以是单行文本也可以是HTML文本。另外,JLabel可以支持不同的允许与禁止的图片。图4-6显示了一些示例JLabel组件。 4.3.1 ...

2011-03-15 12:25:00 93

[翻译]核心Swing组件(二)

4.2 JToolTip类Swing组件支持当光标停留在其上时显示简短的弹出信息的功能。用来显示弹出信息的类就是JToolTip。4.2.1 创建JToolTip调用JComponent的public void setToolTipText(String text)方法可以使得当鼠标停留在一个安装了弹出信息的组件上时自动创建JToolTip实例。我们通常并不直接调用JToolTip构造...

2011-03-14 12:29:00 138

原创 [翻译]核心Swing组件(一)

在第3章,我们简要介绍了JFC/Swing工程组件所用的Model-View-Controller(MVC)模式。在本章中,我们将会开始探讨如何使用许多可用组件中的关键部分。所有的Swing组件都是以JComponent类为起点的。尽管Swing库的某些部分并不以JComponent类为根,但所有的组件在其继承的某些级别上共享JComponent类作为通用父类。JComponent类定义通...

2011-03-05 09:01:50 329

原创 [翻译]MVC体系结构

第2章探讨了如何处理Swing组件的事件生产者与消费者。我们了解了Swing组件的事件处理如何超出原始的AWT组件的事件处理功能。在本章中,我们会进一步深入Swing组件设计,来探讨称之为Model-View-Controller(MVC)的体系地构。3.1 理解MVC流在1980年后首次被引入Smalltalk后,MVC体系结构是第2章所描述的观察者模式的一种特殊形式。MVC的模型部...

2011-03-04 12:22:46 175

原创 [翻译]Swing组件集合的事件处理(六)

2.3 Swing特定的事件处理请记住,Swing组件是构建在AWT库之上的,Swing组件库具有一些改进的功能从而使得事件处理更为简单。功能改进覆盖AWT核心事件处理特性之上,由基本的动作监听到焦点管理。为了简化事件处理,Swing库使用Action接口扩展了原始的ActionListener接口来存储具有事件处理器的可视属性。这使得事件处理器的创建独立于可视化组件。然后,当Acti...

2011-02-26 15:49:08 202

原创 [翻译]Swing组件集合的事件处理(五)

2.2.4 Timer类除了EventQueue的invokeAndWait()与invokeLater()方法外,我们还可以使用Timer类来创建在事件分发线程上执行的动作。Timer提供了一种在预定义的时间之后通知ActionListener的方法。计时器可以重复通知监听吕在,或者是只通知一次。创建计时器对象下面是用于创建在ActionListener调用之间指定毫秒时延的...

2011-02-26 08:30:59 122

原创 [翻译]Swing组件集合的事件处理(四)

 2.2.3  管理监听器列表如果我们正在创建我们自己的组件并且希望这些组件触发事件,我们需要维护一个要通知的监听器列表。如果监听器列表是用于AWT事件的,我们可以使用AWTEventMulticaster类用于列表管理。对于Swing库而言,如果事件并不是一个预定义的AWT事件类型,我们需要自己管理监听器列表。通过使用javax.swing.event包中的EventListenerLi...

2011-02-25 15:14:05 169

原创 [翻译]Swing组件集合的事件处理(三)

2.2.2 使用属性变化监听器作为观察者除了基本的事件委托机制以外,JavaBean引入另一种观察者设计模式的变体,这次是通过属性变化监听器。PropertyChangeListener实现是观察者模式的确切表示。每一个观察者观察Subject的一个属性的变化。当Subject中发生变化时,观察者会被通知新的状态。图2-4显示了与JavaBean库中用于属性变化处理的特定类相关的观察者...

2011-02-24 22:20:03 175

原创 [翻译]Swing组件集合的事件处理(二)

2.2 多线程的Swing事件处理为了提高其效率并降低其复杂性,所有的Swing组件都被设计为非线程安全的。尽管这听起比较恐怖,他只是简单的意味着对Swing组件的所有访问需要由一个单一线程完成--事件分发线程。如果我们并不确定我们位于一个特定的线程中,我们可以使用public static boolean isDispatchThread()方法请求EventQueue类或是通过publ...

2011-02-24 13:53:08 151

原创 [翻译]Swing组件集合的事件处理(一)

在本章中,我们将会详细了解使用Swing组件的一个方面:事件处理。当使用Swing组件集合时,我们可以使用基于委托的事件处理机制,但是我们也可以使用其他的方法来响应用户的动作。在本章中,我们将会探索所有这些事件处理响应机制。我们同时也会了解到Swing是如何管理输入焦点以及控制输入焦点处理的相关技术。当我们探索事件处理功能时,我们将会开始了解一些实际的Swing组件。在本章中,我们将会...

2011-02-24 09:02:28 239

Linux杂记

最近一段时间似乎国内的Debian源不是很好用,自163资助cn99以来,似乎源的更新一直不是很及时,而且在我这里连接速度也不是很快,但是有一个这样的源总归还是一件好事。似乎国内的企业对开源或是自由软件不是很热心,而更多的时候大家只是纯粹的拿来,以满足自己的需求为唯一目的,至于所谓的贡献与反馈似乎从来就没有想过,更不要说实际的行动了。相比而言,163至少还为大家提供了开源服务。一直以来在使...

2009-09-04 23:28:00 80

关于Beginning Linux Programming 3ed

关于<Beginning Linux Programming 3ed>近两年来在我的博客里陆续发的一些关于Linux编程的文章是译自Wrox公司的<Beginning Linux Programming 3ed>一书,在此感谢朋友们的支持。另外需要说明的一点就是,记得07年的冬天我在长沙逛书店的时候似乎看到了这本书的中文译本,所以提醒朋友们,如果觉得这本书对自己有用,可以到书店买中...

2009-08-25 19:00:00 64

进程间通信应用-CD程序

CD数据库程序现在我们可以使用我们在这一章所了解的IPC工具来修改我们的CD数据库程序。我们可以使用三种IPC工具的多种不同组,但是因为我们需要传送的信息很少,直接使用消息队列实现请求的传递是一个很明显的选择。如果我们需要传递的数据量很大,我们可以考虑使用共享内存传递实际的数据,并且使用信号量或是消息来传递一个标记通知其他的进程在共享内存中有数据可用。消息队列接口解决我们了在第...

2009-08-25 18:06:00 108

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除