QT窗口

来源:互联网 发布:c语言强制转换 编辑:程序博客网 时间:2024/05/11 03:51

一、  

GUI: Graphic User Interface

           图形化    用户   界面

例1显示"hello,world"的标签

#include<QtGui/QApplication>

#include<QtGui/QLabel>

int main(int argc,char* argv[])

{

QApplication  a(argc,argv);

     QLabel   label("hello,world\n");

label.show();

return a.exec();

}

二、

在QT中,把窗口称为Widget

不仅仅是带边框的窗口叫Widget,其他的所有界面组件,例如,工具栏、按钮、文本框、下拉列表、复选框,都叫Widget,他们都继承与一个共同的父类:QWidegt。

窗口的任务:

(1)把各个空间组合起来,放在一个大窗体中。(Layout,布局)

(2)添加事件处理,使得窗口可以运作(Signal&Slot,事件处理)

例2显示一个设定好位置和大小的顶级窗口

#include<QtGui/QApplication>

#include<QtGui/QWidget>

int main(int agc,char* argv[])

{

QApplication a(argc,argv);

QWidget* w=new QWidget();

w->setGeometry(100,100,400,300);

w->setWindowTitle("hello,world");

w->show();

return a.exec();

}

三、

顶级窗口(top level widget):一个标准的窗口,带边框、标题栏、若干按钮。(独立)

子窗口:在窗口里面的窗口,例如,按钮,文本框这种控件,都是子窗口。(不独立,随着父窗口移动)

例3显示一个窗口并移动到一个位置

#include <QtGui/QApplication>

#include<QtGui/QWidget>

int main(int argc,char* argv[])

{

QApplication a(argc,argv);

QWidget w;

w.setGeometry(0,0,400,300);//其中的位置不含标题栏,位置是文本框的左上角

w.move(100,50);//移动的位置包含标题栏

w.show();

  return a.exec();

}

四、定义一个窗口

目标:实现一个窗口界面,向其中添加一个按钮控件

步骤:

1、派生QWidget

2、创建Button对象,添加到父窗口

3、设置按钮与位置的大小

4、应用<QPushButton>

5、添加成员变量QPushButton* m_button;

6、在构造函数里创建控件  m_button=new QPushButton(this);

7、初始化控件:label,大小,位置

例3创建一个窗口并添加按钮和文本框

#ifndef MYWIN_H

#define MYWEN_H

#include<QWidget>

#include<QPushButton>

#include<QLineEdit>

#include<QPlainTextEdit>

class MyWin :public QWidget

{

Q_OBJECT

public:

MyWin(QWidget* parent);

~MyWin();

private:

QPushButton* m_button;

QLineEdit* m_lineEdit;

QPlainTextEdit* m_textEdit;

}



#include "MyWin.h"

MyWin::MyWin(QWidget *parent):QWidget(parent)

{

m_lineEdit=new QLineEdit(this);

m_lineEdit->setGeometry(0,0,300,50);

m_button=new QPushButton(this);

m_button->setText("hello,qt");

m_button->setGeometry(310,0,90,50);

m_textEdit=new QPlainText(this);

m_textEdit->setGeometry(0,60,400,240);

}

MyWin::~MyWin()

{

}

#include<QtGui/QApplication>

#include "MyWin.h"

int main(int argc,char *argv[])

{

    QApplication a(argc,argv);

    MyWin  w(NULL);

    w.setGeometry(100,100,400,300);

    w.show();

    return a.exec();

}

原创粉丝点击