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

湖南湘信建设工程有限公司网站全渠道营销的概念

湖南湘信建设工程有限公司网站,全渠道营销的概念,佛山网站建设开发,天河岗顶棠下上社网站建设在 Qt 中,QSizePolicy 类用于描述一个控件在布局中如何分配空间,它定义了控件在水平和垂直方向上对空间的需求和响应策略。以下是对 QSizePolicy 策略的详细介绍: 基本概念 QSizePolicy 包含两个主要的属性:Policy(策…

在 Qt 中,QSizePolicy 类用于描述一个控件在布局中如何分配空间,它定义了控件在水平和垂直方向上对空间的需求和响应策略。以下是对 QSizePolicy 策略的详细介绍:

基本概念

QSizePolicy 包含两个主要的属性:Policy(策略)和 Stretch Factor(伸缩因子)。策略定义了控件在布局中如何调整大小,伸缩因子则决定了在多个控件分配空间时,各个控件所占空间的相对比例。

常见的策略类型

1. Fixed

  • 描述:控件的大小是固定的,不会根据布局的大小变化而改变。无论布局如何调整,控件始终保持其 sizeHint() 所返回的大小。
  • 示例

QPushButton *button = new QPushButton("Fixed Button");
QSizePolicy policy = button->sizePolicy();
policy.setHorizontalPolicy(QSizePolicy::Fixed);
policy.setVerticalPolicy(QSizePolicy::Fixed);
button->setSizePolicy(policy);
2. Minimum

  • 描述:控件的大小可以大于或等于其 sizeHint() 所返回的大小,但不能小于该值。布局会尽量满足控件的最小大小需求。
  • 示例

QLabel *label = new QLabel("Minimum Label");
QSizePolicy policy = label->sizePolicy();
policy.setHorizontalPolicy(QSizePolicy::Minimum);
policy.setVerticalPolicy(QSizePolicy::Minimum);
label->setSizePolicy(policy);
3. Maximum

  • 描述:控件的大小可以小于或等于其 sizeHint() 所返回的大小,但不能大于该值。布局会尽量限制控件的大小不超过其最大可能大小。
  • 示例

QLineEdit *lineEdit = new QLineEdit();
QSizePolicy policy = lineEdit->sizePolicy();
policy.setHorizontalPolicy(QSizePolicy::Maximum);
policy.setVerticalPolicy(QSizePolicy::Maximum);
lineEdit->setSizePolicy(policy);
4. Preferred

  • 描述:控件的首选大小是其 sizeHint() 所返回的大小,但可以根据布局的需要进行调整。布局会优先给控件分配其首选大小的空间,但在必要时可以缩小或放大控件。
  • 示例

QTextEdit *textEdit = new QTextEdit();
QSizePolicy policy = textEdit->sizePolicy();
policy.setHorizontalPolicy(QSizePolicy::Preferred);
policy.setVerticalPolicy(QSizePolicy::Preferred);
textEdit->setSizePolicy(policy);
5. Expanding

  • 描述:控件会尽可能地占用布局中多余的空间。与 Preferred 不同的是,Expanding 控件会主动去争取更多的空间,而不仅仅是接受分配的空间。
  • 示例

QListWidget *listWidget = new QListWidget();
QSizePolicy policy = listWidget->sizePolicy();
policy.setHorizontalPolicy(QSizePolicy::Expanding);
policy.setVerticalPolicy(QSizePolicy::Expanding);
listWidget->setSizePolicy(policy);
6. MinimumExpanding

  • 描述:控件的大小不能小于其 sizeHint() 所返回的大小,并且会尽可能地占用布局中多余的空间。它结合了 Minimum 和 Expanding 的特点。
  • 示例

QTreeWidget *treeWidget = new QTreeWidget();
QSizePolicy policy = treeWidget->sizePolicy();
policy.setHorizontalPolicy(QSizePolicy::MinimumExpanding);
policy.setVerticalPolicy(QSizePolicy::MinimumExpanding);
treeWidget->setSizePolicy(policy);
7. Ignored

  • 描述:控件会忽略其 sizeHint() 所返回的大小,完全根据布局的大小进行调整。布局会随意改变控件的大小,而不考虑其自身的大小需求。
  • 示例

QFrame *frame = new QFrame();
QSizePolicy policy = frame->sizePolicy();
policy.setHorizontalPolicy(QSizePolicy::Ignored);
policy.setVerticalPolicy(QSizePolicy::Ignored);
frame->setSizePolicy(policy);

伸缩因子(Stretch Factor)

伸缩因子用于在多个控件之间分配多余的空间。例如,在一个水平布局中有两个控件,一个控件的伸缩因子为 1,另一个控件的伸缩因子为 2,那么在分配多余空间时,第二个控件会得到的空间是第一个控件的两倍。

QHBoxLayout *layout = new QHBoxLayout();
QPushButton *button1 = new QPushButton("Button 1");
QPushButton *button2 = new QPushButton("Button 2");QSizePolicy policy1 = button1->sizePolicy();
policy1.setHorizontalPolicy(QSizePolicy::Expanding);
button1->setSizePolicy(policy1);QSizePolicy policy2 = button2->sizePolicy();
policy2.setHorizontalPolicy(QSizePolicy::Expanding);
button2->setSizePolicy(policy2);layout->addWidget(button1, 1); // 伸缩因子为 1
layout->addWidget(button2, 2); // 伸缩因子为 2

分三步走。先获取控件旧的策略, 然后设置新的策略, 最后将策略挂载到控件上

http://www.cadmedia.cn/news/13314.html

相关文章:

  • 网页图片不显示都是叉防疫管控优化措施
  • 英雄联盟手游小程序被投诉北京seo公司华网白帽
  • 百度做网站找谁在线seo超级外链工具
  • 洛阳市住房和城乡建设局网站廊坊网络推广公司
  • 网站怎么收录网站排名优化培训哪家好
  • 公司注册查询网站优化网站制作方法大全
  • 六盘水网站建设求职简历廊坊优化外包
  • 公司名称logo设计seo中国官网
  • 徐州小程序开发网站关键词优化方案
  • 建站 报价seo网络推广知识
  • 企业网站建设457216336站外推广平台有哪些
  • 免费b2b网站平台网站设计与开发
  • 济南网站建设sdjy6免费b站推广网站2022
  • 湛江网站设计模板视频竞价推广代运营服务
  • 网站建设实验目的十大销售管理软件排行榜
  • 杭州富阳区网站建设公司广州seo关键词优化外包
  • 学生登录入口旅游企业seo官网分析报告
  • 随县最新疫情最新消息seo搜索引擎优化平台
  • 小程序开发工具代理平台搜索引擎优化的完整过程
  • 河北网站建设多少钱关键词排名快照优化
  • 湖北黄石网站建设推广app赚佣金
  • 新闻网站建设毕业设计如何做网站关键词优化
  • 好看的论坛网站模板北京发生大事了
  • 灯饰网站建设网络营销活动方案
  • 外贸网站建设哪里做得好上海关键词优化方法
  • 聊城网站建设服务好长春做网络优化的公司
  • 网站策划包括哪些内容网站软件下载大全
  • 东阳建设网站谷歌搜索引擎免费入口
  • 可以做用户调研的网站深圳网站建设开发公司
  • 国家税务总局网上办税服务平台快速网站排名优化