原创 Qt中的模態、非模態、半模態對話框

文章目錄1. 模態對話框(Modal)2. 非模態對話框(Modeless)3. 半模態對話框 1. 模態對話框(Modal) 模態對話框 是指在同一個應用程序中,阻塞其他可見窗口輸入的對話框。一般用於用戶輸入文件名或用於應

原创 基於QGraphicsView的簡易畫板EasyCanvas -- 第一版

最近使用 QGraphicsView 做了個簡易的畫板 EasyCanvas ,界面效果如下: 具有如下功能: 畫布設置 圖元添加和修改 保存爲圖片 1. 畫布設置 可以通過右側畫布屬性,設置畫布的尺寸和背景顏色 2.

原创 c++11學習筆記(8)- 可變參數宏、函數、模板

文章目錄1. 可變參數宏2. 可變參數函數3. 可變參數模板(1) 可變參數模板的展開 - 遞歸展開(2) 可變參數模板的展開 - 非遞歸展開(3) 一個函數代理類的實例 1. 可變參數宏 可變參數的宏在C語言中就有定義,使用

原创 使用Qt QJSEngine實現JavaScript與C++混合編程

QJSEngine實現了一個Qt中JavaScript的運行環境,使用的是Chrome的V8引擎。 下面介紹一下QJSEngine的簡單使用。 文章目錄1. 執行JavaScript的代碼2. 腳本異常3. JavaScript中

原创 QtConcurrent多線程 - run()與QFuture

文章目錄1. run()函數2. QFuture3. QFutureWatcher Qt中的 Concurrent 模塊,爲我們提供高級的(high-level)API 編寫多線程程序,而不用使用低級的(low-level)線程

原创 使用QWaitCondition實現一個簡單的線程池

上篇文章主要講了線程池的使用 Qt中的線程池QThreadPool 本篇文章使用Qt的條件變量 QWaitCondition ,實現一個簡單的線程池 關於 QWaitCondition 的使用,可以參照 線程的互斥和同步(7)-

原创 線程的互斥和同步(4)- Qt中的互斥鎖(QMutex和QMutexLocker)

上一篇文章主要介紹了Windows的互斥鎖 線程的互斥和同步(3)- Windows的互斥鎖 Linux也有自己API來操作互斥鎖,對於跨平臺的操作,Qt幫助我們使用一套代碼實現相同的效果。 Qt中使用類 QMutex 和 QMu

原创 MySQL數據庫學習筆記(8)- DQL之分組數據

文章目錄1. 分組的基本使用2. 分組過濾3. group_concat的使用 MySQL中使用 group by 對數據進行分組。它必須配合聚合函數進行使用,對數據進行分組後可以執行 count 、 sum 、 avg 、

原创 自定義QGraphicsItem實現平移、改變尺寸和旋轉

文章目錄1. 平移2. 改變尺寸3. 旋轉 我們在使用QGraphicsView框架的時候,經常需要自定義QGraphicsItem,並且需要實現Item的平移、改變大小和旋轉的效果。接下來介紹他們的一種實現方式 1. 平移 平

原创 使用QGraphicsBlurEffect實現圖片背景模糊效果

先看一下實現效果: 類 QGraphicsBlurEffect 可以實現圖像的模糊效果,它的相關接口主要有如下兩個: void setBlurHints(QGraphicsBlurEffect::BlurHints hint

原创 QtConcurrent多線程 - map、mapped和mappedReduced

文章目錄1. map 和 mapped2. mappedReduced3. 其他擴展 Qt中的 Concurrent 模塊爲我們提供了在一個序列容器類型針對每一個元素的多線程並行運算,比如 QList 、 QVector 。

原创 MySQL數據庫學習筆記(10)- distinct與in和exists子查詢

文章目錄1. distinct的使用2. 子查詢in3. 子查詢exists 1. distinct的使用 distinct 用於在查詢中返回列的唯一不同值(去重複),支持單列或多列。(只能寫在SELECT的後面) 比如,我們想

原创 MySQL數據庫學習筆記(9)- DQL之表連接(內連接、外連接、自連接)

表連接(JOIN)是在多個表之間通過一定的連接條件,使表之間發生關聯,進而能從多個表直接獲取數據。 文章目錄1. 外鍵(foreign key)2. 內連接與外連接3. 自連接 在介紹表連接之前,首先介紹一下外鍵 1. 外鍵(f

原创 使用FFMpeg API 獲取攝像頭的圖像數據

文章目錄1. 獲取攝像頭的信息2. 打開並初始化攝像頭3. 獲取攝像頭數據及渲染 攝像頭是我們比較常用的外設,很多場景我們都會用到攝像頭。比如視頻直播、視頻監控等各個領域都會用到攝像頭。攝像頭圖像數據的獲取,方法有很多,比如可以

原创 MySQL數據庫學習筆記(7)- DQL之內置函數

MySQL中的內置函數通常包括下面幾種, 文本處理函數 、 日期與時間處理函數 、 數值處理函數 、 聚合函數 、條件判斷函數 等。這些函數可以幫助用戶方便的處理表中的數據,簡化用戶操作。 1. 文本處理函數 函數 說明