Вот ответ на ваш первый вопрос,
Как мне связать метод с новой кнопкой? есть ли способ (.setMethod) сделать это без повторной записи кодов метода?
Вы можете использовать .addActionListener()
для запуска кода при нажатии вашей кнопки. Вы также можете использовать .addActionListener()
в некоторых других Java компонентах окна для других целей.
в своем конструкторе
public Constructor() {
Button b = new Button("b");
// Links your method to the button.
b.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent actionEvent) {
// Called when button is pressed.
System.out.println("Button pressed.");
}
});
}
или
public Constructor() {
Button b = new Button("b"); // same as above
b.addActionListener(this::function); // Use method reference instead.
// other initialization...
}
// The argument in this function is required!
private void function(ActionEvent e) {
// Called when button is pressed.
}
И ответ на другой вопрос:
Как передать переменную, например строку, в метод? Как и передача параметров в javascript.
Это зависит от того, что вы пытаетесь передать в функцию. Если это данные из другого компонента, лучше получить данные внутри функции и поместить их в переменную. По крайней мере, в классе, который вы используете, Java не позволяет передавать свои собственные аргументы функции, как тот, который используется здесь (ActionListener
).