一、新建"QT GUI",基類選擇"QDialog',取消「建立界面」函數
二、dialog.h中佈局
#ifndef DIALOG_H #define DIALOG_H #include <QDialog> #include <QLineEdit> #include <QPushButton> #include <QGridLayout> class Dialog : public QDialog { Q_OBJECT public: Dialog(QWidget *parent = 0); ~Dialog(); private: QPushButton *fontBtn; QLineEdit *fontLineEdit; QGridLayout *mainLayout; private slots: void showFont(); }; #endif // DIALOG_H
二、dialog.cpp中字體
#include "dialog.h" #include <QFontDialog> Dialog::Dialog(QWidget *parent) : QDialog(parent) { //控件初始化 fontBtn = new QPushButton; fontBtn->setText(tr("字體標準對話框")); fontLineEdit = new QLineEdit; fontLineEdit->setText(tr("welcome!")); //添加布局管理 mainLayout = new QGridLayout(this); //注意必定要有一個this mainLayout->addWidget(fontBtn, 2, 0); mainLayout->addWidget(fontLineEdit, 2, 1); //信號與槽 connect(fontBtn, SIGNAL(clicked()), this, SLOT(showFont())); } Dialog::~Dialog() { } void Dialog::showFont() { bool ok; QFont f = QFontDialog::getFont(&ok); if(ok){ fontLineEdit->setFont(f); } }
三、效果this
、code
QFont getFont
(
bool *ok; //若是"ok",返回用戶選擇的字體,不然,返回函數默認字體
QWidget *parent = 0;
);blog