范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

QtQSplitter任意拆分窗口

  Qt拆分窗口可以使用QSplitter,也可以使用比较容易使用布局控件来完成,本文章给出使用QSplitter分割窗口的例子。
  QSplitter 继承自QFrame,而QFrame又继承自QWidget,这点很重要。
  对于使用QSplitter拆分窗口:
  1)新建一个QSplitter,就意味着新建了一个QWidget
  2)不同的QSplitter对象通过指定父子关系来完成嵌套(划分窗口)
  3)QSplitter可以放置到你指定的任何窗口内
  例子1:将一个窗口拆分为左右两列,如下图所示:
  代码如下: int main(int argc, char *argv[]) { //例子1, qDebug("Mainframe start... "); QApplication app(argc, argv); QTextCodec::setCodecForTr(QTextCodec::codecForName(QTextCodec::codecForLocale()->name())); QTextCodec::setCodecForLocale(QTextCodec::codecForName(QTextCodec::codecForLocale()->name())); QTextCodec::setCodecForCStrings(QTextCodec::codecForName(QTextCodec::codecForLocale()->name())); QSplitter *pSpliter = new QSplitter(Qt::Horizontal); //QTextEdit* pLeftEdt = new QTextEdit(pSpliter); //此注释指定父窗口,打开后,后面的pSpliter->addWidget(pLeftEdt); 可以注释掉 QTextEdit* pLeftEdt = new QTextEdit; pLeftEdt->setText(QObject::tr("左窗口")); //QTextEdit* pRightEdt = new QTextEdit(pSpliter); //此注释指定父窗口,打开后,后面的pSpliter->addWidget(pRightEdt); 可以注释掉 QTextEdit* pRightEdt = new QTextEdit; pRightEdt->setText(QObject::tr("右窗口")); pSpliter->addWidget(pLeftEdt); pSpliter->addWidget(pRightEdt); pSpliter->setStretchFactor(0, 1);//下面两句设置左右两列的宽度比为1:4 pSpliter->setStretchFactor(1, 4); pSpliter->setWindowTitle(QObject::tr("Split-Wnd Demo1")); pSpliter->show(); return app.exec(); }
  例子2:将一个窗口拆分为左右两列,右面再拆分为上下两列,如下图所示:
  代码如下: qDebug("Mainframe start... "); QApplication app(argc, argv); QTextCodec::setCodecForTr(QTextCodec::codecForName(QTextCodec::codecForLocale()->name())); QTextCodec::setCodecForLocale(QTextCodec::codecForName(QTextCodec::codecForLocale()->name())); QTextCodec::setCodecForCStrings(QTextCodec::codecForName(QTextCodec::codecForLocale()->name())); QSplitter *pSpliter = new QSplitter(Qt::Horizontal); QTextEdit* pLeftEdt = new QTextEdit(pSpliter); pLeftEdt->setText(QObject::tr("左窗口")); QSplitter *pRightSpliter = new QSplitter(Qt::Vertical, pSpliter); QTextEdit* pRightTopEdt = new QTextEdit(pRightSpliter); pRightTopEdt->setText(QObject::tr("右上窗口")); QTextEdit* pRightBtmEdt = new QTextEdit(pRightSpliter); pRightBtmEdt->setText(QObject::tr("右下窗口")); pSpliter->setStretchFactor(0, 1); pSpliter->setStretchFactor(1, 4); pRightSpliter->setStretchFactor(0, 1);//右面窗口上下窗口高度比为1:4 pRightSpliter->setStretchFactor(1, 4); pSpliter->setWindowTitle(QObject::tr("Split-Wnd Demo2")); pSpliter->show(); return app.exec();
  例子3:将一个窗口拆分为左右两列,左面再拆分为上下两列,与例子2恰好相反,如下图所示:
  代码如下: qDebug("Mainframe start... "); QApplication app(argc, argv); QTextCodec::setCodecForTr(QTextCodec::codecForName(QTextCodec::codecForLocale()->name())); QTextCodec::setCodecForLocale(QTextCodec::codecForName(QTextCodec::codecForLocale()->name())); QTextCodec::setCodecForCStrings(QTextCodec::codecForName(QTextCodec::codecForLocale()->name())); QSplitter *pLeftSpliter = new QSplitter(Qt::Vertical); QTextEdit* pLeftTopEdt = new QTextEdit(pLeftSpliter); pLeftTopEdt->setText(QObject::tr("左上窗口")); QTextEdit* pLeftBtmEdt = new QTextEdit(pLeftSpliter); pLeftBtmEdt->setText(QObject::tr("左下窗口")); QSplitter *pSpliter = new QSplitter(Qt::Horizontal); QTextEdit* pRightEdt = new QTextEdit; pRightEdt->setText(QObject::tr("右窗口")); pSpliter->addWidget(pLeftSpliter); pSpliter->addWidget(pRightEdt); pSpliter->setStretchFactor(0, 4); pSpliter->setStretchFactor(1, 1);//左右宽度比为4:1 pLeftSpliter->setStretchFactor(0, 4);//左面窗口上下窗口高度比为4:1 pLeftSpliter->setStretchFactor(1, 1); pSpliter->setWindowTitle(QObject::tr("Split-Wnd Demo3")); pSpliter->show(); return app.exec();
  总结:QSplitter一次只能将一个窗口1分为2,横向竖向拆分由参数指定。要理清部件间的父子关系。有了这个思路,可以任意拆分窗口数量

硬核BootstrapBlazorTable综合演示例子知识点1。导入导出2。分页功能3。增删改查4。批量删除5。批量编辑(审核)6。列排序与列搜索7。顶部搜索实现所有列搜索8。高级搜索实现多条件搜索9。顶部与刷新与视图列10。实现文本星纪时代手机卫星通信专利获授权,魅族20系列有望搭载?去年九月发布的华为Mate50系列以及iPhone14系列由于搭载了相关的卫星通信技术受到了不少用户的关注。此后,多家手机厂商也传出了要用卫星通信技术的信息。近日,吉利手机关联公司郭明錤重申苹果iPhone15Pro系列将采用固态按钮近日,天风国际分析师郭明錤重申,苹果iPhone15Pro系列机型将配备固态音量和电源按钮。而如果这一变化受到好评,未来其他高端设备可能会效仿。据推测,这将包括iPadPro,或许良木六个月用手机完成三十多万字初稿家庭是社会的细胞,是一个社会的缩影,中华民族正是由千千万万个像我们这样普通家庭组成的。中华民族一代又一代人的奋力拼搏,一代又一代人的创造与传承,汇成了滔滔不绝延绵不断的历史长河,形不止生产线!苹果加快自研替代,涉及屏幕基带苹果科研实力是非常强的,A系列,M系列芯片几乎是行业的性能天花板,同级别芯片轻松脱颖而出。不过苹果对自研的想法越来越丰富,包括屏幕基带蓝牙芯片WiFi芯片等等都想自研,降低对供应商AirPods力推青春版,苹果想搞定下沉市场?近日,海通国际分析师JeffPu透露苹果目前正在研发AirPodsLite,希望与市面上价格更为便宜的其他TWS耳机竞争。据推测,AirPods的Lite版定价可能为129美元,换妖股是怎样炼成的(一)风来了,猪也能飞上天,风走了,掉下来的是猪,乘风顺势而为,捕捉主升浪。回顾2022年6月无人驾驶概念的市场龙头浙江世宝(002703)消息面风来了银河证券指出,深圳经济特区智能网联取消满减,2023年天猫的第一场博弈取消跨店满减,这个春节天猫的一个改变如一块重石投入湖中泛起层层涟漪。简单来说,年货节消费者在天猫上购物时,不用为了满200减30的折扣去凑单算价格,只要是参与活动的商品,都会直接显新能源汽车强势崛起,同行竞争不断,比亚迪凭什么独占鳌头?比亚迪有限公司从成立至今,一直坚持自主创新,历时数十年,就牢牢掌握了发动机变速器控制软件等新能源汽车命脉的先进技术。根据我国的专利统计,截至2019年底,比亚迪在全球范围内共申请2美三大股指低开高走图源新华社美东时间1月13日,美股连续第六个交易日收高。道琼斯工业平均指数收于34302。61点,涨幅为0。33标准普尔500种股票指数收于3999。09点,涨幅为0。40纳斯达克海化集团专利数量大幅增长专利是企业科技创新活动的晴雨表。近两年来,山东海化集团有限公司科技部与技术研发中心紧紧围绕集团公司加强技术创新的决策部署,落实集团公司加大科技投入充分挖掘和发挥人才潜力,提高创新效
一天又一天,朝朝暮暮的想念头条创作挑战赛时光匆匆,岁月变迁,新的一年,新的期盼,不在身边的爱恋,成了我一生纠缠,爱着你,想着你,却再也无缘相见,我落下了相思的眼泪,期盼着能和你朝夕相伴。一年四季,春夏秋冬,爱一个人好难我们相识在网络,那时候还没有微信,都在玩QQ,当时胡乱的加了好多人就是为了偷菜。有一天偶然一次打开了一个人的空间,里边有很多照片,还有她发的日志,都深深的吸引了我,照片里的她很漂亮降价也卖不动?苹果削减iPhone14Plus订单,出货量接近于零苹果公布2023第一季度财报显示,业绩出现大幅下滑,利润率相较前一年下滑几十亿,库克抱怨iPhone14Pro系列缺货是主要原因。但业内人士透露,iPhone14Plus销量太差也苹果手机安装TikTok详细教程之系统还原1。苹果手机配置建议苹果6以上IOS9。3以上储存空间16G以上可以在二手交易平台购买7成新以上二手手机,购买前一定要跟商家确认是否能恢复出厂设置,不能恢复的切记不能买!2。苹果手11个交易日股价翻倍,股东明知故犯偷偷清仓,恒久科技盘中跌停记者赵阳戈2月3日早盘,恒久科技(002808。SZ)股价盘中跌停,截至发稿,该股跌逾逾8。此前该股在短短数个交易日内股价翻倍。盘面显示,自1月12日至2月2日,恒久科技累计涨幅达2023兔年精选5对生肖限定潮鞋adidasNikeVansFR2任你选择年过一年,2022最终在充斥著众多联名的品牌合作底下,迎来整年以来的完美句点,当然在疫情底下,去年与以往相比确实相较冷清,少了许多外出踏青的机会,也固然让过去火热的鞋市稍显影响,不兔年伊始随想这个年还没正式过完,就参加了两场告别会,也更加深切体会到了人走茶凉的含义!这二天两场告别会,一场是熟人的,另一场是前同事的。熟人60岁不到,年轻时叱咤江湖,有点义气,也就结交了不少AirPods这么贵,为什么那么多人抢着买?看完我都想入手了AirPods目前已出到第三代了,官网显示售价1349元起,一副小小的无线耳机,高达上千元,可以说贵到让人咋舌,毕竟只是个配件,但从第一代到第三代,AirPods都从不缺买家,一直嘘!悄悄告诉你变美针相魔镜魔镜告诉我,如何才能明艳动人风姿绰约?这个心声大概是很多求美者内心无数次想寻求的答案。可是很多时候,看着小红书里美妆博主白透无瑕的肌肤,韩剧女主角明艳的美颜,好像跟自己隔着一个一文带你了解,云仓储代发货跨境电商头条创作挑战赛随着海外市场竞争的加剧,为了降低交付成本提高交付效率,越来越多的企业选择第三方跨境电商仓储代发货,也就是云仓代发货,向第三方云仓库提供存储分销服务,由仓储服务商提供外2023年将再现厄尔尼诺,影响范围广大,我国气候会有变化吗?你听说过厄尔尼诺吗?它是世界地理学术界最著名的反常自然现象,一直以来都是地理学家和爱好者们津津乐道的研究课题。从历史的规律来看,厄尔尼诺现象大约每五到七年就会发生一次,平均一次的影