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

Qt中控件的函數(shù)使用教程分享

 更新時(shí)間:2022年12月16日 14:26:27   作者:音視頻開(kāi)發(fā)老舅  
這篇文章主要為大家詳細(xì)介紹了Qt中部分控件(Text Edit編輯框、Combo Box下拉框、List Wiget和Label)函數(shù)的使用,感興趣的小伙伴可以了解一下

1、Text Edit編輯框

//將編輯框中的內(nèi)容轉(zhuǎn)化成Utf8編碼
ui->textEdit->toPlainText().toUtf8(); 

2、Combo Box下拉框的應(yīng)用

(1)將內(nèi)容加入下拉框中

ui->comboBox->addItem(ui->recvMulAddrEdit->text());

(2)刪除下拉框中當(dāng)前的內(nèi)容

 ui->comboBox->removeItem(ui->recvMulAddr->currentIndex()); 

3、List Wiget

3.1、實(shí)現(xiàn)雙擊

void QPlayer::on_listWidget_doubleClicked(const QModelIndex &index)//雙擊進(jìn)入
{
    //"mplayer -slave -quiet -geometry x:y -zoom -x x -y y move.mp4"
    //http://192.168.1.248/move.mp4
    QString movepath = path+ui->listWidget->currentItem()->text(); //ui->listWidget->currentItem()->text() 取出當(dāng)前光標(biāo)雙擊的一行內(nèi)容
 
    QString cmd = QString("mplayer -slave -quiet -geometry %1:%2 -zoom -x %3 -y %4 %5")
            .arg(QString::number(ui->label->x()))
            .arg(QString::number(ui->label->y()))
            .arg(QString::number(ui->label->width()))
            .arg(QString::number(ui->label->height()))
            .arg(movepath);
 
    if(mProcess->state() == QProcess::Running)
    {
        mProcess->kill();
        mProcess->waitForFinished();
    }else
    {
        mProcess->start(cmd);
    }
 
}

3.2、獲取當(dāng)前點(diǎn)擊內(nèi)容的行號(hào)

int num = ui->listWidget->row(ui->listWidget->currentItem()); 

3.3、建立文件縮小圖標(biāo)

QListWidgetItem *item = new QListWidgetItem(QIcon(fileDir),info.fileName());
ui->ListWidget->addItem(item); //往List Wiget里面添加項(xiàng)

3.4、在List Widget列表中顯示其他窗口信息

  Form *win = new Form(ui->listWidget); //這是一個(gè)子窗口,ui->listWidget把窗口對(duì)象放進(jìn)ListWidget列表中
  QListWidgetItem *item = new QListWidgetItem();
  item->setSizeHint(win->size()); //每項(xiàng)的大小設(shè)置為win的大小
  ui->listWidget->addItem(item);
  ui->listWidget->setItemWidget(item,win); //

4、Label

4.1、顯示圖片

第一種方法:

ui->label->setScaledContents(true);//顯示圖片的全部
ui->label->setPixmap(QPixmap(tempDir));//顯示圖片,tempDir是照片的絕對(duì)路徑

第二種方法:

QPixmap mmp;
mmp.load("E:/GZ17-3/system/Qt-program/001/code/LoginWin/tst.png"); 
mmp = mmp.scaled(ui->label->size());
ui->label->setPixmap(mmp);

4.2、播放視頻,播放器是mplaer

void ProcessMplayer::on_listWidget_doubleClicked(const QModelIndex &index) //雙擊播放視頻
{
    qDebug()<<ui->listWidget->currentItem()->text();
    QString cmd = "E:/GZ17-3/system/Qt-program/mplayer/mplayer.exe";
    //cmd.append(ui->listWidget->currentItem()->text());
 
    QStringList  argmList;
    argmList<<"-slave"; //從模式--通過(guò)命令控制
    argmList<<"-quiet"; //屏蔽解碼信息輸出
    argmList<<"-wid";//嵌入到界面上,后面接窗口ID
    argmList<<QString::number(ui->label->winId());
    argmList<<ui->listWidget->currentItem()->text();
 
    if(mProcess->state() == QProcess::Running)
    {
        mProcess->kill();
        mProcess->waitForFinished();
    }
    mProcess->start(cmd, argmList);
}

4.3、播放gif動(dòng)態(tài)圖

 QMovie *movie = new QMovie("../form/1.gif");  // "../form/1.gif"圖片路徑
 movie->start(); //開(kāi)始播放動(dòng)態(tài)圖
 ui->label->setMovie(movie); //將圖片設(shè)置為為動(dòng)態(tài)
 ui->label->setScaledContents(true); //盡可能完整的播放整張動(dòng)圖 ,此處要設(shè)置為true

4.4、截屏

