将按钮文本缩放到按钮大小(反之亦然)
Posted
技术标签:
【中文标题】将按钮文本缩放到按钮大小(反之亦然)【英文标题】:Scale button text to button size (not vice versa) 【发布时间】:2015-05-25 08:46:25 【问题描述】:我有一个如下所示的简单警报,它在 Windows 和 Linux 中的显示方式不同。有很多帖子可以根据文本缩放按钮大小,但我基本上想要相反的。按钮应保持相同大小,文本应缩放以适应(就像在 Windows 中所做的那样)
protected static void setDifficulty()
Alert alert = new Alert(AlertType.CONFIRMATION);
alert.setTitle("Welcome to the game of Memory");
alert.setHeaderText("How difficult should your oppenent be?");
alert.setContentText("Please choose your desired difficulty.");
ButtonType button1 = new ButtonType("Nice n' Easy");
ButtonType button2 = new ButtonType("So So");
ButtonType button3 = new ButtonType("Super Freak");
ButtonType buttonCancel = new ButtonType("Cancel", ButtonData.CANCEL_CLOSE);
alert.getButtonTypes().setAll(button1, button2, button3, buttonCancel);
Optional<ButtonType> result = alert.showAndWait();
if (result.get() == button1)
MemoryField.difficulty = 10;
else if (result.get() == button2)
MemoryField.difficulty = 5;
else if (result.get() == button3)
MemoryField.difficulty = 0;
else
Platform.exit();
在 Windows 上:
在 Ubuntu 上:
【问题讨论】:
感谢编辑,我的名声暂时限制了我添加图片。 【参考方案1】:我能够在 Linux 上避免此问题的唯一方法是获取按钮的句柄,并设置首选宽度:
for(ButtonType buttonType : alert.getButtonTypes())
Button button = (Button) alert.getDialogPane().lookupButton(buttonType);
button.setPrefWidth(100);
【讨论】:
以上是关于将按钮文本缩放到按钮大小(反之亦然)的主要内容,如果未能解决你的问题,请参考以下文章