久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Qt框架,、繼承,、常用控件、方法,、工程創(chuàng)建

 漢無為 2023-08-26 發(fā)布于湖北

QT學習目的,崗位需求

   上位機:用戶使用的那個小平板(帶有界面,應用程序)

   下位機:底層硬件傳感器,底層的硬件電路板

   1.學習目的

             QT可以幫助我們開發(fā)上位機程序

             QT使用C++寫代碼

   2.崗位需求

             QT開發(fā)工程師 --》二年左右的經(jīng)驗  1.5----3w之間

QT的 應用領域,,發(fā)展歷史

   1.QT的特點

             跨平臺:市面上主流的操作系統(tǒng)都能支持 

                           window

                           linux

                           蘋果

                           安卓

QT下載安裝,不同版本QT介紹

   1.QT下載鏈接

                https://download./archive/qt/

   2.不同版本的QT安裝程序

               .exe  --》window版本的QT

              .dmg --》蘋果電腦

              .run   --》linux系統(tǒng)

新建QT工程

   1.集成開發(fā)環(huán)境介紹

              QT creator --》集成開發(fā)環(huán)境(見圖示)

圖片

圖片

圖片

圖片

圖片

   2.新建QT工程

             方法一:點擊projects中new按鈕

             方法二:點擊文件菜單項 ,,選擇新建文件/工程

     注意:選擇QT widgets application(QT窗口應用程序)

               工程名和路徑名不能有中文

   3.QT工程介紹

             第一個:.pro文件(工程配置文件,跟我們前面學習的Makefile有點類似)

                      QT       += core gui   //往QT工程中添加核心庫和圖形用戶界面庫

                      greaterThan(QT_MAJOR_VERSION, 4): QT += widgets  //添加窗口庫

                      CONFIG += c++11  //選用C++11標準語法去編譯程序

                      SOURCES += \

                             main.cpp \

                             mainwindow.cpp  //指定要編譯的源碼

                      HEADERS += \

                             mainwindow.h     //指定頭文件

                      FORMS += \

                             mainwindow.ui       //界面設計文件,,用來保存你在ui設計師中設計好的ui界面

                      qnx: target.path = /tmp/$${TARGET}/bin

                      else: unix:!android: target.path = /opt/$${TARGET}/bin

                      !isEmpty(target.path): INSTALLS += target   //指定環(huán)境變量

            第二個:頭文件--》類的定義

class MainWindow : public QMainWindow{ Q_OBJECT //宏定義,暫時不理會 public: MainWindow(QWidget *parent = nullptr); ~MainWindow(); private: Ui::MainWindow *ui;};

