青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Cpper
C/C++高級工程師 Android高級軟件工程師 IT集成工程師 音頻工程師 熟悉c,c++,java,c#,py,js,asp等多種語言 程序猿
學習QT的一個原因是貌似QT做出來的界面比較絢麗
我倒想看看能做出來啥樣子的

從QT窗體布局說起
凡是窗體布局無非就是如何擺放的問題
1.想當然如果擺放有2個方式一個是所見即所得,一個是使用布局管理器
先說后者吧
2.QT有好幾種布局管理器無非就是啥子流式布局,格子布局等等
從這個層級上說軟件界面都是布局嵌套的
3.布局和控件的關系
   一般是一個布局對應于一個控件容器(或者頂層控件)
   使用當前布局管理器加掛子控件(容器)即可
然后給當前控件掛上布局管理器即可
下面是一個簡單的QT Layout的例子(從QT例子改的)
class Dialog : public QDialog
{
    Q_OBJECT
public:
    Dialog();
private:
    
void createHorizontalGroupBox();

    
enum {button_number = 4};
    QGroupBox 
*groupbox;
    QPushButton 
*buttons[button_number];
    QDialogButtonBox 
*buttonBox;
};
實現(xiàn)如下:
#include <QtGui>

#include 
"dialog.h"

//! [0]
Dialog::Dialog()
{
    createHorizontalGroupBox();

    buttonBox 
= new QDialogButtonBox(QDialogButtonBox::Ok
                                     
| QDialogButtonBox::Cancel);

    connect(buttonBox, SIGNAL(accepted()), 
this, SLOT(accept()));
    connect(buttonBox, SIGNAL(rejected()), 
this, SLOT(reject()));

    QVBoxLayout 
*mainLayout = new QVBoxLayout;
    mainLayout
->addWidget(groupbox);
    mainLayout
->addWidget(buttonBox);
    setLayout(mainLayout);

    setWindowTitle(tr(
"LayoutTest"));
}

