zoukankan      html  css  js  c++  java
  • qt布局管理-缩放、多窗口切换

    1. 关于缩放的布局
    • 所有控件要求与主窗口同时缩放,那么在所有控件设置好布局后,最后点击最外侧的主控件,选择水平布局或者垂直布局即可。
    • 另外每个空间的属性可更改,如SizePolicy用于设置空间是否可缩放等(如希望缩放,则选择expanding)。
    1. 同一主窗口下的多窗口切换
    • 可以利用QStackedLayout类进行堆叠放置,然后利用stackLayout->setCurrentIndex(n)来控制显示的页面。因为该类设置仅显示一张画面,满足需求。在新增好布局后再在主窗口下重新设置QVBoxLayout网状布局,一定要再定义一个QWidget,然后在其基础上添加已设置好的布局Layout,最后再widget->setLayout(Layout);
    1.  关于单击QTreeWidget不同子项如何进行响应的参考回答,如下代码:
     1 //这是方法一:
     2 //适用于子节点较少时
     3 bool eventFilter(QObject * pObject, QEvent * pEvent)
     4 {
     5     if(QEvent::MouseButtonPress == pEvent.type() /* 判断是不是按键事件 */)
     6     {
     7         QMouseEvent *pMouseEvent = static_cast<QMouseEvent*>(pEvent);
     8         if(Qt::RightButton == pMouseEvent->button()  /* 判断是不是右键按下 */)
     9         {
    10             if(pObject == **  /* 判断 pObject是否等于某个treeWidgetItem*/)
    11                 {
    12                   /* 显示不同的菜单 */
    13                 }
    14         }
    15            
    16     } 
    17 }
    18  
    19 //方法二:
    20 //就是继承,重载按键事件
    21 //适用于子节点较多,以及子节点右键菜单多而不同情况

    另一种回答:

    利用子节点是否有父节点来判断,点击节点是否响应槽函数。如:

    QTreeWidgetItem *parent = item->parent();//获得父节点
      if(NULL==parent)
          return;
    

     QList是一个最常用的容器类,用它定义一个对象通常是 

    QList <int>list;
    其中int代表给定的类型,也就是说现在定义了一个有符号整形的容器,让后给里面装值
    list<<2<<3<<4<<6;
    现在就可以使用foreach(int i,list)这样就可以遍历整个容器了.分别将容器中的值放到循环遍历放到变量中。
        QList <int>list;
        list <<2<<4<<1<<6;
        foreach(int str,list)
        qDebug()<<str<<endl;
    

    Qt提供的一种格式化字符串输出的函数arg():
    1. str=QString(“%1 %2 (%3s-%4s)”)
    2. arg(“permissive”).arg(“society”).arg(1950).arg(1970);
    这段代码中,%1, %2, %3, %4作为占位符,将被后面的arg()函数中的内容依次替换,比如%1将被替换成permissive,%2将被替换成society,%3将被替换成1950,%4将被替换曾1970,最后,这句代码输出为:permissive society (1950s-1970s). arg()函数比起sprintf()来是类型安全的,同时它也接受多种的数据类型作为参数,都会被转化为QString类型然后进行替换。

    待更新...

  • 相关阅读:
    ==和equals的区别
    layui渲染Select列表
    layui中使用自定义数据格式对数据表格进行渲染
    java中使用javaMail工具类发送邮件
    上手spring boot项目(三)之spring boot整合mybatis进行增删改查
    上手spring boot项目(四)之springboot如何返回json数据
    遍历json数据的几种方式
    springboot整合thymleaf模板引擎
    上手spring boot项目(二)之spring boot整合shiro安全框架
    上手spring boot项目(一)之如何在controller类中返回到页面
  • 原文地址:https://www.cnblogs.com/ruoke9/p/8571997.html
Copyright © 2011-2022 走看看