//截屏
QPixmap map = QApplication::screens().at(0)->grabWindow(0);
map.save("./screen.png"); //保存到當(dāng)前目錄下,名字為screen.png
QBuffer buffer; //圖片暫時(shí)存儲(chǔ)器
buffer.open(QIODevice::WriteOnly);
map.save(&buffer);
buffer.data();//得到QByteArray 對(duì)象可以轉(zhuǎn)換為char*
 
//顯示
map = map.scaled(ui->label->size()); //圖片跟著屏幕的縮放
ui->label->setPixmap(map);

4.5、Check Box按鍵

ui->checkBox->setCheckState(Qt::Unchecked); //把按鈕重新置于沒(méi)有被選中的狀態(tài)

4.6、Push Button按鍵

(1)排列出一個(gè)鍵盤(pán)

  //鍵盤(pán)數(shù)組
    QToolButton *buttons[12];
  //按鈕初始化
    buttons[0] = ui->btn_value0;
    buttons[1] = ui->btn_value1;
    buttons[2] = ui->btn_value2;
    buttons[3] = ui->btn_value3;
    buttons[4] = ui->btn_value4;
    buttons[5] = ui->btn_value5;
    buttons[6] = ui->btn_value6;
    buttons[7] = ui->btn_value7;
    buttons[8] = ui->btn_value8;
    buttons[9] = ui->btn_value9;
    buttons[10] = ui->btn_Point;
    buttons[11] = ui->btn_delete;
 
 //所有按鈕信號(hào)關(guān)聯(lián)一個(gè)槽函數(shù)
    for(int i=0;i<12;i++)
    {
        connect(buttons[i],SIGNAL(clicked(bool)),this,SLOT(clicked_button()));
    }
    
//點(diǎn)擊哪個(gè)按鈕
void ArmInfo::clicked_button()
{
    //獲取是哪個(gè)按鈕點(diǎn)擊(信號(hào)發(fā)送者)
    QToolButton *obj = (QToolButton*)sender();
    QString ip = ui->lineEdit_Amend->text();
    if(obj->text() == "<-") //檢測(cè)是否點(diǎn)擊刪除按鈕
    {
      ip.remove(ip.length()-1,1);//刪除最后一個(gè)字符
    }
 
    else
    {
       ip.append(obj->text());//拼接字符串
    }
    ui->lineEdit_Amend->setText(ip);
}

(2)設(shè)置按鈕狀態(tài)

ui->pushButton->setCheckable(true); //按一次就改變一次狀態(tài),比如說(shuō)第一次按下時(shí)true那么第二次就是false
connect(ui->pushButton,SIGNAL(clicked(bool)),this,SLOT(check(bool)));

(3)按鈕按下和釋放時(shí)切換圖片

void MainWindow::on_pushButton_pressed() //按下按鈕時(shí)
{
    ui->pushButton->setStyleSheet("border-image: url(:/new/prefix1/imag/人體炮彈.png);");
}
 
void MainWindow::on_pushButton_released() //釋放按鈕時(shí)
{
    ui->pushButton->setStyleSheet("border-image: url(:/new/prefix1/imag/atm.png);");
}

4.7、Line Edit輸入框

 //垂直布局管理器
 QVBoxLayout *vbox = new QVBoxLayout(this);
 lineEdit = new QLineEdit(this); //定義一個(gè)lineEdit對(duì)象
 lineEdit->setMinimumHeight(60); //設(shè)置最小高度
 lineEdit->setAlignment(Qt::AlignRight); //設(shè)置輸入框中右邊對(duì)齊 

4.8、toolButton

(1)設(shè)置按鈕的大小

//90為x軸,100為y軸,300為寬,400為高設(shè)置界面的大小
ui->toolButton->setGeometry(90,100,300,400); 

(2)設(shè)置圖標(biāo)

 //設(shè)置圖標(biāo),../toolbar/icon.jpg 這是圖片所在路徑,要在源程序目錄下
 ui->toolButton->setIcon(QIcon("../toolbar/icon.jpg"));

解釋?zhuān)簍oolbar代碼的路徑,不是絕對(duì)路徑 

4.9、action按鈕綁定方法

connect(ui->action_New,SIGNAL(triggered(bool)),this,SLOT(doProcessNew())); //action按鈕的綁定方法,這里和pushButton不同的時(shí)候觸發(fā)為triggered(bool)

4.10、鎖定背景圖片,不讓其他按鈕隨著背景圖片一起變化

MainWindow{border-image: url(:/new/prefix1/imag/00958PICfNK.jpg);}

解釋?zhuān)?/p>

  • MainWindow :顯示背景的窗口名
  • border-image:圖片跟著邊框一起變化
  • /new/prefix1/imag/00958PICfNK.jpg:圖片路徑

