当前位置: 技术问答>linux和unix
一个关于Qt的问题。。。
来源: 互联网 发布时间:2016-07-06
本文导语: 请大牛们帮我看看。。。 刚开始学习Qt, 模仿着编写了一个程序,但是出现了错误,希望好心人帮我看看,指点指点,呵呵。。。 我想练习下布局,打算写个窗口,窗口的上方显示一个label:“select the country”,下...
请大牛们帮我看看。。。
刚开始学习Qt, 模仿着编写了一个程序,但是出现了错误,希望好心人帮我看看,指点指点,呵呵。。。
我想练习下布局,打算写个窗口,窗口的上方显示一个label:“select the country”,下方:左下边方是一个listbox,右下方是垂直布局的三个按钮(ok,Cancel, Help),但是好像是继承layout出错,不知道怎么改
程序代码为:
先定义了一个头文件:Layout.h
#include
#include
class Layout : public QMainWindow
{
Q_OBJECT
public:
Layout(QWidget *parent = 0, const char *name = 0);
private slots:
void Clicked();
};
Layout类的实现如下:Layout.cpp
#include "Layout.h"
#include
#include
#include
#include
#include
#include
Layout::Layout(QWIdget *parent, const char *name) : QMainWindow(parent, name)
{
QWidget *widget = new QWidget(this);
setCentralWidget(widget);
QVBoxLayout *buttonBox = new QVBoxLayout(widget, 1, 6, "bottonBox");
QPushButton *button = new QPushButton("Cancel", this);
buttonBox->addWidget(new QPushButton("OK", this));
buttonBox->addWidget(button);
buttonBox->addStretch(1);
buttonBox->addWidget(new QPushButton("Help", this));
connect(button, SIGNAL(clicked()), this, SLOT(Clicked()));
QListBox *countryList = new QListBox(this);
countryList->insertItem("Canada");
countryList->insertItem("China");
countryList->insertItem("USA");
QHBoxLayout *middleBox = new QHBoxLayout(11);
middleBox ->addWidget(countryList);
middleBox ->addLayout(buttonbox);
QVBoxLayout *topLevelBox = new QVBoxLayout(this, 6, 11);
topLevelBox -> addWidget(new QLabel("select a country", this));
topLevelBox->addLayout(middleBox);
}
void Layout::Clicked(void)
{
std::cout
刚开始学习Qt, 模仿着编写了一个程序,但是出现了错误,希望好心人帮我看看,指点指点,呵呵。。。
我想练习下布局,打算写个窗口,窗口的上方显示一个label:“select the country”,下方:左下边方是一个listbox,右下方是垂直布局的三个按钮(ok,Cancel, Help),但是好像是继承layout出错,不知道怎么改
程序代码为:
先定义了一个头文件:Layout.h
#include
#include
class Layout : public QMainWindow
{
Q_OBJECT
public:
Layout(QWidget *parent = 0, const char *name = 0);
private slots:
void Clicked();
};
Layout类的实现如下:Layout.cpp
#include "Layout.h"
#include
#include
#include
#include
#include
#include
Layout::Layout(QWIdget *parent, const char *name) : QMainWindow(parent, name)
{
QWidget *widget = new QWidget(this);
setCentralWidget(widget);
QVBoxLayout *buttonBox = new QVBoxLayout(widget, 1, 6, "bottonBox");
QPushButton *button = new QPushButton("Cancel", this);
buttonBox->addWidget(new QPushButton("OK", this));
buttonBox->addWidget(button);
buttonBox->addStretch(1);
buttonBox->addWidget(new QPushButton("Help", this));
connect(button, SIGNAL(clicked()), this, SLOT(Clicked()));
QListBox *countryList = new QListBox(this);
countryList->insertItem("Canada");
countryList->insertItem("China");
countryList->insertItem("USA");
QHBoxLayout *middleBox = new QHBoxLayout(11);
middleBox ->addWidget(countryList);
middleBox ->addLayout(buttonbox);
QVBoxLayout *topLevelBox = new QVBoxLayout(this, 6, 11);
topLevelBox -> addWidget(new QLabel("select a country", this));
topLevelBox->addLayout(middleBox);
}
void Layout::Clicked(void)
{
std::cout
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
站内导航:
特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!