1

BoxPanel での位置合わせに関する基本的な問題があります。いずれかの TextAreas が入力を受け取ると、パネルの幅ではないパネル内の他のコンポーネントが文字と共に移動します。

私の間違いは何ですか?ありがとう!

空白のテキストエリア

塗りつぶされたテキストエリア

val exitButton = new Button {
  text = "Exit"
  borderPainted = true
  enabled = true
}

val japaneseTranslation = new TextArea(5, 25)
val englishTranslation = new TextArea(5,25)

val translationPanel = new BoxPanel (Orientation.Vertical) {
  contents += new Label {
    text = "Translation"
    font = new Font("Ariel", java.awt.Font.PLAIN, 20)
    horizontalAlignment = Alignment.Center
  }

  contents += new Label {
    text = "Japanese"
    font = new Font("ariel", java.awt.Font.PLAIN, 10)
  }

  /*contents += new TextField ("Japanese") {                                                                                                                  
    editable = false                                                                                                                                          
  }*/
  contents += japaneseTranslation


  contents += new Label {
    text = "English"
    font = new Font("ariel", java.awt.Font.PLAIN, 10)
  }
  contents += englishTranslation

  contents += exitButton

}
4

1 に答える 1

1

TextAreaコンポーネントを にラップすると、次のことがScrollPane役立ちます。

val exitButton = new Button {
  text = "Exit"
  borderPainted = true
  enabled = true
}

val japaneseTranslation = new TextArea(5, 25)
val englishTranslation = new TextArea(5,25)

val translationPanel = new BoxPanel (Orientation.Vertical) {
  contents += new Label {
    text = "Translation"
    font = new Font("Ariel", java.awt.Font.PLAIN, 20)
    horizontalAlignment = Alignment.Center
  }

  contents += new Label {
    text = "Japanese"
    font = new Font("ariel", java.awt.Font.PLAIN, 10)
  }

  /*contents += new TextField ("Japanese") {                                                                                                                  
    editable = false                                                                                                                                          
  }*/
  contents += new ScrollPane(japaneseTranslation)


  contents += new Label {
    text = "English"
    font = new Font("ariel", java.awt.Font.PLAIN, 10)
  }
  contents += new ScrollPane(englishTranslation)

  contents += exitButton

}

もう 1 つの可能性は、Aqua のコメントで示唆されているように、TextAreaコンポーネントのalignmentX を設定することです。

val japaneseTranslation = new TextArea(5, 25) {
  peer.setAlignmentX(0)
}
val englishTranslation = new TextArea(5,25) {
  peer.setAlignmentX(0)
}

次回はSSCCEを投稿してください。

于 2014-04-16T13:07:53.610 に答える