void Dialog::createHorizontalGroupBox()
{
    groupbox 
= new QGroupBox(tr("Layout Test"));
    QHBoxLayout 
*layout = new QHBoxLayout;

    buttons[
0= new QPushButton(tr("Button1"));
    buttons[
1= new QPushButton(tr("Button2"));
    buttons[
2= new QPushButton(tr("Button3"));
    buttons[
3= new QPushButton(tr("Button4"));

    
for(int i = 0;i<button_number;i++)
        layout
->addWidget(buttons[i]);
    groupbox
->setLayout(layout);
}

幾個知識點:
1.groupbox = new QGroupBox(tr("Layout Test"));
Layout Test 是個文本這個無須解釋
那tr呢?查查資料知道是為了支持多語言
先知道即可以后使用的話在具體查查吧
2.QDialogButtonBox是個什么東西
   看看最終的程序界面吧
   原來是對話框的確認和取消按鈕
    再看信號槽函數(shù)無非就是綁定按鈕到操作函數(shù)
    connect(buttonBox, SIGNAL(accepted()), this, SLOT(accept()));
    connect(buttonBox, SIGNAL(rejected()), this, SLOT(reject()));
    那accepted和accept函數(shù)有啥區(qū)別?
    看看文檔
    accept函數(shù)的解釋是:
Hides the modal dialog and sets the result code to Accepted
  accpeted函數(shù)的解釋是:
This signal is emitted when the dialog has been accepted either

在說說QT皮膚
學習QT的主要目的就是想做做臉蛋好看好的軟件界面
那就試試看吧
查到的QT有一個名叫QSS(CSS?)的文件可以原來換膚
那就改改看吧
#include <QApplication>
#include 
<QFile>
#include 
<QStyleFactory>
#include 
<QTextStream>
#include 
"dialog.h"

void setSkin(QApplication* const app, QString const &skinFile);

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    setSkin(
&app ,"skin.qss");
    Dialog dialog;
    dialog.show();
    
return app.exec();
}

void setSkin(QApplication* const app, QString const &skinFile)
{
    QFile qss(skinFile);
    qss.open(QFile::ReadOnly);
    app
->setStyleSheet(qss.readAll());
    qss.close();
}
相應的QSS文件如下:
 QPushButton 
 
{
    color
:red;
    background
:url(setting.png)
 
}
這里把PushButton的文本顏色設置為紅色
同時把它的背景設置為圖片stting.png

完了
PS:如果學習新知識?
囫圇吞棗比較適合快速學習

posted on 2011-03-13 12:08 ccsdu2009 閱讀(5486) 評論(2)  編輯 收藏 引用 所屬分類: 雜項QT編程
Comments
  • # re: QT學習筆記-2.QT窗體布局和皮膚加載
    孫霧
    Posted @ 2011-03-15 09:35
    大家現(xiàn)在在實際開發(fā)(c++)中用的哪種IDE比較多呢,  回復  更多評論   
  • # re: QT學習筆記-2.QT窗體布局和皮膚加載
    ccsdu2009
    Posted @ 2011-03-15 10:04
    @孫霧
    之前一直沒做過界面編程的
    現(xiàn)在打算學習QT來開發(fā)絢麗界面  回復  更多評論   
 
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲精品女av网站| 亚洲欧美日韩精品| 亚洲日本久久| 欧美日韩国产va另类| 亚洲欧美日韩精品在线| 午夜精品福利视频| 亚洲人午夜精品免费| 国产女主播一区二区| 久久久亚洲成人| 国产区在线观看成人精品| 另类春色校园亚洲| 好吊妞**欧美| 欧美大秀在线观看| 国产精品高潮呻吟视频| 久久久久久亚洲精品中文字幕| 久久一日本道色综合久久| 一区二区三区成人| 久久久激情视频| 亚洲一区在线观看免费观看电影高清 | 久久女同精品一区二区| 欧美二区不卡| 久久国产欧美| 欧美日韩黄视频| 久久亚洲精品网站| 欧美午夜一区二区福利视频| 欧美成人综合一区| 国产婷婷成人久久av免费高清 | 黄色工厂这里只有精品| 亚洲美女在线看| 亚洲第一色在线| 久久激情中文| 午夜一区在线| 欧美视频官网| 亚洲激情专区| 在线观看日产精品| 午夜精品电影| 欧美一区二区视频在线观看| 欧美小视频在线| 亚洲欧洲精品一区二区| 在线观看日韩www视频免费| 亚洲欧美日韩成人高清在线一区| 夜夜嗨av一区二区三区四季av| 久久精品视频一| 久久久国产精品一区二区中文| 国产精品白丝jk黑袜喷水| 亚洲欧洲精品一区二区| 国产综合自拍| 亚洲图色在线| 洋洋av久久久久久久一区| 亚洲精品国产精品久久清纯直播 | 亚洲电影激情视频网站| 国产日韩欧美亚洲一区| 国产欧美一区二区精品性| 欧美成人午夜视频| 欧美一区二区三区久久精品| 欧美精品福利在线| 亚洲欧美国产毛片在线| 欧美性大战久久久久久久| 欧美激情国产日韩精品一区18| 极品少妇一区二区| 午夜精品亚洲| 久久久久久黄| 国产精品主播| 亚洲欧美一区二区三区在线| 午夜欧美大片免费观看| 国产日韩在线一区| 这里只有精品视频在线| 亚洲黄色有码视频| 亚洲黄色大片| 久久嫩草精品久久久精品一| 久久女同精品一区二区| 国产精品永久在线| 欧美一区二区三区四区夜夜大片| 亚洲欧美日本视频在线观看| 国产精品三上| 亚洲桃色在线一区| 亚洲精品永久免费精品| 欧美日韩亚洲一区二区三区四区 | 欧美日韩国内| 亚洲婷婷综合久久一本伊一区| 亚洲一品av免费观看| 欧美不卡一区| 一区二区三区欧美在线观看| 亚洲私人影院| 黄色精品在线看| 久久这里有精品15一区二区三区| 嫩草影视亚洲| 亚洲精品一区二区三区蜜桃久| 久久久久国产精品麻豆ai换脸| 免费久久99精品国产自| 国产精品美女久久久免费| 亚洲视频在线看| 久久精品国产亚洲一区二区三区| 亚洲黑丝在线| 欧美日韩国产成人在线91| 欧美一区二区三区免费视| 欧美成人一区二区| 先锋影音久久| 在线不卡a资源高清| 欧美日韩国产小视频| 99热免费精品| 欧美freesex交免费视频| 99视频一区| 黑人极品videos精品欧美裸| 另类激情亚洲| 亚洲一卡久久| 久久久久国色av免费观看性色| 国产精品日日摸夜夜添夜夜av| 亚洲视频精品在线| 久久综合九色九九| 最新国产成人av网站网址麻豆| 欧美女人交a| 一本久道久久久| 老司机午夜精品视频在线观看| 日韩天天综合| 国产精品在线看| 噜噜噜在线观看免费视频日韩| 亚洲国产另类 国产精品国产免费| 亚洲伊人第一页| 在线激情影院一区| 欧美视频一区| 久久久久久69| 欧美国产精品劲爆| 性欧美激情精品| 亚洲一区二区三区视频| 狠狠色综合日日| 久久午夜电影| 亚洲欧美美女| 久久一区二区三区四区| 一区视频在线看| 国产精品久久久久免费a∨| 六十路精品视频| 欧美一区=区| 中文一区二区| 欧美国产在线观看| 亚洲自拍16p| 国产一区二区激情| 亚洲一区欧美一区| 亚洲国产成人精品女人久久久 | 国产精品午夜国产小视频| 欧美亚洲一区三区| 欧美插天视频在线播放| 久久综合狠狠综合久久激情| 亚洲欧美日韩在线综合| 亚洲精品美女免费| 伊人婷婷久久| 国产久一道中文一区| 久久久国产视频91| 中文亚洲欧美| 亚洲欧洲另类| 在线看国产一区| 国产综合自拍| 国产区在线观看成人精品| 国产精品毛片大码女人| 另类春色校园亚洲| 久久久www成人免费无遮挡大片| 亚洲欧美日韩国产综合在线| 中文亚洲欧美| 亚洲一二三级电影| 亚洲日本成人网| 亚洲国产精品欧美一二99| 久久精品国产第一区二区三区最新章节 | 极品中文字幕一区| 老牛国产精品一区的观看方式| 欧美a级片网站| 亚洲国产小视频| 久久婷婷久久| 欧美一级在线视频| 欧美亚洲一区三区| 国内一区二区在线视频观看| 国产日产精品一区二区三区四区的观看方式 | 久久精品视频在线看| 欧美一区二区三区在线播放| 午夜精品久久久| 欧美激情一区二区在线| 日韩午夜激情av| 一区二区精品| 亚洲欧美日韩一区| 久久精品一区蜜桃臀影院| 亚洲视频福利| 欧美自拍偷拍| 新狼窝色av性久久久久久| 欧美在线日韩精品| 欧美一区不卡| 久久综合久久88| 亚洲激情欧美| 亚洲精品视频啊美女在线直播| 亚洲精品在线观看视频| 亚洲性人人天天夜夜摸| 欧美在线播放| 美女精品一区| 日韩一二三在线视频播| 亚洲一区二区三区视频| 欧美在线三级| 欧美激情1区2区3区| 欧美成人a视频| 国产一区久久| 亚洲精品一区二区三区av| 亚洲女同同性videoxma| 久久精品国产2020观看福利|