从javafx创建note应用程序
如何使textarea从textfield获取用户输入?如何从控制器控制这些按钮,是否有任何可能的方法可以让textfield在用户提交时充当textarea,用户可以在单击textarea进行编辑时对其进行编辑从javafx创建note应用程序,javafx,fxml,scenebuilder,Javafx,Fxml,Scenebuilder,如何使textarea从textfield获取用户输入?如何从控制器控制这些按钮,是否有任何可能的方法可以让textfield在用户提交时充当textarea,用户可以在单击textarea进行编辑时对其进行编辑 <?xml version="1.0" encoding="UTF-8"?> <?import javafx.geometry.*?> <?import java.lang.*?> <?import java.util.*?> <
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.geometry.*?>
<?import java.lang.*?>
<?import java.util.*?>
<?import javafx.scene.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<BorderPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1" fx:controller="javafxnote.Note2Controller">
<top>
<AnchorPane prefHeight="56.0" prefWidth="600.0" BorderPane.alignment="CENTER">
<children>
<Button fx:id="btn2" layoutX="555.0" layoutY="10.0" mnemonicParsing="false" onMouseClicked="#test" text="x" />
</children>
</AnchorPane>
</top>
<center>
<TextArea prefHeight="200.0" prefWidth="200.0" BorderPane.alignment="CENTER">
<BorderPane.margin>
<Insets left="10.0" right="10.0" />
</BorderPane.margin></TextArea>
</center>
<padding>
<Insets bottom="20.0" />
</padding>
<bottom>
<VBox prefHeight="149.0" prefWidth="600.0" BorderPane.alignment="CENTER">
<children>
<TextField prefHeight="111.0" prefWidth="600.0">
<VBox.margin>
<Insets />
</VBox.margin>
</TextField>
<AnchorPane prefHeight="38.0" prefWidth="580.0">
<children>
<Button fx:id="btsub" layoutX="434.0" layoutY="21.0" mnemonicParsing="false" text="submit" />
<Button fx:id="btcl" layoutX="518.0" layoutY="21.0" mnemonicParsing="false" text="clear" />
</children>
</AnchorPane>
</children>
<BorderPane.margin>
<Insets left="10.0" right="10.0" />
</BorderPane.margin>
</VBox>
</bottom>
</BorderPane>
要在控制器中为按钮添加操作: 在SceneBuilder中添加控制器类 要指定控制器的类,请检查“控制器”选项卡下SceneBuilder的右侧是一个名为“控制器类”的文本字段。还请注意,有一个包含所有具有“fx id”的节点的列表 向控制器中需要的所有节点添加fx:id 对于需要在控制器中使用的任何组件,请添加fx:id。对于操作,请选中在任何组件的“代码”选项卡中添加方法名称。例如,如果您想要按钮“Submit”的操作,请在名为“submitPushed”的“操作”字段中添加方法的名称 在控制器的类中添加带有fx:id的所有节点 对于使用fx:id属性化的每个节点,需要将其添加为带有注释@FXML的控制器类中的属性。对于带有fx:id textSubmit的文本字段,您将在控制器中添加一个属性
@FXML TextField textSubmit
在控制器类中定义操作的方法
对于名为“Submit”的按钮和操作“submitPushed”,您需要声明操作的方法
@FXML submitPushed(ActionEvent event){
//add code here for what the button should do
}
如果要在按下“提交”按钮时将文本字段的内容添加到文本区域
@FXML submitPushed(ActionEvent event){
String content=textField.getText();
String contentTextArea = textArea.getText();
textArea.setText(contentTextArea+"\n"+content);
}
要在控制器中为按钮添加操作,请执行以下操作: 在SceneBuilder中添加控制器类 要指定控制器的类,请检查“控制器”选项卡下SceneBuilder的右侧是一个名为“控制器类”的文本字段。还请注意,有一个包含所有具有“fx id”的节点的列表 向控制器中需要的所有节点添加fx:id 对于需要在控制器中使用的任何组件,请添加fx:id。对于操作,请选中在任何组件的“代码”选项卡中添加方法名称。例如,如果您想要按钮“Submit”的操作,请在名为“submitPushed”的“操作”字段中添加方法的名称 在控制器的类中添加带有fx:id的所有节点 对于使用fx:id属性化的每个节点,需要将其添加为带有注释@FXML的控制器类中的属性。对于带有fx:id textSubmit的文本字段,您将在控制器中添加一个属性
@FXML TextField textSubmit
在控制器类中定义操作的方法
对于名为“Submit”的按钮和操作“submitPushed”,您需要声明操作的方法
@FXML submitPushed(ActionEvent event){
//add code here for what the button should do
}
如果要在按下“提交”按钮时将文本字段的内容添加到文本区域
@FXML submitPushed(ActionEvent event){
String content=textField.getText();
String contentTextArea = textArea.getText();
textArea.setText(contentTextArea+"\n"+content);
}