组件
QPushButton
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
#include <QPushButton>
#include <QDebug>
class Widget : public QWidget
{
Q_OBJECT
public:
Widget(QWidget *parent = 0);
~Widget();
private slots:
void buttonClick();
private:
QPushButton *btn;
};
#endif
#include "widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
{
this->setFixedSize(960,640);
this->setWindowTitle("应用程序");
btn = new QPushButton("按钮",this);
btn->setParent(this);
btn->setText("点击");
btn->setToolTip("按钮");
btn->setFixedSize(100,50);
btn->move((this->width()-btn->width())/2,(this->height()-btn->height())/2);
btn->setGeometry(480-50,320-25,100,50);
this->setWindowIcon(QIcon(":/img/1.png"));
btn->setStyleSheet("border-image:url(:/img/1.png);");
btn->x();
btn->y();
btn->pos();
QPushButton *btn1 = new QPushButton(QIcon(":/img/1.png"),"click",this);
connect(btn,SIGNAL(clicked(bool)),this,SLOT(buttonClick()) );
connect(btn1,SIGNAL(clicked(bool)),this,SLOT(buttonClick()) );
}
void Widget::buttonClick()
{
qDebug() << "hello world";
}
Widget::~Widget()
{
}
QLabel
#ifndef WIDGET_H
#define WIDGET_H
#include <QPushButton>
#include <QLabel>
#include <QMovie>
#include <QWidget>
class Widget : public QWidget
{
Q_OBJECT
public:
Widget(QWidget *parent = 0);
~Widget();
private slots:
void btn_click();
private:
QLabel *lab;
QPushButton *btn;
};
#endif
#include "widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
{
this->setFixedSize(960,640);
lab = new QLabel;
btn = new QPushButton;
this->lab->setParent(this);
this->btn->setParent(this);
this->lab->setFixedSize(950,500);
this->btn->setFixedSize(100,50);
this->btn->setText("点击");
this->lab->setStyleSheet("background-color:green;");
this->lab->setAlignment(Qt::AlignCenter|Qt::AlignHCenter);
this->lab->move(5,5);
this->btn->move((this->width()-this->btn->width())/2,this->lab->height()+50);
connect(btn,&QPushButton::clicked,this,&Widget::btn_click);
}
void Widget::btn_click()
{
this->lab->setText("hello world");
this->lab->setPixmap(QPixmap("1.png").scaled(lab->width(),lab->height()));
this->lab->setPixmap(QPixmap("1.png"));
QMovie *move = new QMovie();
move->setFileName("3.gif");
lab->setMovie(move);
move->start();
}
Widget::~Widget()
{
}
QLineEdit
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
namespace Ui {
class Widget;
}
class Widget : public QWidget
{
Q_OBJECT
public:
explicit Widget(QWidget *parent = 0);
~Widget();
private:
Ui::Widget *ui;
private slots:
void textChanged(QString text);
void returnPressed();
};
#endif
#include "widget.h"
#include "ui_widget.h"
#include "widget.h"
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
this->setFixedSize(640,480);
ui->lineEdit->setFixedSize(200,40);
ui->lineEdit_2->setFixedSize(ui->lineEdit->size());
ui->lineEdit_2->move(ui->lineEdit->x(),ui->lineEdit->y()+ui->lineEdit->height()+10);
ui->lineEdit_3->setFixedSize(ui->lineEdit->size());
ui->lineEdit_3->move(ui->lineEdit->x(),ui->lineEdit_2->y()+ui->lineEdit_2->height()+10);
ui->lineEdit->setPlaceholderText("用户名");
ui->lineEdit_2->setPlaceholderText("密码");
ui->lineEdit_3->setPlaceholderText("验证码");
ui->lineEdit->setAlignment(Qt::AlignRight);
ui->lineEdit_2->setAlignment(Qt::AlignRight);
ui->lineEdit_3->setAlignment(Qt::AlignRight);
ui->lineEdit_2->setEchoMode(QLineEdit::Password);
ui->lineEdit_3->setEchoMode(QLineEdit::PasswordEchoOnEdit);
connect(ui->lineEdit,&QLineEdit::textChanged,this,&Widget::textChanged);
connect(ui->lineEdit_2,&QLineEdit::returnPressed,this,&Widget::returnPressed);
connect(ui->lineEdit_3,&QLineEdit::selectionChanged,this,[&](){
ui->label->setText(ui->lineEdit_3->selectedText());
});
}
Widget::~Widget()
{
delete ui;
}
void Widget::textChanged(QString text)
{
ui->label->setText(text);
}
void Widget::returnPressed()
{
ui->label->setText(ui->lineEdit_2->text());
}
QCheckBox
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
namespace Ui {
class Widget;
}
class Widget : public QWidget
{
Q_OBJECT
public:
explicit Widget(QWidget *parent = 0);
~Widget();
private:
Ui::Widget *ui;
};
#endif
#include "widget.h"
#include "ui_widget.h"
#include <QDebug>
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
connect(ui->checkBox,&QCheckBox::stateChanged,this,[&](int state){
qDebug() << state;
});
connect(ui->pushButton,&QPushButton::clicked,this,[&](){
if(ui->checkBox->isChecked())
{
ui->label->setText(ui->lineEdit->text());
}
else
{
ui->checkBox->setCheckState(Qt::Checked);
}
});
}
Widget::~Widget()
{
delete ui;
}
QRadioButton
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
#include <QGroupBox>
namespace Ui {
class Widget;
}
class Widget : public QWidget
{
Q_OBJECT
public:
explicit Widget(QWidget *parent = 0);
~Widget();
private slots:
void on_pushButton_clicked();
private:
Ui::Widget *ui;
};
#endif
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
}
Widget::~Widget()
{
delete ui;
}
void Widget::on_pushButton_clicked()
{
if(ui->radioButton->isChecked())
{
ui->label->setText("A");
}
if(ui->radioButton_2->isChecked())
{
ui->label->setText("B");
}
if(ui->radioButton_3->isChecked())
{
ui->label->setText("C");
}
if(ui->radioButton_4->isChecked())
{
ui->label->setText("D");
}
QGroupBox group;
}
其他
QLayout
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
#include <QPushButton>
#include <QTextEdit>
#include <QLayout>
namespace Ui {
class Widget;
}
class Widget : public QWidget
{
Q_OBJECT
public:
explicit Widget(QWidget *parent = 0);
~Widget();
private:
Ui::Widget *ui;
private:
QPushButton *btn_1;
QPushButton *btn_2;
QPushButton *btn_3;
QPushButton *btn_4;
QPushButton *btn_5;
QTextEdit *text;
QHBoxLayout *hlayout;
QVBoxLayout *vlayout;
QGridLayout *glayout;
};
#endif
#include "