           第三個:主函數(shù)--》

int main(int argc, char *argv[]){  QApplication a(argc, argv);  //QApplication類,用來管理你的QT工程,用來支持信號與槽,,用來管理事件的觸發(fā)  MainWindow w;  w.show();  //顯示主窗口  returna.exec();  //進入事件循環(huán)(不斷地幫你刷新主窗口)}

QT的學習方法

   1.QT中的內(nèi)容非常多

            組件的屬性有很多:掌握主要的屬性設置,,其他的屬性遇到了上網(wǎng)查詢

UI設計師界面的使用--》傻瓜式操作(所見即所得)

   1.作用

            組件(控件):按鈕  滑動條   進度條......

            提供了大量的組件幫助我們設計ui界面

   2.跳轉(zhuǎn)到ui設計師

            雙擊工程中ui文件,自動跳轉(zhuǎn)

            組件如何使用:鼠標左鍵直接拖動即可

            復制組件:ctrl按住不松開,,鼠標拖動組件即可復制

   3.常用的組件

           注意:任何一個組件,,你需要查看修改它的屬性,都要先用鼠標選中該組件,,再去查看修改屬性

(1)標簽label

                    作用一:用來顯示文字

                    作用二:用來顯示圖片

void setPixmap(const QPixmap &)參數(shù)::QPixmap(constQString &fileName)fileName --》你要顯示的圖片路徑名

  標簽顯示圖片有兩種優(yōu)化方式

方式一:讓圖片去自動適應標簽的大小(標簽的大小是固定的,,讓圖片自動改變大小去適應標簽)

QPixmap mymap(piclist.at(n)); //創(chuàng)建了繪圖設備mymap.scaled(ui->label->width(),ui->label->height()); //調(diào)整圖片的寬高,讓其跟標簽一致ui->label->setScaledContents(true); //讓圖片可以適應標簽ui->label->setPixmap(mymap);

方式二:讓標簽去自動適應圖片的大小

QPixmap mymap(piclist.at(n)); //創(chuàng)建了繪圖設備ui->label->resize(mymap.width(),mymap.height());ui->label->setPixmap(mymap);

常用屬性

geometry --》定位坐標,,長寬大小

font --》設置字體

(2) 單行輸入框  lineEdit

作用:輸入一行字符串信息,,不能換行

常用屬性

geometry --》定位坐標,長寬大小font --》設置字體placeholdertext --》設置默認的提示信息  echomode --》設置輸入內(nèi)容是否隱藏  normal--》不隱藏  password--》隱藏maxlength--》設置輸入框的最大字符個數(shù)(英文字母一個算一個)中文一個算一個

 (3) 普通按鈕  pushbutton

                   作用:添加一些可以點擊的按鈕

                   常用屬性

                        geometry --》定位坐標,,長寬大小

                        font --》設置字體

 (4)文本瀏覽框 textBrowser 

                   作用:顯示文本內(nèi)容,,只能顯示,不能編輯修改

                   方法:setText(你要顯示的內(nèi)容)

(5)文本編輯框 textEdit

                   作用:可以顯示文本,,也可以編輯

                   方法:setText(你要顯示的內(nèi)容)

QString QTextEdit::toPlainText() const //返回文本編輯框中所有的內(nèi)容

 (6)lcdNumber

                   作用:顯示數(shù)字

                   方法:display()  //可以顯示整數(shù),小數(shù)

                   屬性:digitcount  --》設置最大多少位數(shù)字

QT中的樣式設計,添加資源文件

   1.樣式設計

            (1)什么是樣式

                             為了讓你的ui界面更加的美觀好看

                如何彈出QT的樣式表

                             方法一:點擊屬性中的stylesheet

                             方法二:右鍵點擊組件,,選擇改變樣式表

            (2)QT中常用的樣式設計語句(qss語句)

background-color: rgb(85, 255, 255);             //設置背景顏色background-image: url(:/new/prefix1/pic/3.jpg);  //設置背景圖片background-image: url(你需要的圖片的絕對路徑);
border-image: url(:/new/prefix1/pic/2.jpg); //設置邊框圖片(邊框圖片跟組件的大小保持一致)border-image: url(你需要的圖片的絕對路徑); border-radius:15px; //把倒角設置為15個像素倒角的大小不能超過組件高度的一半border:2px solid #ff0000; //把邊框的寬度設置為2個像素,顏色設置成ff0000
QPushButton:pressed{ 設置按鈕按下的時候背景圖片 用于主窗口的樣式設計 background-image: url(:/button_down.png);}QPushButton:pressed#regBt{ 設置指定按鈕regBt按鈕按下時候背景圖片 用于主窗口的樣式設計 background-image: url(:/button_down.png);}QPushButton:hover{ 用于主窗口的樣式設計 background-color:#ff00ff; 鼠標進入控件設置背景顏色}
QMainWindow{border-image: url(:/new/prefix1/pic/3.jpg);} //讓圖片只作用于主窗口 用于主窗口的樣式設計

注意:QT中的路徑的寫法跟window的路徑寫法是不同

                           比如:window路徑是:  C:\note\temp\1.c

       QT代碼中這個路徑改成:C:/note/temp/1.c

   2.QT工程中添加資源文件

               (1)什么是資源文件

                           只要是你從外界拿過來的文件都叫資源文件,比如:圖片,音頻文件,視頻文件

               (2)如何添加資源文件到QT工程中

                           第一步:準備好你要添加的資源文件,,拷貝一份到你的工程目錄下(新建文件夾保存)

                           第二步:右鍵點擊工程名,選擇QT,,選擇QT resource file --》點擊add prefix,,點擊add file--》自動彈出對話框,你選擇之前要添加的圖片文件

                                         最后ctrl+s保存即可

純代碼實現(xiàn)登錄界面(C++基礎要扎實)

   1.為什么要掌握純代碼

            第一:學習面向?qū)ο缶幊趟枷?-》查詢類和方法,學會自動思考閱讀QT中api文檔

            第二:代碼實現(xiàn)的功能,,肯定比ui設計師強大

   2.總結(jié)QT的api文檔規(guī)律(QT助手)

           規(guī)律一:組件的類名有統(tǒng)一的命名規(guī)則

                             pushButton  --》QPushButton

                             label --》QLabel

           規(guī)律二:頭文件跟類名一樣

