首页 > 其他分享 >Qt 布局中控件重叠、挤压的解决方法

Qt 布局中控件重叠、挤压的解决方法

时间:2024-03-18 14:33:57浏览次数:18  
标签:控件 Qt 预览 QMainWindow 布局 C++ 挤压

问题描述:

  在Qt Designer中设计布局时,对所有控件使用QGridLayout、QHBoxLayout或QVBoxLayout布局设置。可以正常预览(Preview),但C++编译后,所有控件挤到一起,布局设置失效。

问题解析:

  预览时正常,说明不是Qt的问题,应该与C++代码有关。

问题解决:

  查看与ui关联的代码,发现这个窗口继承类QMainWindow()。

  “我的这个类继承于QMainWindow,这个类有自己默认的布局管理器,所以我这个布局管理就无效,需要进行指定。”

  因为不知道如何指定布局,所以我换了个思路:将继承类改为QDialog(),问题解决!

标签:控件,Qt,预览,QMainWindow,布局,C++,挤压
From: https://www.cnblogs.com/ybqjymy/p/18080330

相关文章

  • Qt QScrollArea滚动条不出现问题
    问题在做仿B站标签创建框时候,用到了ScrollArea,平时这个控件很少用,所以这次使用时候又遇到了滚动问题。我直接往scroll里丢了一个layout,但是无论我layout怎么撑大,scroll始终没有出现滚动条。所以我试着打印scroll内部的widget的size,结果直接报错。1QScrollAreaarea=newQ......
  • 【QT+QGIS跨平台编译】之八十二:【QGIS_Gui跨平台编译】—【错误处理:QgsExpressionCont
    文章目录一、未定义基类QgsExpressionContextGenerator二、错误处理一、未定义基类QgsExpressionContextGenerator报错信息二、错误处理第33行增加:#include"qgsexpressioncontextgenerator.h"......
  • qt内存管理
    #include"mainwindow.h"#include"ui_mainwindow.h"#include<QDebug>MainWindow::MainWindow(QWidget*parent):QMainWindow(parent),ui(newUi::MainWindow){ui->setupUi(this);}MainWindow::~MainWindow(){d......
  • Qt QTableWidget 设置列宽行高大小的几种方式及其他常用属性设置
    效果:1.列宽、行高自动分配1//列宽自动分配2tableWidget.horizontalHeader().sectionResizeMode(QHeaderView::Stretch)3//行高自动分配4tableWidget.verticalHeader().SectionResizeMode(QHeaderView::Stretch)2.固定值tableWidget.horizontalHeader().SectionResi......
  • Qt QLable 字符过长省略
    前言:项目中常用到字符过长问题,Qt默认的省略并不好用,不是自己想要的;QFontMetri可使用QFontMetri当text的像素宽度超过width,将返回字符串的一个省略版本取决于mode。否则将返回原字符串;mode:1enumTextElideMode{2ElideLeft,3ElideRight,4......
  • QT5.14.2 探秘Qt信号槽奥秘--让对象间通信如虎添翼
    一、前言在当今这个万物互联的时代,对象间通信无疑是编程领域中最为基础也最为重要的问题。作为知名的跨平台开发框架,Qt自然也需要解决这一问题。于是,Qt巧妙地提出了信号与槽(Signals&Slots)这一机制,以观察者模式的思路让对象间通信变得行云流水。那么,Qt信号与槽的本质......
  • Qt QTableView、QTableWidget设置表头
    以下是两个设置表头的不同方法:QTableWidget:1//设置表头2QStringListheardList;//表头3heardList<<QString::fromLocal8Bit("接收")<<QString::fromLocal8Bit("发送");4ui.tableWidget>setColumnCount(heardList.count());5ui.tabl......
  • Qt QTableView和QTableWidget之间的联系 和 区别?什么时候该用QTableView,什么时候该用Q
    QTableView和QTableWidget是Qt中用于显示和编辑表格数据的两个不同的部件,它们之间存在一些重要的区别:一、主要区别是:QTableView可以使用自定义的数据模型来显示内容(也就意味着使用时先要通过setModel来绑定数据源),而QTableWidget则只能使用标准的数据模型。二、不同角度......
  • C++ Qt开发:QTcpSocket网络通信组件
    Qt是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍如何运用QTcpSocket组件实现基于TCP的网络通信功能。QTcpSocket和QTcpServer是Qt中用于实现基于T......
  • Qt/C++监控推流设备推流/延迟极低/实时性极高/rtsp/rtmp推流/hls/flv/webrtc拉流/调整
    一、前言算下来这个推流的项目作品写了有四年多了,最初第一个版本只有文件点播的功能,用的纯QTcpSocket通信实现,属于比较简单的功能。由于文件点播只支持文件形式的推流,不支持网络流或者本地设备采集,所以迫切需要打破这个瓶颈,而后加入核心的网络推流功能,这也是本项目的核心功能,不仅......