扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
效果图
创新互联专注于遵化企业网站建设,成都响应式网站建设公司,商城网站开发。遵化网站建设公司,为遵化等地区提供建站服务。全流程按需定制,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务
参考代码
import java.awt.event.*;
import java.util.Vector;
import javax.swing.*;
public class Demo extends JFrame implements ActionListener {
JButton btn;
VectorString vector=new VectorString();
JComboBoxString jcb;
public Demo() {
vector.add("公斤");
vector.add("每个");
vector.add("每盒");
JLabel jl = new JLabel("单位");
jcb = new JComboBoxString(vector);//可以传入一个数组或者一个Vector链表,对下拉框进行初始化
btn=new JButton("获取下拉框的文字");
btn.addActionListener(this);
JPanel jp = new JPanel();
jp.add(jl);
jp.add(jcb);
jp.add(btn);
add(jp);
setSize(300, 200);
setLocationRelativeTo(null);
setTitle("下拉框Demo");
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new Demo().setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(this, (String)jcb.getSelectedItem());
}
}
//核心代码
String[] sg= {"苹果","香蕉","樱桃","山楂"};
JComboBoxString jcb = new JComboBoxString(sg);
完整代码
import java.awt.*;
import javax.swing.*;
public class MFrame extends JFrame{
public MFrame() {
String[] sg= {"苹果","香蕉","樱桃","山楂"};
JComboBoxString jcb = new JComboBoxString(sg);
add(jcb);
setLayout(new FlowLayout());//把JFrame设置成流式布局
setTitle("测试");//设置窗口标题
setSize(220, 100);//设置窗口大小
setLocationRelativeTo(null);//设置窗口居中
setDefaultCloseOperation(EXIT_ON_CLOSE);//设置点击关闭退出jvm虚拟机
setVisible(true);//设置窗口可见
}
public static void main(String[] args) {
new MFrame();//创建窗口
}
}
import java.awt.*;
import javax.swing.*;
public class DemoJframe extends JFrame {
private JPanel p1 = new JPanel(new BorderLayout());
private JComboBoxString jcb = new JComboBoxString();
public DemoJframe() {
jcb.insertItemAt("no.1", 0);
jcb.insertItemAt("no.2", 1);
jcb.insertItemAt("no.3", 2);
p1.add(jcb, BorderLayout.NORTH);
this.add(p1);
}
public static void main(String[] args) {
JFrame frame = new DemoJframe();
frame.setTitle("MyFrame");
frame.setSize(300, 300);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
1、单选钮组件
在Swing中使用JRadioButton类来创建单选钮。ButtonGroup类是按钮组,可以使用ButtonGroup类的add()方法 将一组单选钮添加到按钮组中。
setSelected(boolean b)方法:设置单选钮为选中状态。
isSelected()方法:判断单选钮是否选中。
示例:创建单选钮,并设置默认选项。
// 创建单选钮
JRadioButton rdoMan = new JRadioButton("男");
JRadioButton rdoWoman = new JRadioButton("女");
// 创建按钮组
ButtonGroup group = new ButtonGroup();
group.add(rdoMan);
group.add(rdoWoman);
// 设置默认选择
rdoMan.setSelected(true);
2、下拉框组件
在Swing中使用JComboBox类创建下拉框对象。
addItem(E item)方法:用于添加下拉框选项。
getSelectedItem()方法:用于获取被选中的下拉框选项。
示例:创建下拉框,并添加下拉框选项。
// 创建下拉框
JComboBox comboBox = new JComboBox();
// 绑定下拉框选项
String[] strArray = { "学生", "军人", "工人" };
for (String item : strArray)
{
comboBox.addItem(item);
}
3、复选框
在Swing中使用JCheckBox类创建复选框对象。
isSelected()方法:判断复选框是否被选中。
示例:创建复选框。
JCheckBox ckbA = new JCheckBox("足球");
JCheckBox ckbB = new JCheckBox("篮球");
JCheckBox ckbC = new JCheckBox("羽毛球");
4、综合示例
示例:单选钮、下拉框、复选框的使用,如下图:
完整代码:
import java.awt.EventQueue;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JRadioButton;
/**
* Swing中单选钮、下拉框、复选框的使用
* @author pan_junbiao
*
*/
public class TestFrame
{
private JFrame frame;
public static void main(String[] args)
{
EventQueue.invokeLater(new Runnable() {
public void run()
{
try
{
TestFrame window = new TestFrame();
window.frame.setVisible(true);
} catch (Exception e)
{
e.printStackTrace();
}
}
});
}
public TestFrame()
{
initialize();
}
private void initialize()
{
frame = new JFrame();
frame.setBounds(100, 100, 270, 192);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(null);
frame.setLocationRelativeTo(null); // 窗体居中
JLabel label = new JLabel("类型:");
label.setFont(new Font("宋体", Font.PLAIN, 14));
label.setBounds(10, 24, 54, 15);
frame.getContentPane().add(label);
JLabel lblNewLabel = new JLabel("性别:");
lblNewLabel.setFont(new Font("宋体", Font.PLAIN, 14));
lblNewLabel.setBounds(10, 53, 44, 15);
frame.getContentPane().add(lblNewLabel);
JLabel label_1 = new JLabel("爱好:");
label_1.setFont(new Font("宋体", Font.PLAIN, 14));
label_1.setBounds(10, 78, 44, 15);
frame.getContentPane().add(label_1);
// 创建下拉框
JComboBox comboBox = new JComboBox();
// 绑定下拉框选项
String[] strArray = { "学生", "军人", "工人" };
for (String item : strArray)
{
comboBox.addItem(item);
}
comboBox.setFont(new Font("宋体", Font.PLAIN, 14));
comboBox.setBounds(53, 20, 140, 23);
frame.getContentPane().add(comboBox);
// 创建单选钮
JRadioButton rdoMan = new JRadioButton("男");
JRadioButton rdoWoman = new JRadioButton("女");
// 创建按钮组
ButtonGroup group = new ButtonGroup();
group.add(rdoMan);
group.add(rdoWoman);
// 设置默认选择
rdoMan.setSelected(true);
rdoMan.setFont(new Font("宋体", Font.PLAIN, 14));
rdoMan.setBounds(48, 49, 54, 23);
frame.getContentPane().add(rdoMan);
rdoWoman.setFont(new Font("宋体", Font.PLAIN, 14));
rdoWoman.setBounds(104, 49, 54, 23);
frame.getContentPane().add(rdoWoman);
JCheckBox ckbA = new JCheckBox("足球");
ckbA.setFont(new Font("宋体", Font.PLAIN, 14));
ckbA.setBounds(48, 74, 54, 23);
frame.getContentPane().add(ckbA);
JCheckBox ckbB = new JCheckBox("篮球");
ckbB.setFont(new Font("宋体", Font.PLAIN, 14));
ckbB.setBounds(104, 74, 54, 23);
frame.getContentPane().add(ckbB);
JCheckBox ckbC = new JCheckBox("羽毛球");
ckbC.setFont(new Font("宋体", Font.PLAIN, 14));
ckbC.setBounds(163, 74, 71, 23);
frame.getContentPane().add(ckbC);
JButton btnSubmit = new JButton("确定");
btnSubmit.setFont(new Font("宋体", Font.PLAIN, 14));
btnSubmit.setBounds(10, 115, 93, 23);
frame.getContentPane().add(btnSubmit);
JButton btnReset = new JButton("重置");
btnReset.setFont(new Font("宋体", Font.PLAIN, 14));
btnReset.setBounds(141, 115, 93, 23);
frame.getContentPane().add(btnReset);
// 重置按钮事件
btnSubmit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e)
{
String msg = "";
// 获取下拉框选择
String typeStr = comboBox.getSelectedItem().toString();
msg = "类型:" + typeStr;
JOptionPane.showMessageDialog(null, msg, "提示", JOptionPane.INFORMATION_MESSAGE);
// 获取单选钮选项
String sexStr = rdoMan.isSelected() ? "男" : "女";
msg = "性别:" + sexStr;
JOptionPane.showMessageDialog(null, msg, "提示", JOptionPane.INFORMATION_MESSAGE);
// 获取复选框选项
msg = "爱好:";
if (ckbA.isSelected())
{
msg += ckbA.getText() + ";";
}
if (ckbB.isSelected())
{
msg += ckbB.getText() + ";";
}
if (ckbC.isSelected())
{
msg += ckbC.getText() + ";";
}
JOptionPane.showMessageDialog(null, msg, "提示", JOptionPane.INFORMATION_MESSAGE);
}
});
// 重置按钮事件
btnReset.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e)
{
comboBox.setSelectedIndex(0);
rdoMan.setSelected(true);
ckbA.setSelected(false);
ckbB.setSelected(false);
ckbC.setSelected(false);
}
});
}
}
文章知识点与官方知识档案匹配
Java技能树首页概览
88264 人正在系统学习中
打开CSDN,阅读体验更佳
Swing-下拉框、列表框_Jchoi_Tang的博客_swing 下拉框
1、下拉框 选择地区,或者一些单个选项 package com.gui.lesson06; import javafx.scene.control.ComboBox; import javax.swing.*; import java.awt.*; public class TestComboBoxDemo01 extends JFrame { public TestComboBoxDemo01(...
java swing 下拉复选框_Java Swing JCheckBox复选框的实现方法
利用Java Swing绘制下拉框JComboBox
第一步,双击打开MyEclipse开发软件,新建Java类SelectFrame,继承JFrame
第二步,声明一个JPanel和JComboBox,
private JComboBox selectBox = new JComboBox();
private JPanel panel = new JPanel();
第三步,给JComboBox和JPanel设置样式属性
panel.setBounds(150, 150, 400, 300);
panel.setToolTipText("下拉框");
panel.setLayout(new FlowLayout(FlowLayout.LEFT, 6, 6));
panel.setBackground(Color.LIGHT_GRAY);
panel.setVisible(true);
第四步,给JComboBox添加项目
selectBox.addItem("星期一");
selectBox.addItem("星期二");
selectBox.addItem("星期三");
selectBox.addItem("星期四");
selectBox.addItem("星期五");
selectBox.addItem("星期六");
selectBox.addItem("星期日");
selectBox.setVisible(true);
第五步,并将JLabel和JComboBox放入到JPanel上,在main方法内调用构造函数,
panel.add(label);
panel.add(selectBox);
第六步,设置JLabel样式属性
label.setText("星期");
label.setBounds(50, 50, 100, 30);
label.setFont(new Font("微软雅黑", Font.BOLD, 20));
label.setBackground(Color.BLUE);
label.setVisible(true);
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流