我在我的 JSplitPane 中设置了 setOneTouchExpandable(true) 和 setEnabled(false) ,只允许用户向左或向右扩展。但我真正想要的是让左侧面板要么折叠到左侧,要么保持在默认位置。(这就是我设置 setEnabled(false) 的原因)。
有没有一种简单的方法可以实现这一目标?欢迎任何帮助或代码片段!
我在我的 JSplitPane 中设置了 setOneTouchExpandable(true) 和 setEnabled(false) ,只允许用户向左或向右扩展。但我真正想要的是让左侧面板要么折叠到左侧,要么保持在默认位置。(这就是我设置 setEnabled(false) 的原因)。
有没有一种简单的方法可以实现这一目标?欢迎任何帮助或代码片段!
最简洁的答案是不”。
长答案是“是”,有很多工作最终可能无法满足您的长期需求。
我对代码进行了挖掘,发现“一键式”箭头是由BasicSplitPaneDividerUI
(在大多数情况下)构造的。作为其职责的一部分,它创建了两个调整大小按钮。
您提供的任何属性都不允许您告诉此 UI 委托仅呈现单个箭头或以任何方式捕获发生的操作事件。
所以,这让你有两个选择。
JSplitPanes
容器的层次结构并找到任何 JButton。然后,您要么想将自己的动作侦听器附加到它们,要么完全替换它们。