Qt Gui编程中两种创建窗体界面方法

一、手动编写界面代码

Qt编程中所使用的语言是面向对象的C++,在初学GUI编程时,如果仅仅依靠Qt Designer编辑器来通过拖拽一些widget来设计界面,则会很容易迷惑我们,并且很难弄懂其中所涉及的面向对象思想,也不容易弄懂Qt GUI的一个整体结构。所以在初学Qt GUI时可以通过手动编写界面代码来理解Qt 的GUI结构。

1、组合widget方法

顾名思义,组合widget方法是通过将一些控件进行组合,形成一个主窗口。在这种方法中,首先是从Qt的GUI类库中选择一个类作为主窗口的基类,如QDialog、QWidget、QMainWindow等类中选择。以QDialog类为例,以对话框类为主窗口,然后再添加需要的其它控件类成员,可以通过布局的方式将其它控件进行布局,再将最终的布局作为主窗口对话框的布局。下面以一个简单的对话框为例,相关代码如下:
#include <QtGui/QApplication>
#include <QHBoxLayout>  //布局管理器
#include <QSlider>
#include <QSpinBox>
#include <QDialog>


int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QDialog *window = new QDialog;
    window->setWindowTitle("Enter your Age");

    QSpinBox *spinBox = new QSpinBox;
    QSlider *slider = new QSlider(Qt::Horizontal);  //水平
    spinBox->setRange(0,130);
    slider->setRange(0,130);

    QObject::connect(spinBox,SIGNAL(valueChanged(int)),slider,SLOT(setValue(int)));
    QObject::connect(slider,SIGNAL(valueChanged(int)),spinBox,SLOT(setValue(int)));

    QHBoxLayout *layout = new QHBoxLayout;
    layout->addWidget(spinBox);
    layout->addWidget(slider);
    window->setLayout(layout);

    window->show();
    
    return a.exec();
}
运行结果如下,一个对话框为主窗口,在其中添加一个slider和spinBox类,并将其进行横向布局,再将布局添加到主窗口中。

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

  • 6
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值