JAVA JPanel里怎么添加组件?
可以用add添加组件,然后调用JPanel的remove方法,来删除组件。
例如单击某一个组件就移除这个组件,并且添加另外的组件,下面是一个具体的例子:
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class WinTest3
{
public static void main(String[] args)
{
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
frame.setLayout(new FlowLayout());
JPanel panel = new JPanel();
JButton button = new JButton("change");
panel.add(button);
JTextField f = new JTextField(20);
ActionListener listener = new ChangeListener(button,panel,f);
button.addActionListener(listener);//注册监听器
frame.add(panel);
frame.setVisible(true);
}
}
/*监听器,当单击按钮时,移除button按钮,加入text文本框*/
class ChangeListener implements ActionListener
{
JButton button;
JPanel panel;
JTextField text;
public ChangeListener(JButton button, JPanel panel, JTextField text)
{
super();
this.button = button;
this.panel = panel;
this.text = text;
}
@Override
public void actionPerformed(ActionEvent e)
{
if("change".equals(e.getActionCommand()))
{
panel.remove(button);
panel.add(text);
panel.updateUI();
panel.repaint();
}
}
}
备注:需要特别注意的是移除和添加组件之后,记得重画组件。
matlab中button group 和pannel有什么区别?
相同点:
Button Group和Panel都是GUI对象的容器
对象类型均为uipanel
当移动 Button Group和Panel位置时,它们的子对象也随之移动且保持相对位置不变
不同点:
Button Group可以管理Radio Button和Toggle Button对象,且同一个Button Group中的此类子对象只允许一个处于“按下”或“选中”的状态
其他:
若将Radio Button对象单独使用,想要得到多个对象只有一个被“选中”的效果可用以下方法:
function radiobutton1_Callback(hObject,eventdata,handles)
set(handles.radiobutton1,'value',1);
set(handles.radiobutton2,'value',0);
%你想通过radiobutton2实现的操作
... ...
function radiobutton2_Callback(hObject,eventdata,handles)
set(handles.radiobutton1,'value',0);
set(handles.radiobutton2,'value',1);
%你想通过radiobutton1实现的操作
... ...
Java中获得ButtonGroup选项的方法是什么啊?
void add(AbstractButton b) :将按钮添加到组中。 void clearSelection() :清除选中内容,从而没有选择 ButtonGroup 中的任何按钮。 int getButtonCount() :返回此组中的按钮数。 Enumeration getElements() :返回此组中的所有按钮。 ButtonModel getSelection() :返回选择按钮的模型。 boolean isSelected(ButtonModel m) :返回对是否已选择一个 ButtonModel 的判断。 void remove(AbstractButton b) :从组中移除按钮。 void setSelected(ButtonModel m, boolean b) :为 ButtonModel 设置选择值。