You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何移除Swing框架中JSplitPane组件的中间默认样式

如何移除Swing中的JSplitPane中间样式

JSplitPane中间的默认样式由BasicSplitPaneDivider类负责渲染,也就是我们常说的分割条,要移除默认样式可按实际需求选择以下方案:

  • 完全隐藏分割条(无需拖拽功能)
    直接调用setDividerSize方法将分割条尺寸设为0即可,代码如下:
    splitPane.setDividerSize(0);
    
  • 保留拖拽功能,仅清除默认绘制样式
    重写BasicSplitPaneUI的分割条创建逻辑,自定义无绘制内容的分割条即可:
    splitPane.setUI(new BasicSplitPaneUI() {
        @Override
        public BasicSplitPaneDivider createDefaultDivider() {
            return new BasicSplitPaneDivider(this) {
                @Override
                public void paint(Graphics g) {
                    // 空实现,不绘制任何系统默认的分割线、拖拽手柄等样式
                }
            };
        }
    });
    // 保留分割条的拖拽热区宽度,可根据需求调整数值
    splitPane.setDividerSize(8);
    
  • 全局修改所有JSplitPane的分割条样式
    程序初始化阶段修改UIManager的全局配置,统一移除所有分割条的默认边框:
    UIManager.put("SplitPaneDivider.border", BorderFactory.createEmptyBorder());
    UIManager.put("SplitPane.border", BorderFactory.createEmptyBorder());
    

JSplitPane默认分割条样式参考:
JSplitPane默认分割条样式

内容的提问来源于stack exchange,提问作者RichardTang

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 04:36:01