按钮-java教程

首页 2024-07-10 02:14:18

按钮点击时触发动作事件的控件。 javafx 提供常规按钮、切换按钮、复选框按钮和单选按钮。这些按钮的共同特征定义为 buttonbaselabeled 类中,如下图所示。

Labeled类别定义了标签和按钮的一般属性。按钮就像标签,但按钮有 ButtonBase 类中定义的 onAction 该属性设置了处理按钮操作的处理程序。

以下代码提供了一个使用按钮来控制文本移动的程序,如下图所示。


打包申请; 导入javafx.application.Application; 导入javafx.stage.Stage; 导入 javafx.geometry.Pos; 导入javafx.scene.Scene; 导入javafx.scene.control.Button; 导入javafx.scene.image.ImageView; 导入 javafx.scene.layout.BorderPane; 导入javafx.scene.layout.HBox; 导入javafx.scene.layout.Pane; 导入javafx.scene.text.Text; 公共类 ButtonDemo 扩展应用程序 { protected Text text = new Text(50, 50, "JavaFX 编程"); 受保护的 BorderPane getPane() { HBox paneForButtons = new HBox(20); Button btLeft = new Button("左", new ImageView(文件:/C:/Users/Paul/development/MyJavaFX/src/application/image/lo.jpg")); Button btRight = new Button("右", new ImageView(文件:/C:/Users/Paul/development/MyJavaFX/src/application/image/lo.jpg")); paneForButtons.getChildren().addAll(btLeft, btRight); paneForButtons.setAlignment(Pos.CENTER); paneForButtons.setStyle("-fx-border-color: green"); BorderPane 窗格 = new BorderPane(); pane.setBottom(paneForButtons); 窗格panefortextet = new Pane(); paneForText.getChildren().add(text); pane.setCenter(paneForText); btLeft.setOnAction(e -> text.setX(text.getX() - 10)); btRight.setOnAction(e -> text.setX(text.getX() 10)); 返回窗格; } @Override // 在application类中重写start方法 公共无效开始(阶段primaryStage){ // 在舞台上创造场景并将其放置 场景场景 = new Scene(getPane(), 450, 200); PrimaryStage.setTitle("ButtonDemo"); // 设置舞台标题 PrimaryStage.setScene(场景); // 把场景放在舞台上 PrimaryStage.show(); // 显示舞台 } 公共静态无效主(字符串[]] args){ 应用程序.launch(args); } }



程序创建两个按钮

btLeftbtRight,每个按钮包含一个文本和一个图像(第一个) 18-19 行)。把按钮放在里面 HBox 中(第 20 行),HBox 放置在边框窗格的底部(第) 25 行)。文本在第 14 在行中创建并放置在边框窗格的中心(第一 29 行)。 btLeft 操作处理程序将文本向左移动(第一 31 行)。 btRight 操作处理程序将文本向右移动(第一 32 行)。

程序特别定义了一个受保护的程序

getPane()该方法返回一个窗格(第16行)。在下一个例子中,该方法覆盖了被子类,并在窗格中添加了更多的节点。该文本被声明是为了保护子类访问它(第一 14 行)。

以上是按钮的详细内容,请关注其他相关文章!


p