java中怎么获取一个jpanel上的某个组件对象呢,比如我想取得这个panel上的一个按钮并把它设置成不可点击
1个回答
展开全部
控制按钮的实例
比如:
JButton button = new JButton ();
JPanel panel = new JPanel();
panel.add(button );
button.setEnabled(false);
这样按钮就是不可点击的了。
如果你是
panel.add(new JButton ());
这样就麻烦了,虽然你可以在panel里取到你添加的所有组件,但你还要判断是那一个按钮。
如果是这样,你还是改成第一种那样,方便。
比如:
JButton button = new JButton ();
JPanel panel = new JPanel();
panel.add(button );
button.setEnabled(false);
这样按钮就是不可点击的了。
如果你是
panel.add(new JButton ());
这样就麻烦了,虽然你可以在panel里取到你添加的所有组件,但你还要判断是那一个按钮。
如果是这样,你还是改成第一种那样,方便。
追问
我正是想知道如何取得panel里面的组件。。。 求教啊
追答
这样啊
那你看一下下边的代码吧。这样可以取出
JPanel 里所添加的控件。
Component 是所有控件的基类。
看看取出的是不是你所要的对象类型 再进行强转,
总之,这样的做法挺麻烦的。
JPanel panel = new JPanel();
int count = panel.getComponentCount();
for (int i = 0; i < count; i++) {
Component comp = panel.getComponent(i);
if(comp instanceof JButton){
JButton btn = (JButton)comp;
btn.setEnabled(false);
}
if(comp instanceof JTextField){
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询