原创 Qt之設置QWidget背景色

Qt中窗口背景的設置,下面介紹三種方法。 1.使用QPalette 2.使用Style Sheet 3.繪圖事件 一般我不用QSS設置窗口背景,也不建議使用。(這裏是對於窗口而言,如果是子部件當然可以)。因爲窗口使用QSS設置背景之

原创 QWidget子窗口中setStyleSheet無效,解決方法

發現 繼承自QWidget的自定義類 ,使用setStyleSheet無效, 如果刪除頭文件中的 Q_OBJECT,setStyleSheet生效, 但不用OBJECT 就無法所使用signal and slot, 最後找到解決辦法,繼承

原创 Qt檢測內存泄露-VLD

概述 Visual Leak Detector(VLD)是一款用於Visual C++的免費的內存泄露檢測工具。他的特點有:可以得到內存泄漏點的調用堆棧,如果可以的話,還可以得到其所在文件及行號; 可以得到泄露內存的完整數據; 可以設置內

原创 圖形繪製 QPainter

QPainter painter(this); // 會立即開始在設備上繪製,自動調用begin()函數,然後析構函數中調用end()函數結束繪製。 QPainter painter;// 不帶參數時,可以在後面調用QPainter::

原创 Qt畫箭頭

下面是畫箭頭的代碼: void drawArrow(QPoint startPoint, QPoint endPoint, QPainter &p) { double par = 15.0;//箭頭部分三角形的腰長 dou

原创 QPainter繪製文本 二

先從最簡單任務開始:在 widget 的左上角(0, 0)處繪製字符串 jEh。 void MainWidget::paintEvent(QPaintEvent *) { QPainter painter(this); p

原创 QPainterPath(組合路徑,路徑運動)

組合路徑 void ComplicatedPathWidget::paintEvent(QPaintEvent *) { QPainter painter(this); painter.setRenderHint(QPai

原创 QTransform變換

轉自http://blog.csdn.net/liang19890820/article/details/51212890 簡述 QTransform 用於指定座標系的 2D 轉換 - 平移、縮放、扭曲(剪切)、旋轉或投影座標系。繪製圖

原创 Qpainter繪製文本

文本的繪製有兩種方式: 在指定位置繪製文本,不會自動換行 void QPainter::drawText(int x, int y, const QString &text) void QPainter::drawTex

原创 右值引用

右值引用

原创 QPainter 的狀態保存與恢復

實現這樣的一個程序,把 QPainter 的座標原點從左上角移動到 (100, 100),然後畫出座標軸,接下來順時針旋轉座標軸 45 度,設置畫筆,畫刷,字體,畫一個矩形和字符串,最後恢復 QPainter 到最開始的狀態,即還原畫筆,

原创 靜態代碼檢查工具 cppcheck

CppCheck是一個C/C++代碼缺陷靜態檢查工具。不同於C/C++編譯器及其它分析工具,CppCheck只檢查編譯器檢查不出來的bug,不檢查語法錯誤。所謂靜態代碼檢查就是使用一個工具檢查我們寫的代碼是否安全和健壯,是否有隱藏的問題。

原创 C++11 - 字串字面值

標準C++提供了兩種字符串字面值。第一種,包含有雙引號,產生以空字符結尾的const char數組。第二種有着前標L,產生以空字符結尾的const wchar_t數組,其中wchar_t代表寬字符。對於Unicode編碼的支持尚付闕如。

原创 Qt connect中的 Lambda

Qt 5 使用 C++11 支持 Lambda 表達式,connect() 的時候如果函數名寫錯了就會在編譯時報錯,還有一點是 Lambda 表達式在需要的時候才定義,不需要聲明,寫起來比較簡單,這對於較小的處理函數來說簡直太棒了。 Qt

原创 畫刷 QBrush

畫刷 QBrush 是用來填充圖形用的,QPen來繪製輪廓線(線段,矩形邊框等) QBrush的屬性我們可以從QBrush類的構造函數中看出; QBrush () QBrush ( Qt::BrushStyle style ) QBru