在JavaFX Scene Builder中调整大小按钮

时间:2016-01-19 23:29:08

标签: java javafx javafx-8 scenebuilder

希望这个问题之前已经被问过,谷歌搜索没有让我感到什么。我一直在使用Scene Builder来尝试编写GUI,但由于某些原因我无法重新调整特定按钮的大小。每当我试图缩小它时,它只会恢复到常规尺寸。我正在使用Ubuntu Linux 12.04,如果这有什么不同,那么Eclipse。谢谢! Shot of Screen Builder, with Button which refuses to shrink

2 个答案:

答案 0 :(得分:1)

您将按钮放在ButtonBar中。默认情况下,ButtonBar管理放置在其中的按钮的大小。

  

默认情况下,所有按钮在ButtonBar中的大小均匀,这意味着   所有按钮都采用最宽按钮的宽度。有可能的   按每个按钮选择退出,[通过]调用   布尔值为的setButtonUniformSize(Node, boolean)方法   假的。

     

如果按钮从统一尺寸中排除,则将其排除在外   被调整大小远离其首选大小,也被排除在外   测量过程,因此其大小不会影响最大尺寸   计算ButtonBar中的所有按钮。

如果您想选择不使用统一的大小调整,您可能需要在代码中执行此操作,因为您可能无法使用SceneBuilder UI以图形方式执行此操作。或者您可能希望为按钮使用与ButtonBar不同的容器。

回答评论中的后续问题

  

我尝试在外面使用按钮并调整大小,但它拒绝变小。

适用于我(OS X 9.5上的SceneBuilder 8)。

  • 确保没有使用ButtonBar。
  • 在SceneBuilder中创建一个新项目。
  • 添加StackPane作为根。
  • 在StackPane中放置一个按钮
  • 通过在SceneBuilder中拖动它的边界来调整按钮的大小。
  

是否与我的操作系统有关?

很不可能。如果是这样,那将是一个特定于操作系统的错误。 JavaFX中的这类函数在操作系统中的工作方式应该相同。

  

我正在关注code.makery.ch/library/javafx-8-tutorial/part1,按钮显示为不同的尺寸:i.imgur.com/gCsbTtX.png

JavaFX中控件的大小取决于用于这些控件的字体大小。除非提供其他样式,否则JavaFX使用默认系统字体。默认系统字体的大小取决于操作系统中的操作系统和系统设置。可能是您正在检测的这种变化。

  

我需要在Windows上进行开发吗?

不,不应该是这种情况。

答案 1 :(得分:0)

您只需更改需要更改的按钮的填充。如果你想缩小它,那就试试负数