                             #include <QPushButton>

           規(guī)律三:ui設計師中所有的屬性都有對應的接口函數(shù)去設置屬性

                         這些函數(shù)都有統(tǒng)一的命名規(guī)則  setxxxxx()   //xxxxx就是你見到的屬性的英文單詞名字

                         比如:屬性名  geometry  --》函數(shù)名setGeometry()

                                                font    --》函數(shù)名setFont()


   3.具體步驟

              第一步:創(chuàng)建一個標簽對象--》顯示標題

                      (1)構(gòu)造函數(shù)

                            QLabel(const QString &text, QWidget *parent = nullptr, Qt::WindowFlags f = Qt::WindowFlags())

                                  參數(shù):  text --》你要顯示在標簽上的文字信息

                                   QString類似于C++中的string

                                   parent --》表示標簽的父窗口(標簽在哪個窗口顯示,那個窗口就是它的父窗口)

                     (2)設置位置坐標,寬高

void QWidget::setGeometry(int x, int y, int w, int h)參數(shù):x y --》坐標位置w h --》寬和高

設置字體    

voidsetFont(const QFont &)參數(shù):  QFont --》QT中封裝好專門表示各種字體的類名QFont::QFont(constQString &family, int pointSize = -1)參數(shù):family --》字體的名字pointSize --》字體大小

               第二步:創(chuàng)建兩個輸入框--》賬號和密碼輸入

                       (1)構(gòu)造函數(shù)

QLineEdit(QWidget *parent = nullptr)參數(shù):parent --》表示單行輸入框的父窗口

                       (2)設置默認提示字符串

 void setPlaceholderText(const QString &)參數(shù):你要顯示的提醒信息

                           (3)設置密碼隱藏

void setEchoMode(QLineEdit::EchoMode)參數(shù):QLineEdit::Normal --》不隱藏     QLineEdit::Password--》隱藏

設置最大長度

   void setMaxLength(int)   參數(shù):最大字符數(shù)量

  設置樣式         

void setStyleSheet(const QString &styleSheet) 參數(shù):styleSheet --》你要設置的樣式語句 QString str='輸入賬號'; setPlaceholderText(str);

               第三步:創(chuàng)建兩個按鈕

                     (1)構(gòu)造函數(shù)

QPushButton(const QString &text, QWidget *parent = nullptr)參數(shù):text --》按鈕的字面信息      parent --》按鈕的父窗口

UI設計師和代碼配合型

圖片

UI純代碼實現(xiàn)界面

#include 'loginwin.h'
#include <QApplication>#include <QLabel>#include <QFont>#include <QLineEdit>#include <QPushButton>int main(int argc, char *argv[]){ QApplication a(argc, argv); loginwin w;
//給主窗口添加邊框圖片 w.setStyleSheet('QMainWindow{border-image: url(C:/Users/Administrator/Desktop/share/2.jpg);} ');
//準備 一個標簽 QLabel *lb1=new QLabel('歡迎來到Qt歷險記',&w); //設置標簽的坐標和寬高 lb1->setGeometry(180,10,600,50); //設置字體 QFont myfont('楷體',30); lb1->setFont(myfont);
//準備兩個輸入框 QLineEdit *usrle=new QLineEdit(&w); QLineEdit *passle=new QLineEdit(&w); //設置坐標和大小 usrle->setGeometry(200,100,350,40); passle->setGeometry(200,150,350,40); //設置字體 QFont font1('楷體',20); usrle->setFont(font1); passle->setFont(font1); //設置默認提示的字符串 usrle->setPlaceholderText('請輸入賬號'); passle->setPlaceholderText('請輸入密碼'); //設置密碼隱藏 passle->setEchoMode(QLineEdit::Password); //隱藏 //設置位數(shù) usrle->setMaxLength(8); passle->setMaxLength(8); //設置輸入框的樣式 //usrle->setStyleSheet('border-radius:10px;'); //分開寫 // usrle->setStyleSheet('border:2px solid#ff0000;');
usrle->setStyleSheet('border-radius:10px;border:2px solid#ff0000;'); //合并寫 passle->setStyleSheet('border:2px solid#ff0000;');
//定義兩個按鈕 QPushButton *bt1=new QPushButton('登錄',&w); QPushButton *bt2=new QPushButton('注冊',&w); //設置坐標,,大小 bt1->setGeometry(180,300,60,40); bt2->setGeometry(380,300,60,40);

w.show(); return a.exec();}

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多