В этой статье блога мы углубимся в создание простых диалоговых форм с кнопками на Java с помощью BeanShell Eval. Мы рассмотрим различные методы и предоставим примеры кода для демонстрации их реализации. К концу этой статьи вы получите четкое представление о том, как создавать интерактивные диалоговые формы в Java.
Метод 1: использование Java Swing
Java Swing предоставляет богатый набор компонентов для создания графических пользовательских интерфейсов. Вот пример простой диалоговой формы с кнопкой с использованием Java Swing:
import javax.swing.*;
public class FormDialog extends JFrame {
private JButton button;
public FormDialog() {
button = new JButton("Click Me");
button.addActionListener(e -> {
// Button action logic goes here
JOptionPane.showMessageDialog(null, "Button clicked!");
});
JPanel panel = new JPanel();
panel.add(button);
add(panel);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(300, 200);
setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(FormDialog::new);
}
}
Метод 2: использование JavaFX
JavaFX — это мощная среда для создания многофункциональных клиентских приложений. Вот пример простой диалоговой формы с кнопкой с использованием JavaFX:
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class FormDialog extends Application {
@Override
public void start(Stage primaryStage) {
Button button = new Button("Click Me");
button.setOnAction(e -> {
// Button action logic goes here
System.out.println("Button clicked!");
});
StackPane root = new StackPane();
root.getChildren().add(button);
Scene scene = new Scene(root, 300, 200);
primaryStage.setTitle("Form Dialog");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
Метод 3: использование JavaFX с FXML
JavaFX поддерживает FXML, язык разметки на основе XML для определения пользовательских интерфейсов. Вот пример простой диалоговой формы с кнопкой с использованием JavaFX и FXML:
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;
public class FormDialog extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
Parent root = FXMLLoader.load(getClass().getResource("form_dialog.fxml"));
Scene scene = new Scene(root, 300, 200);
primaryStage.setTitle("Form Dialog");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
Метод 4: использование JavaFX с Scene Builder
JavaFX Scene Builder — это инструмент визуального макетирования, который позволяет проектировать интерфейсы приложений JavaFX без написания кода. Вот пример простой формы диалога с кнопкой с использованием JavaFX и Scene Builder:
- Разработайте пользовательский интерфейс диалогового окна формы с помощью Scene Builder.
- Сохраните дизайн как файл FXML.
- Загрузите файл FXML в приложение JavaFX с помощью
FXMLLoader.
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;
public class FormDialog extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
Parent root = FXMLLoader.load(getClass().getResource("form_dialog.fxml"));
Scene scene = new Scene(root, 300, 200);
primaryStage.setTitle("Form Dialog");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}