有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java JToolbar在JSplitPane中调整大小

我试图创建一个应用程序,其中有一个JSplitPane,左侧包含文档树,右侧包含当前编辑器窗格。编辑器窗格有一个工具栏作为编辑窗格的一部分。我的问题是,当包含JSplitPane的JFrame调整大小时,只要拆分窗格的右侧组件达到工具栏的大小,右侧窗格就会开始“挤压”左侧窗格

我想知道是否有人知道一种方法可以使splitpane的两个组件保持相同的比例,或者使用工具栏停止显示其中的项目,或者使用“更多”按钮。我在框架工具栏中使用了“更多”功能的底格里斯工具栏,它似乎无法在JScrollpane中调整大小

谢谢你的帮助


共 (1) 个答案

  1. # 1 楼答案

    如果我理解正确,您希望在调整父帧的大小时,使拆分窗格以相同的优先级处理两侧。如果是这种情况,您可能希望查看方法^{}

    Specifies how to distribute extra space when the size of the split pane changes. A value of 0, the default, indicates the right/bottom component gets all the extra space (the left/top component acts fixed), where as a value of 1 specifies the left/top component gets all the extra space (the right/bottom component acts fixed). Specifically, the left/top component gets (weight * diff) extra space and the right/bottom component gets (1 - weight) * diff extra space.

    考虑到这一点,我会尝试0.5

    编辑

    查看BasicSplitPaneUI的代码,它将在调整大小时考虑左右组件的最小大小,而不考虑重量。注意,重量仍然很重要。它只是被最小的组件所压倒。考虑到这一点,请尝试在工具栏或包含它的滚动窗格上设置最小大小