javafx - 如何用右对齐修复颤抖的文本?
问题描述
我在 JavaFX8 上使用具有右对齐的标签来一一输入数字。问题是文本在颤抖。
在 Ubuntu 18.04、JRE 1.8.0_211 上运行的应用程序。字体使用“Roboto Mono”,但任何字体都有问题。我尝试使用 TextField,但情况是一样的。注意到左对齐没有问题。
public class AppExample extends Application {
@Override
public void start(Stage primaryStage) {
Label label = new Label();
label.setStyle("-fx-background-color: #ccffcc; -fx-font-weight:bold; -fx-font-size: 24pt");
label.setAlignment(Pos.CENTER_RIGHT);
label.setMaxWidth(Double.MAX_VALUE);
VBox vBox = new VBox(label);
vBox.setFillWidth(true);
vBox.setAlignment(Pos.CENTER);
vBox.setStyle("-fx-background-color: #000");
primaryStage.setScene(new Scene(vBox, 400, 100));
primaryStage.getScene().setOnKeyPressed(event -> {
if (event.getCode().equals(KeyCode.BACK_SPACE)) {
int length = label.getText().isEmpty() ? 0 : label.getText().length()-1;
label.setText(label.getText().substring(0, length));
} else label.setText(label.getText() + event.getText());
});
primaryStage.show();
}
}
我希望输入文本时不要颤抖,有什么可能的解决方案?
解决方案
推荐阅读
- python-3.x - 如何简化过于宽泛的 if 语句?
- javascript - Javascript使用元素向下移动滚动条不起作用
- javascript - 以数字格式获取字符串价格
- r - 将字符串作为函数传递给 dplyr?
- git - 如何传递文件名参数 gitconfig diff textconv?
- firebase - Firebase 身份验证返回“getGoogleApiForMethod() 返回 Gms:com.google.firebase.auth.api.internal.zzal@7f42afc”
- php - 如果来自特殊链接或站点,将用户重定向到其他代码
- r - 将两个 addLayersControl 添加到一张地图(标记位于多个组中)
- python - lambda 表达式中的未定义变量
- batch-file - 需要创建一个批处理文件