QT學習一

對于選擇qmake還是cmake,現在寫的暫時先用qmake

1.命名規范和快捷鍵

2.按鈕控件常用API

    //創建第一個按鈕QPushButton * btn = new QPushButton;//讓btn對象 依賴在mywidget窗口中btn->setParent(this);//顯示文本btn->setText("第一個按鈕");//創建第二個按鈕 按照控件大小創建窗口QPushButton * btn2 = new QPushButton("第二個按鈕",this);//移動btn2按鈕btn2->move(100,100);//重設btn2按鈕大小btn2->resize(100,100);//重置窗口大小resize(600,400);//設置固定窗口大小setFixedSize(600,400);//設置窗口標題setWindowTitle("第一個窗口");

3.對象樹

????????當創建的對象在堆區時候,如果指定的父親是QObject派生下來的類或者QObject子類派生下來的類,可以不用管理釋放的操作,將對象會放入到對象樹中。一定程度上簡化了內存回收機制。

4.信號和槽

//需求 點擊我的按鈕 關閉窗口
//參數1 信號的發送者 參數2 發送的信號(函數的地址) 參數3 信號的接受者 參數4 處理的槽函數connect(myBtn, &MyPushButton::clicked , this , &MyWidget::close);
// connect(myBtn, &QPushButton::clicked , this , &QWidget::close);//也可以使用父類的地址
classIsOver();//發出信號    void Widget::classIsOver()
{//下課函數,調用后 觸發老師餓了的信號// emit zt->hungry();emit zt->hungry("宮保雞丁");
}

5.自定義信號和槽

//teacher.h中的teacher類中signals://自定義信號 寫道signals下//返回值是void,只需要聲明,不需要實現//可以有參數,可以重載void hungry();void hungry(QString foodName);//重載的函數//student.h中的student類中public slots://早期QT版本 必須要寫到public slots下,高級版本可以寫到public或全局下//返回值void,需要聲明,也需要實現//可以有參數,可以發生重載void treat();void treat(QString foodName);//重載的函數//調用重載的函數時//連接帶參數的信號和槽 出現了重載//指針 -> 地址//函數指針 -> 函數地址void(Teacher::*teacherSignal)(QString) = &Teacher::hungry;//函數指針void(Student::*studentSlot)(QString) = &Student::treat;//函數指針connect(zt, teacherSignal , st , studentSlot );classIsOver();

?調用QString時,輸出帶雙引號的處理方式

    // qDebug() << "請老師吃飯,老師要吃:" << foodName;//輸出結果為 請老師吃飯,老師要吃: "宮保雞丁"//QString -> char * 先轉成QByteArray ( .toUtf8() )再轉char * ( .data() )qDebug() << "請老師吃飯,老師要吃:" << foodName.toUtf8().data();//輸出結果為 請老師吃飯,老師要吃: 宮保雞丁 //不帶引號

6.信號連接信號

      //點擊一個 下課的按鈕 , 再觸發下課QPushButton * btn = new QPushButton("下課",this);this->resize(600,400);//點擊按鈕 觸發下課// connect(btn , &QPushButton::clicked, this, &Widget::classIsOver);// 無參信號和槽連接void(Teacher::*teacherSignal2)(void) = &Teacher::hungry;//函數指針void(Student::*studentSlot2)(void) = &Student::treat;//函數指針connect(zt, teacherSignal2 , st , studentSlot2 );//信號連接信號connect(btn , &QPushButton::clicked, zt, teacherSignal2);

斷開信號

  disconnect(btn , &QPushButton::clicked, zt, teacherSignal2);//只有前邊的函數名不一樣

7.lambda表達式

    //利用lambda表達式 實現點擊按鈕 關閉窗口QPushButton * btn2 = new QPushButton("關閉",this);btn2->move(200,0);connect(btn2,&QPushButton::clicked,this,[=](){emit zt->hungry("宮保雞丁");});//lambda表達式常用的形式就是[=](){}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/82323.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/82323.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/82323.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【Elasticsearch】給所索引創建多個別名

Elasticsearch 是可以給索引創建多個別名的。 為什么可以創建多個別名 1. 靈活性 - 別名可以為索引提供一個更易于理解的名稱&#xff0c;方便用戶根據不同的業務場景或用途來引用同一個索引。例如&#xff0c;一個索引可能同時服務于多個不同的應用程序或服務&#xff0c;通…

