如何用java实现下拉菜单

Python016

如何用java实现下拉菜单,第1张

//核心代码

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()

你可以给大菜单一个BOOL

bL变量,再给要选择的小菜单一个BOOL

bs变量,

如果bl

==

TRUE

&&

bs

==

TRUE,那就是点击了,如果bl

==

TRUE

&&

bs

==

FALSE

,就是没有点击。

或者你试试这个:给想监视的菜单添加ON_UPDATE_COMMAND_UI命令,如果它被点击了,则会有一些操作在这里执行