String[] sg= {"苹果","香蕉","樱桃","山楂"}
JComboBox<String> jcb = new JComboBox<String>(sg)
完整代码
import java.awt.*import javax.swing.*
public class MFrame extends JFrame{
public MFrame() {
String[] sg= {"苹果","香蕉","樱桃","山楂"}
JComboBox<String> jcb = new JComboBox<String>(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()//创建窗口
}
}
1,所谓级联下拉菜单就是动态的下拉菜单,当第一级选中某一个选项是,
第二级会跟着第一级的变化而变化,
比如:当“学院”这一栏选择“信息学院”那么“专业”这一栏只会出现属于信息学院的专业。
2,级联下拉菜单的实现是运用itemStateChanged(ItemEvent
)方法实现,首先在下拉菜单上注册ItemListener监视器,当下拉菜单选中时触发itemStateChanged(ItemEvent
)事件重新给下一级下拉菜单赋值。
public
void
itemStateChanged(ItemEvent
e)
{
if(e.getSource()
==
xueyuan)
{
//
当点击学院下拉框时
try
{
Statement
stat2
=
con.createStatement()
String
sql
=
"select
D_ID
from
xueyuanin
WHERE
D_NAME='"+e.getItem()+"'"
//
获取该学院的代号
ResultSet
rs
=
stat2.executeQuery(sql)
rs.next()
你可以给大菜单一个BOOLbL变量,再给要选择的小菜单一个BOOL
bs变量,
如果bl
==
TRUE
&&
bs
==
TRUE,那就是点击了,如果bl
==
TRUE
&&
bs
==
FALSE
,就是没有点击。
或者你试试这个:给想监视的菜单添加ON_UPDATE_COMMAND_UI命令,如果它被点击了,则会有一些操作在这里执行