当前位置: 首页 > news >正文

网站建设QQ刷赞西安网站建设技术

网站建设QQ刷赞,西安网站建设技术,浙江省火电建设公司网站,珠宝店网站项目网页设计1. Qt 控件的父子继承关系 在 Qt 中#xff0c;继承自 QWidget 的类#xff0c;通常会在构造函数中接收一个 parent 参数。 这个参数用于指定当前空间的父控件#xff0c;从而建立控件间的父子关系。 当一个控件被设置为另一控件的子控件时#xff0c;它会自动成为该父控…1. Qt 控件的父子继承关系 在 Qt 中继承自 QWidget 的类通常会在构造函数中接收一个 parent 参数。 这个参数用于指定当前空间的父控件从而建立控件间的父子关系。 当一个控件被设置为另一控件的子控件时它会自动成为该父控件的一部分且具备以下特性 子控件会随着父控件一起显示或隐藏 子控件会被包含在父控件的几何布局中 当父控件被删除时所有的子控件会被自动删除防止内存泄漏。 // .h class SessionFriendArea : public QScrollArea {Q_OBJECT public:QWidget* container; }// .cpp SessionFriendArea::SessionFriendArea(QWidget *parent): QScrollArea{parent} {container new QWidget();this-setWidget(container); }在 SessionFriendItem 的构造函数中 parent 被传递给 QScrollArea 的构造函数 —— 让 QScrollArea 成为父控件的一部分从而正确地管理其生命周期和位置。 在构造函数体中创建 container 并设置为 this 的子控件即 QScrollArea 的子控件 ​ container 会随 QScrollArea 的 显示/隐藏 而 显示/隐藏 ​ container 的生命周期与 QScrollArea 绑定当 QScrollArea 被销毁时container 也会被自动销毁。 2. QWidget 和 QLayout 在 Qt 中QWidget 和 QLayout 之间的关系是紧密且互补的。 理解它们的关系对构建复杂的用户界面统至关重要。 2.1 QWidget 简介 QWidget 是所有界面对象的基类代表了一个可以显示和交互的窗口部件控件如按钮、标签、窗口。 每个 QWidget 可以有自己的几何属性位置、大小、样式、事件处理机制等。 2.2 QLayout 简介 QLayout 是一个抽象基类用于管理一组 QWidget 的布局。 它的主要作用是自动调整这些控件的位置和大小以便它们能适应不同的窗口大小和分辨率。 常见的布局管理器QVBoxLayout 、QHBoxLayout 、QGridLayout 。 2.3 QWidget 包含 QLayout 可以通过 QWidget::setLayout(QLayout*) 方法将一个布局管理器设置给 QWidget 也可以通过 QWidget::Layout() 方法获取 QWidget 内的布局。 QWidget* widget new QWidget(); QVBoxLayout* layout new QVBoxLayout();QPushButton* btn1 new QPushButton(); btn1-setText(QString(按钮1));QPushButton* btn2 new QPushButton(); btn2-setText(QString(按钮2));layout-addWidget(btn1); layout-addWidget(btn2);widget-setLayout(layout); // 设置布局当 QWidget 被赋予一个布局时该布局会自动管理所有添加到该该布局中的子控件的位置和大小。 2.4 QLayout 包含 QWidget 可以通过 QLayout::addWidget(QWidget*) 将控件添加到布局中 也可以通过 QLayout::addLayout() 方法将一个布局嵌套在另一个布局中从而实现复杂的界面结构。 布局管理器会根据其规则垂直排列、水平排列、网格排列等自动调整这些控件的位置和大小。 int main(int argc, char *argv[]) {QApplication a(argc, argv);QWidget* widget new QWidget();QVBoxLayout* mainlayout new QVBoxLayout();QHBoxLayout* sublayout new QHBoxLayout();QPushButton* btn1 new QPushButton(按钮1);QPushButton* btn2 new QPushButton(按钮2);QPushButton* btn3 new QPushButton(按钮3);sublayout-addWidget(btn2);sublayout-addWidget(btn3);mainlayout-addWidget(btn1);mainlayout-addLayout(sublayout);widget-setLayout(mainlayout);widget-show();return a.exec(); }3. Qt 控制窗口大小方法 setFixedSize() 设置控件的固定高度和宽度 —— 使得控件的大小不会随窗口或布局管理器的变化而改变。 ​ QPushButton* btn new QPushButton(); ​ btn-setFixedSize(QSize(50, 50)); setFixedWidth() 、setFixedHeight() 分别设置控件的固定宽度和高度。setMinimunSize() 、setMaximunSize() 分别设置控件的最小尺寸和最大尺寸。setSizePolicy() 设置控件的尺寸策略定义了控件如何响应布局管理器的要求及窗口大小的变化. ​ Fixed 、Preferred 、Expanding tips 对于 QPushButton setFixedSize() 的作用是设置控件的大小setIconSize() 的作用是设置控件图标的大小在 setIcon() 后。大多数情况下调用 setFixedSize() 等方法后无需额外调用 setSizePolicy() 。 4. QScrollArea QScrollArea 是一个用于显示可滚动内容的容器控件。 它允许用户通过滚动条查看超出窗口可视范围的内容。 setWidgetResizable(bool resizable) 决定是否自动调整内部小部件的大小以适应窗口大小。verticalScrollBar() 返回与 QScrollArea 关联的垂直方向上的滚动条。horizontalScrollBar() 返回与 QScrollArea 关联的水平方向上的滚动条。
http://www.w-s-a.com/news/148066/

相关文章:

  • 高州市网站建设开发区招聘信息
  • 上海专业网站制作设计公司企业邮箱怎样注册
  • 网站建设在商标第几类网站建设 设计创意
  • 做一网站APP多少钱重庆中色十二冶金建设有限公司网站
  • 网上做效果图网站有哪些软件徐州泉山区建设局网站
  • 凯里网站制作网站篡改搜索引擎js
  • 如何使用凡科建设网站武安城乡建设网站
  • 网站建设网站及上传wordpress火车头发布
  • 有没有做网站的团队电脑版传奇网站
  • 建立企业网站公司医疗创意小产品设计
  • 深圳 做网站 车公庙免费的招标网有哪些
  • 网站在那里备案成都成华区网站建设
  • 做网站选哪家好搜索引擎优化的目标体系包括哪些
  • 做数据可视化的网站ppt2016是制作网页的软件
  • 济宁市建设工程质量监督站网站徐州网站优化推广
  • 北京网站设计多少钱php做商品网站
  • 能打开的网站你了解的彩票网站开发dadi163
  • 手机做网站价格优秀企业网站建设价格
  • 电商网站建设企业做网站的客户多吗
  • 有做思维图的网站吗西安建设市场诚信信息平台网站
  • 网站建设求职具备什么30岁学网站开发
  • 官方网站minecraft北京低价做网站
  • 网站建设报价兴田德润机械加工网络接单
  • 免费的推广网站安卓app制作平台
  • 长春火车站附近美食建设信用卡银行积分兑换商城网站
  • 网站提交网址如何备份wordpress网页
  • 龙腾盛世网站建设医院管理系统
  • 网站切换图片做背景怎么写外贸营销邮件主题一般怎么写
  • 基于html5的网站开发wordpress主题工具
  • php网站开发的成功经历公司网站现状