zoukankan      html  css  js  c++  java
  • 填充 Layout 的多余部分

    1. 使用QSpaceritem填充布局的多余部分,但当试图 delete QSpaceritem 对象时,程序就出错。代码如下:
       1:  QHBoxLayout *layout = new QHBoxLayout();
       2:  QSpacerItem *spacer = new QSpacerItem();
       3:  layout ->addItem(spacer);
       4:  spacerList.append(spacer); 
       5:   
       6:  ...
       7:   
       8:  while(!spacerList.isEmpty())
       9:  {
      10:      delete spacerList.takeFirst();
      11:  }

    为什么会这样呢?

    PS: 会删除spacer是因为这些是动态生成的,在同一个Layout里面切换内容时,需要删除掉Layout本来的内容。

    2. 因为上面问题还没有解决,所以使用了另一种方法:

       1:  QWidget* spacer = new QWidget();
       2:  spacer->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);

    创建上面一个 widget 来代替 spacer, Lucky, it works perfectly.

     

    Technorati Tags: Qt,QSpaceritem,layout

    完结
  • 相关阅读:
    C#计算某一些任务的执行时间(消耗时间)
    C#打印条码的几种方式
    使用escape编码地址栏中的中文字符
    SQL 批量删除数据表
    弹出层并锁定页面
    后台输出HTML
    C# 十进制与十六进制互转
    SQL判断临时表是否存在
    SQL Server 字符串处理
    Vue文件跳转$router传参数
  • 原文地址:https://www.cnblogs.com/linger/p/2022192.html
Copyright © 2011-2022 走看看