最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Qt實(shí)現(xiàn)UI界面純代碼示例

 更新時(shí)間:2024年01月23日 15:39:29   作者:木木夕木目心.HDS  
這篇文章主要給大家介紹了關(guān)于Qt實(shí)現(xiàn)UI界面的相關(guān)資料,使用Qt純代碼,實(shí)現(xiàn)了基本的界面,對大家學(xué)習(xí)或者使用Qt具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

1.相關(guān)信息

設(shè)置編輯框內(nèi)容的字體樣式,包括加粗、下劃線、斜體、藍(lán)色、紅色、黑色

2.界面展示

3.相關(guān)代碼

#include "dialog.h"
#include <QHBoxLayout>
#include <QVBoxLayout>
#include <QCheckBox>
#include <QRadioButton>
#include <QPlainTextEdit>
#include <QPushButton>

// 下劃線
void Dialog::do_chkBoxUnder(bool checked)
{
    QFont font = txtEdit->font();
    font.setUnderline(checked);
    txtEdit->setFont(font);
}

// 斜體
void Dialog::do_chkBoxItalic(bool checked)
{
    QFont font = txtEdit->font();
    font.setItalic(checked);
    txtEdit->setFont(font);
}

// 加粗
void Dialog::do_chkBoxBold(bool checked)
{
    QFont font = txtEdit->font();
    font.setBold(checked);
    txtEdit->setFont(font);
}

// 設(shè)置顏色
void Dialog::do_setFontColor()
{
    QPalette plet = txtEdit->palette();
    if(radioRed->isChecked()){
        plet.setColor(QPalette::Text, Qt::red);
    }else if(radioBlack->isChecked()){
        plet.setColor(QPalette::Text, Qt::black);
    }else if(radioBlue->isChecked()){
        plet.setColor(QPalette::Text, Qt::blue);
    }
    txtEdit->setPalette(plet);
}


Dialog::Dialog(QWidget *parent)
    : QDialog(parent)
{
    // 豎布局:字體樣式
    chkBoxUnder = new QCheckBox("下劃線");
    chkBoxItalic = new QCheckBox("斜體");
    chkBoxBold = new QCheckBox("加粗");
    QHBoxLayout *HLay1 = new QHBoxLayout();
    HLay1->addWidget(chkBoxUnder);
    HLay1->addWidget(chkBoxItalic);
    HLay1->addWidget(chkBoxBold);

    // 豎布局:字體顏色
    radioBlack = new QRadioButton("黑色");
    radioRed = new QRadioButton("紅色");
    radioBlue = new QRadioButton("藍(lán)色");
    QHBoxLayout *HLay2 = new QHBoxLayout();
    HLay2->addWidget(radioBlack);
    HLay2->addWidget(radioRed);
    HLay2->addWidget(radioBlue);

    // 編輯框
    txtEdit = new QPlainTextEdit();
    txtEdit->setPlainText("hello world \n 手工創(chuàng)建");
    QFont font = txtEdit->font();
    font.setPointSize(20);      // 字體大小
    txtEdit->setFont(font);

    // 確認(rèn)、取消、退出
    btnOk = new QPushButton("確定");
    btnCancel = new QPushButton("取消");
    btnClose = new QPushButton("退出");
    QHBoxLayout *HLay3 = new QHBoxLayout();
    HLay3->addStretch();
    HLay3->addWidget(btnOk);
    HLay3->addWidget(btnCancel);
    HLay3->addStretch();
    HLay3->addWidget(btnClose);

    QVBoxLayout *VLay = new QVBoxLayout();
    VLay->addLayout(HLay1);
    VLay->addLayout(HLay2);
    VLay->addWidget(txtEdit);
    VLay->addLayout(HLay3);
    setLayout(VLay);

    // 信號與槽
    connect(chkBoxUnder, SIGNAL(clicked(bool)), this, SLOT(do_chkBoxUnder(bool)));
    connect(chkBoxItalic, SIGNAL(clicked(bool)), this, SLOT(do_chkBoxItalic(bool)));
    connect(chkBoxBold, SIGNAL(clicked(bool)), this, SLOT(do_chkBoxBold(bool)));

    connect(radioRed, SIGNAL(clicked()), this, SLOT(do_setFontColor()));
    connect(radioBlack, SIGNAL(clicked()), this, SLOT(do_setFontColor()));
    connect(radioBlue, SIGNAL(clicked()), this, SLOT(do_setFontColor()));

    connect(btnOk, SIGNAL(clicked()), this, SLOT(accept()));
    connect(btnCancel, SIGNAL(clicked()), this, SLOT(reject()));
    connect(btnClose, SIGNAL(clicked()), this, SLOT(close()));

    setWindowTitle("手工打造UI");

}