使用 OpenCV 實現哈哈鏡效果

在計算機視覺和圖像處理領域&#xff0c;OpenCV 提供了非常強大的圖像幾何變換能力&#xff0c;不僅可以用于糾正圖像&#xff0c;還能制造各種“有趣”的視覺效果。今天&#xff0c;我們就來實現一個經典的“哈哈鏡”效果&#xff0c;讓圖像像在游樂園里一樣被拉伸、壓縮、扭曲…

AI|Java開發 IntelliJ IDEA中接入本地部署的deepseek方法

目錄 連接本地部署的deepseek&#xff1a; IntelliJ IDEA中使用deepseek等AI&#xff1a; 用法一&#xff1a;讓AI寫代碼 用法二&#xff1a;選中這段代碼&#xff0c;右鍵&#xff0c;可以讓其解釋這段代碼的含義。這時顯示的解釋是英文的。 連接本地部署的deepseek&#…

如何使用兩塊硬盤作為 Ubuntu24 的系統盤,實現壞掉一塊不影響系統運行。

最近我想使用Ubuntu組一個NAS系統&#xff0c;想實現系統盤冗余&#xff0c;各位大佬可以給點建議嗎。 Deep Seek 為了實現兩塊硬盤作為 Ubuntu 24 系統盤的冗余配置&#xff08;RAID 1&#xff09;&#xff0c;確保一塊硬盤損壞時系統仍可運行&#xff0c;以下是詳細步驟&am…

【2025最新】虛擬機安裝macos,VMware在Windows11上安裝macOS 15完整圖文教程 - 新手也能輕松上手

引言 想體驗蘋果系統但不想買Mac電腦&#xff1f;別擔心&#xff01;本教程將手把手教你如何在Windows11環境下&#xff0c;通過VMware虛擬機安裝macOS Sequoia15系統。即使你是零基礎小白&#xff0c;按照這個步驟操作&#xff0c;也能輕松搞定&#xff01; 準備工作 在開始…

論文閱讀筆記——Emerging Properties in Unified Multimodal Pretraining

BAGEL 論文 商業閉源系統與學術/開源模型的差距很大&#xff0c;BAGEL 旨在通過開源統一架構大規模交錯數據主要解決&#xff1a; 架構割裂&#xff1a;理解/生成分屬兩條網絡&#xff0c;信息被壓縮在少量條件 token 中&#xff0c;長上下文推理受限。數據貧乏&#xff1a;主…

Go 語言基礎1 Slice,map,string

更多個人筆記見&#xff1a; github個人筆記倉庫 gitee 個人筆記倉庫 個人學習&#xff0c;學習過程中還會不斷補充&#xff5e; &#xff08;后續會更新在github上&#xff09; 文章目錄 stirng 字符串區分 rune&#xff0c;byte&#xff0c;string字符串操作strings 庫相關 f…

C# AI(Trae工具+claude3.5-sonnet) 寫前后端

這是一個AI 寫的前后端分離項目,通過AI編程&#xff0c;開發電商管理系統&#xff08;登陸、注冊&#xff09; 使用的AI工具為 Trae工具(字節國際版)claude3.5-sonnet(目前代碼最強模型) 前端為 vue3Bootstrap 后端為 C# net5.0(因為我電腦里面已經安裝了這個新版更好) do…

10G/25G PCS only mode for CoaXPress Over Fiber

背景 在CoaXPress Over Fiber的需求中, 需要利用XGMII的PCS 實現25G 數據速率的穩定傳輸&#xff0c;也就是不需要其MAC層&#xff0c;只保留PMA PCS層&#xff0c;借用其物理端口 線纜&#xff0c;實現其它協議的數據傳輸。 25G PCS 25GMII 的 TX/RX 時鐘頻率在 DDR&#xff…

掌握聚合函數:COUNT,MAX,MIN,SUM,AVG,GROUP BY和HAVING子句的用法,Where和HAVING的區別

對于Java后端開發來說&#xff0c;必須要掌握常用的聚合函數&#xff1a;COUNT&#xff0c;MAX&#xff0c;MIN&#xff0c;SUM&#xff0c;AVG&#xff0c;掌握GROUP BY和HAVING子句的用法&#xff0c;掌握Where和HAVING的區別&#xff1a; ? 一、常用聚合函數&#xff08;聚…

無人機飛行間隔安全智能評估、安全風險評估

