将 JavaFX TextField 添加到 JPanel

Adding JavaFX TextField to JPanel

我有一个 JPanel cPanel,还有一个从 JDK 8 的 javafx.scene.control.TextField 导入的 TextField resultField。 现在我要cPanel.add(resultField,BorderLayout.NORTH),Eclipse报错:

The method add(String, Component) in the type Container is not applicable for the arguments (TextField, String)

如何正确地将 resultField 添加到 cPanel

but JTextField doesn't support prompt text

您可以使用 Text Prompt class.

我允许您指定在文本字段为空时显示的提示。一旦您键入文本,提示就会被删除。

提示实际上是一个 JLabel,因此您可以自定义字体、前景等。:

JTextField tf7 = new JTextField(10);
TextPrompt tp7 = new TextPrompt("First Name", tf7);
tp7.setForeground( Color.RED );

您可以下载 swingx-core-1.6.2.jar 并使用它来制作 swing 文本字段提示文本。

    PromptSupport.setPrompt("User ID", userNameField);
    PromptSupport.setFontStyle(Font.BOLD, userNameField);
    PromptSupport.setForeground(Color.BLACK, userNameField);
    PromptSupport.setFocusBehavior(PromptSupport.FocusBehavior.HIDE_PROMPT,
            userNameField);

从这里下载:http://www.java2s.com/Code/JarDownload/swingx/swingx-core-1.6.2.jar.zip