龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > JAVA开发 >

Java Swing中的JButton、JComboBox、JList和JColorChooser组件使用案例

时间:2014-10-14 11:06来源:网络整理 作者:网络 点击:
分享到:
这篇文章主要介绍了Java Swing中的按钮(JButton)、组合框(JComboBox)、下拉列表(JList)和颜色选择器(JColorChooser)组件使用案例,需要的朋友可以参考下

Swing 的组件与AWT 组件相似,但又为每一个组件增添了新的方法,并提供了更多的高级组件.

Swing 的基本组件:

1.按钮(JButton):

Swing 中的按钮可以显示图像,并且可以将按钮设置为窗口的默认图标,而且还可以将多个图像指定给一个按钮。

(1).JButton 常用的构造方法。

JButton(String text):按钮上显示字符。
JButton(Icon icon) :按钮上显示图标。
JButton(String text, Icon icon):按钮上既显示图标又显示字符。

(2).常用方法:

b1.setEnabled(false);  //使按钮当前不可用
b1.setToolTipText("..."): //设置按钮提示文本
b1.setMnemonic(KeyEvent.VK_D);// 将b1邦定alt+D键

(3).案例代码:

复制代码 代码如下:

public class JButtonExample3 extends JPanel implements ActionListener { 
 
    protected JButton b1, b2, b3; 
 
    public JButtonExample3() { 
         
        ImageIcon leftButtonIcon = createImageIcon("right.gif"); 
        ImageIcon middleButtonIcon = createImageIcon("middle.gif"); 
        ImageIcon rightButtonIcon = createImageIcon("left.gif"); 
         
        b1 = new JButton("失效中间按钮(D)", leftButtonIcon); 
        b1.setVerticalTextPosition(AbstractButton.CENTER);// 水平中间对齐 
        b1.setHorizontalTextPosition(AbstractButton.LEADING);// 相当于LEFT 
        b1.setMnemonic(KeyEvent.VK_D);// 将b1邦定alt+D键 
        b1.setActionCommand("disable"); 
         
        b2 = new JButton("M中间按钮", middleButtonIcon); 
        b2.setVerticalTextPosition(AbstractButton.BOTTOM); 
        b2.setHorizontalTextPosition(AbstractButton.CENTER); 
        b2.setMnemonic(KeyEvent.VK_M);// 将b2邦定alt+M键 
         
        b3 = new JButton("E激活中间按钮", rightButtonIcon); 
        b3.setMnemonic(KeyEvent.VK_E);// 将b3邦定alt+E键 
        b3.setActionCommand("enable"); 
        b3.setEnabled(false); 
         
        // 给1和3添加事件监听 
        b1.addActionListener(this); 
        b3.addActionListener(this); 
         
        // 设置按钮提示文本 
        b1.setToolTipText("点击这个按钮,将使中间的按钮失效!"); 
        b2.setToolTipText("点击这个按钮,没有任何的事件发生!"); 
        b3.setToolTipText("点击这个按钮,将使中间的按钮有效"); 
         
        // 将按钮添加到JPanel中 
        add(b1); 
        add(b2); 
        add(b3); 
    } 
 
    public void actionPerformed(ActionEvent e) { 
        if ("disable".equals(e.getActionCommand())) { 
            b2.setEnabled(false); 
            b1.setEnabled(false); 
            b3.setEnabled(true); 
        } else { 
            b2.setEnabled(true); 
            b1.setEnabled(true); 
            b3.setEnabled(false); 
        } 
    } 
 
    protected static ImageIcon createImageIcon(String path) { 
        java.net.URL imgURL = JButtonExample3.class.getResource(path); 
        if (imgURL != null) { 
            return new ImageIcon(imgURL); 
        } else { 
            System.err.println("Couldn′t find file: " + path); 
            return null; 
        } 
    } 
 
    public static void main(String[] args) { 
        // 设置使用新的swing界面 
        //提供一个关于新创建的 JFrame 是否应该具有当前外观为其提供的 Window 装饰(如边框、关闭窗口的小部件、标题等等)的提示。 
        JFrame.setDefaultLookAndFeelDecorated(true); 
        // 创建一个窗体 
        JFrame frame = new JFrame("小龙按钮"); 
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
        // 创建一个面板 
        JButtonExample3 newContentPane = new JButtonExample3(); 
        newContentPane.setOpaque(true); 
        frame.setContentPane(newContentPane); 
        // 显示窗体 
        frame.pack(); 
        frame.setLocation(300, 200); 
        frame.setVisible(true); 
    } 

运行截图:

2.组合框(JComboBox):

组合框(下拉列表JComboBox)使用方法及示例详解:

精彩图集

赞助商链接