我的任务是检索文本字段的值并在单击按钮时将其显示在警报框中。如何在 Java Swing 中生成按钮的单击事件?
ActionListener
,例如:
JButton b = new JButton("push me");
b.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
//your actions
}
});
要以编程方式生成点击事件,您可以使用 doClick()
的
JButton
方法: b.doClick();
首先,使用一个按钮,为其分配一个 ActionListener,在其中使用 JOptionPane 来显示消息。
class MyWindow extends JFrame {
public static void main(String[] args) {
final JTextBox textBox = new JTextBox("some text here");
JButton button = new JButton("Click!");
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(this, textBox.getText());
}
});
}
}
您还可以使用 lambda 函数:
JButton button = new JButton("click me");
button.addActionListener(e ->
{
// your code here
});
但是,如果您指的是 Qt 中的信号和槽,那么 Swing 不支持这一点。但您始终可以使用“观察者”模式自己实现此操作(link)。
public GUI() {
JButton btn1 = new JButton("Click me!");
add(btn1);
btn1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
//action for the button
}
});
}
JButton jEightButton=new JButton();
jEightButton.addActionListener(this);
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
jframe.getContentPane().setBackground(Color.blue);
}