到此這篇關(guān)于Qt中控件的函數(shù)使用教程分享的文章就介紹到這了,更多相關(guān)Qt控件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C++?STL容器適配器使用指南

    C++?STL容器適配器使用指南

    C++?STL(標(biāo)準(zhǔn)模板庫(kù))是一套功能強(qiáng)大的?C++?模板類(lèi),提供了通用的模板類(lèi)和函數(shù),這些模板類(lèi)和函數(shù)可以實(shí)現(xiàn)多種流行和常用的算法和數(shù)據(jù)結(jié)構(gòu),如向量、鏈表、隊(duì)列、棧,今天我們來(lái)探究一下stl容器適配器的使用吧
    2021-11-11
  • 關(guān)于C語(yǔ)言qsort函數(shù)詳解

    關(guān)于C語(yǔ)言qsort函數(shù)詳解

    這篇文章主要介紹了關(guān)于C語(yǔ)言qsort函數(shù)詳解的相關(guān)資料,需要的朋友可以參考下面文章內(nèi)容
    2021-09-09
  • 利用C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單三子棋游戲

    利用C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單三子棋游戲

    這篇文章主要為大家詳細(xì)介紹了利用C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單三子棋游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-03-03
  • MFC命名規(guī)則匯總

    MFC命名規(guī)則匯總

    這篇文章主要介紹了MFC命名規(guī)則,對(duì)于初學(xué)者而言需要牢固掌握這類(lèi)規(guī)則,需要的朋友可以參考下
    2014-07-07
  • C迷途指針詳解

    C迷途指針詳解

    這篇文章主要介紹了C迷途指針,迷途指針又稱(chēng)為懸空指針、野指針,其對(duì)C程序的安全性與穩(wěn)定性影響巨大,本文對(duì)其原理與檢測(cè)方法做了較為詳盡的分析,需要的朋友可以參考下
    2014-09-09
  • C/C++實(shí)現(xiàn)內(nèi)存泄漏檢測(cè)詳解

    C/C++實(shí)現(xiàn)內(nèi)存泄漏檢測(cè)詳解

    這篇文章主要為大家詳細(xì)介紹了c++進(jìn)行內(nèi)存泄漏檢測(cè)的方法,幫助大家更好的理解和學(xué)習(xí)使用c++,感興趣的朋友可以了解下,希望能夠給你帶來(lái)幫助
    2023-02-02
  • C++實(shí)現(xiàn)校園導(dǎo)游系統(tǒng)

    C++實(shí)現(xiàn)校園導(dǎo)游系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)校園導(dǎo)游系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • C++ 如何實(shí)現(xiàn)多線程與線程同步

    C++ 如何實(shí)現(xiàn)多線程與線程同步

    多線程中的線程同步可以使用,CreateThread,CreateMutex 互斥鎖實(shí)現(xiàn)線程同步,通過(guò)臨界區(qū)實(shí)現(xiàn)線程同步,Semaphore 基于信號(hào)實(shí)現(xiàn)線程同步,CreateEvent 事件對(duì)象的同步,以及線程函數(shù)傳遞單一參數(shù)與多個(gè)參數(shù)的實(shí)現(xiàn)方式。
    2021-06-06
  • C/C++實(shí)現(xiàn)的MD5哈希校驗(yàn)的示例代碼

    C/C++實(shí)現(xiàn)的MD5哈希校驗(yàn)的示例代碼

    MD5算法是一種廣泛使用的 Hash 算法,常用于確保信息傳輸?shù)耐暾耘c一致性,本文主要介紹了C/C++實(shí)現(xiàn)的MD5哈希校驗(yàn)的示例代碼,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-10-10
  • C語(yǔ)言順序查找算法介紹及示例

    C語(yǔ)言順序查找算法介紹及示例

    順序查找又稱(chēng)線性查找,主要用于在線性表中進(jìn)行查找。順序查找通常分為對(duì)一般的無(wú)序線性表的順序查找和對(duì)按關(guān)鍵字有序的順序表的順序查找,下面我們來(lái)一探究竟
    2022-08-08

最新評(píng)論

雅江县| 奉化市| 云阳县| 临潭县| 丰台区| 望谟县| 辽源市| 慈溪市| 湄潭县| 秦安县| 永善县| 台北县| 凌源市| 郧西县| 方城县| 东至县| 怀宁县| 井冈山市| 澄迈县| 洮南市| 大连市| 桂林市| 同仁县| 谢通门县| 湾仔区| 沁水县| 固阳县| 湄潭县| 分宜县| 侯马市| 马公市| 衡阳县| 三河市| 宁蒗| 广南县| 霍邱县| 息烽县| 鸡东县| 梧州市| 卢龙县| 南靖县|