zoukankan      html  css  js  c++  java
  • QT学习记录之控件布局

    作者:朱金灿

    来源:http://blog.csdn.net/clever101

        

            想到控件布局就会想到Windows编程中要实现对话框上的控件的合理布局是一件多么艰难的事情。对此QT提出了一个很方便的解决方案。



    Qt有三个主要的布局管理器:

    QHBoxLayout:水平排列控件。

    QVBoxLayout:垂直排列控件。

    QGridLayout: 按矩阵方式排列控件。

          下面以一个简单的例子说明QHBoxLayout的用法:

    #include "stdafx.h"
    #include <QtGui/QApplication>
    
    int main(int argc, char *argv[])
    {
    	QApplication a(argc, argv);
    
    	QWidget* pWin = new QWidget;
    	pWin->setWindowTitle("Enter Your age");
        QSpinBox* pSpinBox = new QSpinBox();
    	pSpinBox->setRange(0,130);
    	pSpinBox->setValue(35);
    	QSlider* pSlider = new QSlider(Qt::Horizontal);
        pSlider->setRange(0,130);
        QHBoxLayout* pLayout = new QHBoxLayout;
    	pLayout->addWidget(pSpinBox);
    	pLayout->addWidget(pSlider);
    	pWin->setLayout(pLayout);
    	pWin->show();
    
    	return a.exec();
    }
    

        效果图如下:


          我们把QHBoxLayout* pLayout = new QHBoxLayout;替换为QVBoxLayout* pLayout = new QVBoxLayout;看看效果怎么样:


           可以看到QHBoxLayout实际上保证每个控件按照统一的高度横向排列,而QVBoxLayout是保证每个控件按照统一的宽度纵向排列。这样是不是比Windows编程中控件布局方便多了!




  • 相关阅读:
    notepad++插件 small
    js中面向对象 small
    #九阴真经#优选配置渲染流程简要分析[Flexi引擎]
    gkENGINE HDR流程简析
    新的开始
    以前的一些画
    gkENGINE 开发两年半总结(上)
    gkENGINE跨平台的问题总结
    win7下安装xp双系统
    Hadoop0.20.2+ Nutch1.2+Tomcat7——分布式搜索配置
  • 原文地址:https://www.cnblogs.com/lanzhi/p/6470283.html
Copyright © 2011-2022 走看看