無人機空中安全飛行評估需結合改進碰撞模型、蒙特卡洛仿真、安全間隔反推及動態避障策略&#xff0c;通過多機型分類與實時數據融合&#xff0c;實現從理論建模到實際部署的全流程管控&#xff0c;為城市低空密集飛行提供安全保障。 需求 無人機飛行間隔安全智能評估 無人機…

pdf圖片導出(Visio和Origin)

一、Visio 導入pdf格式圖片 1. 設計->大小&#xff0c;適應繪圖。 2. 文件->導出&#xff0c;導出為pdf格式。 上面兩部即可得到只包含圖的部分的pdf格式。 如果出現的有默認白邊&#xff0c;可以通過以下方式設置&#xff1a; 1. 文件->選項->自定義功能區->…

實現一個帶有授權碼和使用時間限制的Spring Boot項目

生成和驗證授權碼記錄授權時間和過期時間實現授權邏輯 以下是具體的實現方法&#xff1a; 1. 生成和驗證授權碼 可以使用加密技術生成和驗證授權碼。授權碼中可以包含有效期等信息&#xff0c;并使用密鑰進行簽名。 示例代碼&#xff1a; java復制代碼 import javax.crypt…

官方SDK停更后的選擇:開源維護的Bugly Unity SDK

騰訊Bugly&#xff0c;為移動開發者提供專業的異常上報和運營統計&#xff0c;幫助開發者快速發現并解決異常&#xff0c;同時掌握產品運營動態&#xff0c;及時跟進用戶反饋。 但是&#xff0c;免費版的Unity SDK已經很久不更新了&#xff0c;會有一些問題和特性缺失&#xff…

Spring Boot分頁查詢進階:整合Spring Data REST實現高效數據導航

目錄&#xff1a; 引言分頁查詢基礎回顧 2.1 Spring Data JPA分頁接口 2.2 Pageable與Page的使用 2.3 常見分頁參數設計Spring Data REST簡介 3.1 HATEOAS與超媒體驅動API 3.2 Spring Data REST核心功能 3.3 自動暴露Repository接口整合Spring Boot與Spring Data REST 4.1 項目…

[Datagear] [SQL]實現分組統計同時帶匯總行的兩種方式對比分析

在進行數據可視化開發時,我們經常會遇到用戶提出的需求:除了展示按某字段分組統計的數據外,還希望看到一個“整體總計”的數據行。這種匯總行在報表、圖表展示中極為常見,可以幫助用戶快速理解全局數據水平。 實現這一功能的方法主要有兩種:一種是使用 SQL 的 GROUP BY ..…

Docker常用命令介紹

Docker常用命令 1、本地鏡像管理 save 命令 將一個或多個 Docker 鏡像保存到一個 tar 歸檔文件中&#xff0c;以便在其他環境中分發或備份。 # 語法&#xff1a;docker save [OPTIONS] IMAGE [IMAGE...]# 保存單個鏡像到文件 docker save -o myimage.tar myimage:latest# 保…

09 接口自動化-用例管理框架pytest之allure報告定制以及數據驅動

文章目錄 一、企業級的Allure報告的定制左邊的定制&#xff1a;右邊的定制&#xff1a;1.用例的嚴重程度/優先級2.用例描述3.測試用例連接的定制4.測試用例步驟的定制5.附件的定制 二、企業中真實的定制有哪些&#xff1f;三、allure報告如何在本地訪問四、allure中的數據驅動裝…

DDoS防護實戰——從基礎配置到高防IP部署

一、基礎防護&#xff1a;服務器與網絡層加固 Linux內核優化&#xff1a; 調整TCP協議棧參數&#xff0c;緩解SYN Flood攻擊&#xff1a; # 啟用SYN Cookie并減少超時時間 echo 1 > /proc/sys/net/ipv4/tcp_syncookies echo 30 > /proc/sys/net/ipv4/tcp_fin_timeout…

華為云Flexus+DeepSeek征文|Flexus云服務器Dify-LLM資源部署極致體驗Agent

前引&#xff1a;重磅來襲&#xff01;本次以DeepSeek-V3/R1商用大模型和Dify-LLM應用平臺一鍵部署為核心&#xff0c;專為新手打造“開箱即用”的AI開發體驗。無論你是想快速搭建企業級AI應用&#xff0c;還是探索大模型落地的無限可能&#xff0c;只需跟隨小編實現三步走&…