Dialog::~Dialog() {}

總結(jié) 

到此這篇關(guān)于Qt實(shí)現(xiàn)UI界面的文章就介紹到這了,更多相關(guān)Qt實(shí)現(xiàn)UI界面內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • QT中QDockWidget控件的使用小結(jié)

    QT中QDockWidget控件的使用小結(jié)

    QDockWidget類提供了一個小部件,可以停靠在QMainWindow中,也可以作為桌面上的頂級窗口浮動,本文主要介紹了QT中QDockWidget控件的使用小結(jié),感興趣的可以了解一下
    2024-01-01
  • c++ sqlite3如何利用事務(wù)(BEGIN;COMMIT;)批量操作

    c++ sqlite3如何利用事務(wù)(BEGIN;COMMIT;)批量操作

    這篇文章主要介紹了c++ sqlite3如何利用事務(wù)(BEGIN;COMMIT;)批量操作,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • C++中std::vector的6種初始化方式

    C++中std::vector的6種初始化方式

    這篇文章主要介紹了C++中std::vector的6種初始化方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • c++ 盡量不要使用#define 而是用const、enum、inline替換。

    c++ 盡量不要使用#define 而是用const、enum、inline替換。

    為什么這么說呢?或許很多程序員已經(jīng)習(xí)慣在文件開始使用大量的#define語句
    2013-01-01
  • C++中指針的詳解及其作用介紹

    C++中指針的詳解及其作用介紹

    這篇文章主要介紹了C++中指針的詳解及其作用介紹,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-09-09
  • C++用boost.signal實(shí)現(xiàn)多播委托

    C++用boost.signal實(shí)現(xiàn)多播委托

    這篇文章介紹了C++用boost.signal實(shí)現(xiàn)多播委托的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06
  • Unix下C程序內(nèi)存泄漏檢測工具Valgrind的安裝與使用詳解

    Unix下C程序內(nèi)存泄漏檢測工具Valgrind的安裝與使用詳解

    以下是對Unix下C程序內(nèi)存泄漏檢測工具Valgrind的安裝與使用進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過來參考下
    2013-08-08
  • c讀取一行字符串,以及c++讀取一行字符串的實(shí)例

    c讀取一行字符串,以及c++讀取一行字符串的實(shí)例

    今天小編就為大家分享一篇c讀取一行字符串,以及c++讀取一行字符串的實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • C++記錄程序運(yùn)行時(shí)間的四種方法

    C++記錄程序運(yùn)行時(shí)間的四種方法

    在學(xué)習(xí)過程中很重要的一個必會的小技巧:計(jì)算某一段代碼的執(zhí)行時(shí)間,可以用來分析代碼的效率和算法的時(shí)間復(fù)雜度等等(個人主要是在總結(jié)各種排序算法時(shí)遇到的這個方法),本文給大家介紹了C++記錄程序運(yùn)行時(shí)間的四種方法,需要的朋友可以參考下
    2025-03-03
  • C++vector的用法你都知道嘛

    C++vector的用法你都知道嘛

    這篇文章主要為大家詳細(xì)介紹了C++中vector的用法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02

最新評論

黑河市| 天台县| 阿勒泰市| 蓬溪县| 新绛县| 五莲县| 凤阳县| 河源市| 图片| 邯郸县| 宣城市| 吉木萨尔县| 昌邑市| 英山县| 仙桃市| 高州市| 大荔县| 沾益县| 资阳市| 屯门区| 台北市| 若尔盖县| 堆龙德庆县| 黄龙县| 石渠县| 松潘县| 灵山县| 全椒县| 四平市| 湘西| 雷波县| 壤塘县| 铜山县| 平凉市| 武汉市| 新巴尔虎右旗| 赣州市| 墨玉县| 龙游县| 黔西县| 喀喇沁旗|