有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何减少按钮点击区域(仅限于按钮)

我在JavaFX中有一个简单的密码生成器。无论何时单击按钮,都会生成密码,但当我单击应用程序区域中的其他位置时,按钮也会做出反应。如何减少点击区域

主要

public class Main extends Application {

    @Override
    public void start(Stage primaryStage) throws Exception{
        Parent root = FXMLLoader.load(getClass().getResource("/sample/main.fxml"));
        primaryStage.setTitle("Password Generator");
        primaryStage.setScene(new Scene(root, 600, 400));
        primaryStage.setMaxWidth(610.0);
        primaryStage.setMaxHeight(450.0);
        primaryStage.setMinWidth(600.0);
        primaryStage.show();
    }


    public static void main(String[] args) {
        launch(args);
    }
}

梅因。fxml

<Pane fx:id="mainPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="416.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1" fx:controller="sample.Controller">
   <children>
   <AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" onMouseClicked="#generatePassword" prefHeight="417.0" prefWidth="600.0" style="-fx-background-color: #ed801a;" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1">
      <children>
         <Button fx:id="generatePassword" layoutX="206.0" layoutY="216.0" mnemonicParsing="false" onMouseClicked="#generatePassword" prefHeight="59.0" prefWidth="188.0" text="Generate">
            <font>
               <Font name="System Italic" size="20.0" />
            </font>
         </Button>
      </children>
   </AnchorPane>
   </children>
</Pane>

共 (1) 个答案

  1. # 1 楼答案

       <AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" onMouseClicked="#generatePassword" prefHeight="417.0" prefWidth="600.0" style="-fx-background-color: #ed801a;" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1">
    

    AnchorPane声明中删除onMouseClicked="#generatePassword"