Java - метод вызова через JButton
Как я могу вызвать метод, нажав кнопку JButton?
например:
when JButton is pressed
hillClimb() is called;
Я знаю, как отображать сообщения и т. д. При нажатии кнопки JButton, но хотите знать, можно ли это сделать?
большое спасибо.
5 ответов
если вы знаете как выводить сообщения при нажатии кнопки, то вы уже знаете как вызвать метод как открытие нового окна при вызове метода.
С более подробной информацией вы можете реализовать ActionListener
а затем используйте addActionListener
метод на вашей JButton. здесь - это довольно простой учебник о том, как написать ActionListener
.
вы также можете использовать анонимный класс:
yourButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
hillClimb();
}
});
вот тривиальное приложение, показывающее, как объявить и связать кнопку и ActionListener. Надеюсь, это прояснит для вас ситуацию.
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class ButtonSample extends JFrame implements ActionListener {
public ButtonSample() {
setDefaultCloseOperation(EXIT_ON_CLOSE);
setSize(100, 100);
setLocation(100, 100);
JButton button1 = new JButton("button1");
button1.addActionListener(this);
add(button1);
setVisible(true);
}
public static void main(String[] args) {
new ButtonSample();
}
@Override
public void actionPerformed(ActionEvent e) {
String command = e.getActionCommand();
if (command.equals("button1")) {
myMethod();
}
}
public void myMethod() {
JOptionPane.showMessageDialog(this, "Hello, World!!!!!");
}
}
кулак вы инициализируете кнопку, а затем добавляете к ней ActionListener
JButton btn1=new JButton();
btn1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
hillClimb();
}
});
вам нужно добавить обработчик событий (ActionListener
в Java) в JButton
.
в этой статье объясняет как это делать.