尝试将TextAreaInput添加到scrollPane

时间:2018-04-12 07:18:03

标签: java javafx javafx-8 jtextarea scrollpane

我正在尝试为聊天应用程序制作GUI。我的GUI非常简单,我希望在让它看起来更“花哨”之前加入一些功能。到目前为止它看起来像这样。enter image description here

我基本上想要的是,当我按下' Enter'或者单击发送按钮,它应该将来自TextArea的输入与另一个字符串一起附加,并将其添加到ScrollPane上。

到目前为止我的代码看起来像这样。

public class Controller {
@FXML
private TextArea textInput;

@FXML
private Button sendButton;

@FXML
private ScrollPane chatConversation;



public void initialize() {

    sendButton.setOnAction((event) -> {
        textInput.appendText("Button Action\n");
    });

}

和FXML一样

<BorderPane fx:id="pane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="750.0" prefWidth="1000.0" stylesheets="@style/style.css" xmlns="http://javafx.com/javafx/8.0.121" xmlns:fx="http://javafx.com/fxml/1" fx:controller="sample.Controller">
   <left>
      <Pane prefHeight="750.0" prefWidth="184.0" BorderPane.alignment="CENTER" />
   </left>
   <center>
      <VBox prefHeight="200.0" prefWidth="100.0" BorderPane.alignment="CENTER">
         <children>
            <ScrollPane fx:id="chatConversation" prefHeight="734.0" prefWidth="816.0">
              <content>
                <AnchorPane minHeight="0.0" minWidth="0.0" prefHeight="200.0" prefWidth="200.0" />
              </content>
            </ScrollPane>
            <HBox prefHeight="52.0" prefWidth="400.0">
               <children>
                  <Button fx:id="attach" mnemonicParsing="false" prefHeight="70.0" prefWidth="70.0" />
                  <TextArea fx:id="textInput" focusTraversable="false" prefHeight="37.0" prefWidth="625.0" promptText="Write your message here" wrapText="true">
                     <HBox.margin>
                        <Insets />
                     </HBox.margin>
                     <effect>
                        <Glow level="0.06" />
                     </effect>
                  </TextArea>
                  <Button fx:id="emoji" mnemonicParsing="false" prefHeight="70.0" prefWidth="70.0" />
                  <Button id="sendButton" fx:id="sendButton" alignment="CENTER" mnemonicParsing="false" nodeOrientation="LEFT_TO_RIGHT" prefHeight="70.0" prefWidth="70.0" textOverrun="CLIP" wrapText="true" />
               </children>
            </HBox>
         </children>
      </VBox>
   </center>
</BorderPane>

我可以将Textarea的textinput添加到自身,这很有效,但是当我尝试将其添加到Scrollpane时,它就不会起作用

0 个答案:

没有答案