//mydialog.h
#ifndef MYDIALOG_H
#define MYDIALOG_H
#include <QDialog>
class QPushButton;
class MyDialog : public QDialog
{
Q_OBJECT
public:
explicit MyDialog(QWidget *parent = 0);
signals:
public slots:
private:
QPushButton *pushButton3D;
QPushButton *pushButton2D;
};
#endif // MYDIALOG_H
//mydialog.cpp
#include "mydialog.h"
#include <QtGui/QPushButton>
#include <QtGui/QIcon>
#include <QtGui/QVBoxLayout>
MyDialog::MyDialog(QWidget *parent) :
QDialog(parent)
{
pushButton3D = new QPushButton();
//创建一个图标QIcon对象 资源文件路径可以是绝对路径 也可以是导入工程中后资源文件的路径
QIcon icon3D(":/new/ico/images/3d.ico");
//设置按钮的图标
pushButton3D->setIcon(icon3D);
pushButton2D = new QPushButton();
QIcon icon2D(":/new/ico/images/2d.ico");
pushButton2D->setIcon(icon2D);
//将按钮设置为2D平面显示 还是一个按钮 可以进行点击操作
pushButton2D->setFlat(true);
//设置按钮的文本信息
pushButton2D->setText("Test");
QVBoxLayout *layout = new QVBoxLayout();
layout->addWidget(pushButton2D);
layout->addWidget(pushButton3D);
this->setLayout(layout);
this->resize(100, 100);
this->setWindowTitle("QPushButtonDemo");
}
//main.cpp
#include <QtGui/QApplication>
#include "mydialog.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MyDialog dialog;
dialog.show();
return a.exec();
}
资源文件截图:
程序运行截图: