Qt Designer中如何添加QSplitter
创始人
2025-05-29 23:20:06
0

一、Qt中新增QSplitter如何新增:

在qt designer(设计器)中,在控件工具箱中是无法找到这个qsplitter的。

操作步骤:

1、需要选中要被增加到splitter的两个控件,注意是同时选中

2、然后右键菜单->布局->使用拆分器水平布局。如下图:

3、也可以使用上方工具栏中的选项按钮,但是前提也是先选中两个控件。如下图:

 上图中子菜单的“使用拆分器水平布局”这个选项是不可点击的。原因是因为,我已经添加过splitter了。

一开始就是这个选项置灰的,无法点击。主要原因有二点:

1、因为只选中了一个控件,需要同时选中两个控件才行。

2、选中的两个控件的父控件,已经有布局了,需要先去除布局。比如上图的mainpage,已经是水平布局了,需要先打破这个布局(右键菜单或者上方标题栏都可以打破布局,不再赘述)

再进行添加splitter的操作。

ps:这两个原因巨坑,一度想弃用qt设计器改用qml,足足耗费1小时才找到原因。

添加了splitter后,再重新将父控件进行布局。

Qt的设计理念是认为splitter是父控件,可以看到splitter是作为父控件被加入到了ui布局中。

qSplitter

        ---leftBar

        ---editWidget

所以需要同时选中需要被分割的两个控件,然后再进行添加splitter。

二、添加splitter后,拖动异常

添加完splitter后,拖动会出现UI不符合预期(拖不动,拖一下会跳动)。需要做以下修改:

1、将splitter的两个控件的最大最小宽度设置好,若到达了最大最小宽度,会导致无法拖动

2、若发现拖动后,忽然一个控件被隐藏了,只需关闭qsplitter的ChildrenCollapsiable即可,如下图:

 

三、Qsplitter的默认宽度如何设置?

当添加完qsplitter后,发现默认的左右控件所处位置不符合预期。

比如我们预期刚启动时,左控件的宽度为100,右控件的宽度为900

可以通过添加如下代码:

//set the splitter default-ratio,第一个参数是代码第几列,因为是左右布局
//总共是10,左侧占据1,右侧占据9
ui->splitter->setStretchFactor(0, 1);
ui->splitter->setStretchFactor(1, 9);

相关内容

热门资讯

德国大众汽车集团计划将裁员规模... 红星资本局6月27日消息。据CCTV国际,德国媒体《经理人杂志》6月26日报道,德国大众汽车集团首席...
隆基绿能:等待周期反转 隆基绿... 2026年,全球光伏割裂场景依旧存在,屋顶上的蓝色面板在增加,但行业里几乎没有人在庆祝。 一个逻辑上...
第酒局丨五粮液集团董事长邓敏首... 新京报讯(记者秦胜南)6月26日举行的2025年度五粮液股东会上,新上任的五粮液集团公司党委书记、董...
韩国KOSPI指数跌破8100... 5月28日消息,韩国KOSPI指数跌破8100点,日内下跌1.63%。(科股宝播报)
礼来涨超2%,股价续刷历史新高 5月27日消息,礼来涨超2%,股价续刷历史新高,市值达1.02万亿美元。礼来今年并购金额已超200亿...
美光科技盘中转跌 5月27日消息,美光科技盘中转跌,现报约901美元/股,此前一度涨超6%。(科股宝播报)
欣旺达:德国联邦专利法院判决E... 5月27日消息,欣旺达电子股份有限公司发布声明:2024年10月21日,针对Tulip Innova...
现货黄金日内跌幅扩大至2% 5月27日消息,现货黄金日内跌幅扩大至2%,报4416.32美元/盎司。(广角观察)
博罗雷CEO敦促环球音乐拒绝阿... 5月27日消息,据报道,法国博罗雷集团(Bolloré)首席执行官Cyrille Bolloré敦促...
台积电美股盘初上涨3.5%,创... 5月27日消息,台积电美股盘初上涨3.5%,最高报428.38美元/股,刷新记录新高。(科股宝播报)