目前我正在学习JavaFX,进展顺利。
然而,所有的文本字段都有一条线从顶部开始延伸10像素左右。
不仅在我的应用程序中是这样,在SceneBuilder应用程序中也是如此。
请注意,我没有使用任何显式的CSS,我不知道SceneBuilder使用了什么。屏幕截图来自SceneBuilder,我的屏幕看起来完全相同。
因此,这是一些基本的问题。
java -version
java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)
在 Mac OS 10.9.5 上,我很好奇是否有其他人见过这个问题并有什么建议。
编辑:我下载了示例,显然与 Modena 主题有关。Caspian主题看起来非常好。以下是 Modena.jar TextFields 部分的屏幕截图。有趣的是,TextArea
也存在类似的问题,尽管不如TextField
普遍.
更多补充:
大家一直在要求这个,所以这就是它。我基本上只是按照这个文档:https://docs.oracle.com/javafx/2/get_started/form.htm ,并使用默认的Netbeans 8.0.2 JavaFX 应用程序项目。只是从网站中复制和粘贴它。
public class Fxlinetest extends Application {
@Override
public void start(Stage primaryStage) {
primaryStage.setTitle("JavaFX Welcome");
GridPane grid = new GridPane();
grid.setAlignment(Pos.CENTER);
grid.setHgap(10);
grid.setVgap(10);
grid.setPadding(new Insets(25, 25, 25, 25));
Text scenetitle = new Text("Welcome");
scenetitle.setFont(Font.font("Tahoma", FontWeight.NORMAL, 20));
grid.add(scenetitle, 0, 0, 2, 1);
Label userName = new Label("User Name:");
grid.add(userName, 0, 1);
TextField userTextField = new TextField();
grid.add(userTextField, 1, 1);
Label pw = new Label("Password:");
grid.add(pw, 0, 2);
PasswordField pwBox = new PasswordField();
grid.add(pwBox, 1, 2);
Button btn = new Button("Sign in");
HBox hbBtn = new HBox(10);
hbBtn.setAlignment(Pos.BOTTOM_RIGHT);
hbBtn.getChildren().add(btn);
grid.add(hbBtn, 1, 4);
final Text actiontarget = new Text();
grid.add(actiontarget, 1, 6);
Scene scene = new Scene(grid, 300, 275);
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
java version "1.8.0_66"
Java(TM) SE Runtime Environment (build 1.8.0_66-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.66-b17, mixed mode)
这是来自ScenicView 8.6的ThreeDOM视图的屏幕截图,请注意该行:
![ScenicView中的ThreeDOM视图--请注意该行](https://istack.dev59.com/ZpA2l.webp)
java version "1.8.0_74"
Java(TM) SE Runtime Environment (build 1.8.0_74-b02)
Java HotSpot(TM) 64-Bit Server VM (build 25.74-b02, mixed mode)
以下是使用Caspian主题的示例屏幕:
System.setProperty("javafx.userAgentStylesheetUrl", "caspian");