QT_Qsplitter
2024-04-08 22:27:54
CH:这个splitter就好像一个布局,横向布局,垂直布局
1.QSplitter的构造方法:
QSplitter *splitterMain=new QSplitter(Qt::Horizontal,0);
第一个参数通过Qt::Horizontal 和 Qt::Vertical来设定为水平分割或垂直分割。第二个设定0代表是主窗口,无父窗口。
不过子splitter设置的
new QSplitter(Qt::Vertical,splitterMain);
代表主窗口是splitterMain。则子splitter就被添加到splitterMain中。
添加时为从左至右(或从上至下)添加;
2.添加QTextEdit控件。
QTextEdit *textLeft=new QTextEdit(QObject::tr("Left Widget"),splitterMain);
第一个参数设置文本内容,第二个参数设置主窗体。
3.设置拖动时是否实时更新
splitterRight->setOpaqueResize(false);
false为不实时更新——在拖动时候只显示一条灰色的线条,在拖动到位并释放鼠标后再显示分割条。默认为true——实时更新。
4.设定可伸缩控件:
splitterMain->setStretchFactor(1,1);
第一个参数代表控件序号,第一个序号为0.后面参数0代表不可伸缩,非0代表可伸缩。
这里设置右边的可伸缩。当拉伸整个窗口时候,左边保持原来宽度。
#include "mainwindow.h"
#include <QApplication>
#include<Qsplitter>
#include<QTextEdit>
#include <QTextCodec>
int main(int argc, char *argv[])
{QApplication a(argc, argv);QFont font("ZYSong18030",12);a.setFont(font);//主分割窗口QSplitter *splitterMain =new QSplitter(Qt::Horizontal,0);QTextEdit *textLeft =new QTextEdit(QObject::tr("Left Widget"),splitterMain);textLeft->setAlignment(Qt::AlignCenter);//右部分割窗口QSplitter *splitterRight =new QSplitter(Qt::Vertical,splitterMain);splitterRight->setOpaqueResize(false);QTextEdit *textUp =new QTextEdit(QObject::tr("Top Widget"),splitterRight);textUp->setAlignment(Qt::AlignCenter);QTextEdit *textUp1 =new QTextEdit(QObject::tr("Top Widget"),splitterRight);textUp1->setAlignment(Qt::AlignCenter);QSplitter *splitterX =new QSplitter(Qt::Horizontal,splitterRight);QTextEdit *textBottom =new QTextEdit(QObject::tr("Bottom Widget"),splitterX);textBottom->setAlignment(Qt::AlignCenter);QTextEdit *textBottom1 =new QTextEdit(QObject::tr("Bottom Widget"),splitterX);textBottom1->setAlignment(Qt::AlignCenter);splitterMain->setStretchFactor(1,1);splitterMain->setWindowTitle(QObject::tr("Splitter"));splitterMain->show();//MainWindow w;//w.show();return a.exec();
}
QT_Qsplitter相关推荐
最新文章
- 如何优化才能赢得搜索引擎“欢心”,提升抓取量?
- SQL判断是否“存在“,还在用 count 操作?
- make xconfig 报‘ptrdiff_t’ does not name a type错误解决方法
- SpringBoot_web开发-扩展与全面接管SpringMVC
- POJ - 1358 Housing Complexes(二分图最大匹配)
- (转)从零实现3D图像引擎:(6)向量函数库
- c语言甘勇第二版第五章答案,C语言(1) - Patata的个人页面 - OSCHINA - 中文开源技术交流社区...
- Windows2000计划任务对机器进行重新启动
- tp框架like模糊查询报错
- 东方六爻周易排盘起卦软件,有电脑和手机Android App,Pad平板应用,卦例本机网络双备份,支持藏山卜
- 单火线智能开关设计笔记
- [语音处理] 声谱图(spectrogram)FBank(Mel_spectrogram)MFCC(Mel倒谱)到底用哪个作为NN输入?
- jquery学习总结
- window引导配置bcdedit
- 数据抓取软件是如何抓取数据的?
- 1625:Sequence Median(翻译)
- 素数筛(c语言实现)
- 小企业无线局域网服务器,无线局域网AAA服务器的软件设计与实现
- 小程序Git问题:ERROR: credentials callback returned an invalid cred type解决方法
- 【WSL】window10 安装WSL2配置conda环境及深度学习环境搭建
热门文章
- linux下tomcat ssl证书,Tomcat部署ssl证书(Linux)
- 快速幂(一个简单快速适合整数幂次的运算)
- python读取yaml文件
- oracle视图无法使用rowid,请问:无法从没有键值保存表的连接视图中选择 ROWID 这个是什么原因啊?...
- mysql上一条语句成功_mysql : 获取上一条insert语句
- websocket java 例子_java 实现websocket的两种方式实例详解
- uniapp 子组件 props拿不到数据_谈一谈使用 webpack 开发时,Vue 组件之间的数据传递...
- linux生成的pdf文件,把LINUX MAN PAGE生成为PDF文件的脚本
- 模板三连击:树状数组+线段树+主席树
- Oracle使用rman备份数据库时出现cannot reclaim的错误