如何利用Java Swing绘制下拉框JComboBox

如何利用Java Swing绘制下拉框JComboBox,第1张

利用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)

用JComboBox xx=new JComboBox()这是下拉列表组件。

xx.addItem("双色球")

xx.addItem("3D")

xx.addItem("七乐彩")

通过这个方法添加菜单。

更加具体的要自己查jdk帮助文档,以后会查文档才是王道

//:ComboBoxText.java

import java.awt.FlowLayout

import java.awt.event.ActionEvent

import java.awt.event.ActionListener

import javax.swing.JComboBox

import javax.swing.JFrame

public class ComboBoxText {

private String[][] xxx = {

{"浙江","杭州","温州","绍兴","舟山",},

{"江苏","南京","无锡","徐州","蒙眬",},

{"上海","闵行区","普陀区","金山区",},

}

private Object[] a(){

Object[] os = new Object[xxx.length]

for(int i=0i<xxx.lengthi++){

os[i]=xxx[i][0]

}

return os

}

private Object[] b(Object a){

for(int i=0i<xxx.lengthi++){

if(xxx[i][0].equals(a)){

Object[] o = new Object[xxx[i].length-1]

for(int j=0j<o.lengthj++)

o[j]=xxx[i][j+1]

return o

}

}

return new Object[]{}

}

public static void main(String[] args) {

final ComboBoxText ct = new ComboBoxText()

final JComboBox ca = new JComboBox(ct.a())

final JComboBox cb = new JComboBox()

ca.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e) {

cb.removeAllItems()

Object selected = ca.getSelectedItem()

Object[] newItems = ct.b(selected)

for(int i=0i<newItems.lengthi++)

cb.addItem(newItems[i])

}

})

ca.setSelectedIndex(-1)

JFrame f = new JFrame()f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)

f.getContentPane().setLayout(new FlowLayout(FlowLayout.LEFT))

f.add(ca)f.add(cb)f.setVisible(true)

f.setSize(200,100)

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11932416.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存