Swing组件组合框

Swing 是一个为Java设计的GUI工具包。Swing是JAVA基础类的一部分。Swing包括了图形用户界面(GUI)器件如:文本框,按钮,分隔窗格和表。
Swing提供许多比AWT更好的屏幕显示元素。它们用纯Java写成,所以同Java本身一样可以跨平台运行,这一点不像AWT。它们是JFC的一部分。它们支持可更换的面板和主题(各种操作系统默认的特有主题),然而不是真的使用原生平台提供的设备,而是仅仅在表面上模仿它们。这意味着你可以在任意平台上使用JAVA支持的任意面板。轻量级组件的缺点则是执行速度较慢,优点就是可以在所有平台上采用统一的行为。
下面介绍组Swing组件之组合框:
JComboBox组件用来创建组合框对象。通常,根据组合框是否可编辑的状态,可以将组合框分成两种常见的外观。可编辑状态外观可视为文本框和下拉列表的组合,不可编辑状态的外观可视为按钮和下拉列表的组合。在按钮或文本框的右边有一个带三角符号的下拉按钮,用户可以单击该下拉按钮,便可出现一个内容列表,这也是组合框的得名。组合框通常用于从列表的”多个项目中选择一个”的操作。
JComboBox的构造方法有如下几种:
JComboBox():创建一个默认模型的组合框。
JComboBox(ComboBoxModel aModel):创建一个指定模型的组合框。
JComboBox(Object[] items):创建一个具有数组定义列表内容的组合框。
示例代码如下:

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
@SuppressWarnings("all")
public class ComboBoxFrame extends JFrame {
 private JComboBox faceCombo;
    private JLabel label;
    private static final int DEFAULT_SIZE = 24;
public static void main(String[] args) {
//创建一个显示框
        EventQueue.invokeLater(new Runnable() {
            public void run() {
                try {
                 ComboBoxFrame frame = new ComboBoxFrame();
                    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                    frame.setBounds(100, 100, 450, 300);
                    frame.setVisible(true);
                     } catch (Exception e) {
                    e.printStackTrace();
                        }
            }
        });
    }
    //下拉框设置
    public ComboBoxFrame() {
        label = new JLabel("The quick brown fox jumps over the lazy dog.");
        label.setFont(new Font("Serif",Font.PLAIN,DEFAULT_SIZE));
        add(label,BorderLayout.CENTER);
        //为项列表添加项。仅当 JComboBox 使用可变数据模型时此方法才有效。
        faceCombo = new JComboBox();
        faceCombo.addItem("Serif");
        faceCombo.addItem("SnsSerif");
        faceCombo.addItem("Monospaced");
        faceCombo.addItem("Dialog");
        faceCombo.addItem("DialogInput");
         faceCombo.addActionListener(new ActionListener() {
         //这是接口ActionListener里面定义的一个抽象方法,当拉下按钮按钮,点击下拉列表中的内容会触发这个事件,然后调用编写的事件处理程序。
            public void actionPerformed(ActionEvent e) {
                // TODO Auto-generated method stub
                label.setFont(new Font((String) faceCombo.getItemAt(faceCombo.getSelectedIndex()),Font.PLAIN,DEFAULT_SIZE));
                   }
        });
         JPanel comboJPanel = new JPanel();

        comboJPanel.add(faceCombo);
        add(comboJPanel,BorderLayout.SOUTH);
        pack();
        }
        }

在这里插入图片描述
参考网址:https://www.cnblogs.com/symbol8888/archive/2017/05/02/6781654.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值