原创 學習記錄-Qt環境的編譯

網上找了很多教程,也學習到了很多,但是和自己的環境畢竟還是有許多差別,在這裏記錄一下自己的編譯學習過程,以及遇到的問題。 使用的是友善tiny6410開發板。 1.在官網下載源代碼,我使用的是qt-everywhere-opensourc

原创 學習記錄-Qt在win7下安裝opencv庫

經過一天的折騰,終於成功運行opencv程序。把過程記錄一下。 環境:win7+Qt4.7.0+qt creator 2.4.1 ,沒有安裝MS的編譯工具。 1.下載opencv2.3.1 官網:http://opencv.org/dow

原创 學習記錄-Qt按鍵單擊後延遲一段時間觸發下一個函數執行

<span style="font-family: Arial, Helvetica, sans-serif;">QTimer::singleShot(1000, this, SLOT(on_pushButton_pcba_readfil

原创 學習記錄-Qt監聽鍵盤ESC按鍵

在軟件主機面(繼承自QWidgets),需要識別用戶按下ESC鍵後,彈出退出登錄對話框。自然想到要使用EventFilter重寫進行按鍵監聽,但嘗試後發現無法實現,於是進一步使用keyPressEvent重寫進行按鍵監聽,經驗證可行。 重

原创 學習記錄-Qt文件的讀寫和刪除等操作

Qt提供了QFile類對文件操作,Qt還提了QTextStream類和QDataStream類對文件操作,對於處理臨時文件可以使用QTemporaryFile,而獲取文件信息則可以使用QFileInfo。 目錄可以使用QDir,監視文件和

原创 學習記錄-Qt獲取文件路徑

看書提到使用QFileDialog::getOpenFileName()函數可以獲得選定目錄下的文件名,但我只要選擇路徑。查看Qt幫助,找到這個函數,直接獲取路徑,不用選擇一個文件後在把路徑提取出來。 QString pathDir =

原创 學習記錄-Qwt6.1.0編譯安裝

由於要使用畫圖功能,於是網上查找,發現多數例子使用qwt庫進行繪製。按照網上找的文章從官網下載了qwt6.1.0源碼,解壓後,在qwt-6.1.0目錄下打開命令窗口,qmake成功產生qwt.pro,但使用mingw32-make編譯時,

原创 學習記錄-Qt中控件的座標

使用Qt做了個界面,因爲使用軟鍵盤不能使用模態窗口,故自己使用frame做了一個自定義的彈窗,爲了實現可拖動效果,重寫鼠標事件,但遇到了控件座標的問題, 怎麼樣獲取鼠標落在控件事件進行處理。網上查看了幾篇文章,子控件的座標需要由父控件計算

原创 學習記錄-Qt標準對話框

Qt中的標準對話框有以下: 1.文件對話框(QFileDialog) 1) 打開目錄 QString getExistingDirectory ( QWidget * parent = 0, const QString & caption

原创 學習記錄-VS踩坑記錄

一、安裝VS2015後,CMAKE執行錯誤: CMAKE_C_COMPILER-NOTFOUND" was not found.   CMAKE_CXX_COMPILER-NOTFOUND" was not found.  環境: 1.

原创 學習-保存文件

private void button_Click(object sender, EventArgs e) { if (!File.Exists(fileName)) {

原创 學習記錄-Qt之QString格式化字符串

1.自動補零 int val = 16; // 0f QString str = QString("%1").arg(val & 0xFF, 2, 16, QLatin1Char('0')); // 0016 QString str

原创 學習記錄-Qt中使用Q指針和D指針

  總結網上看到的文章,使用D指針的好處如下: 1.保證代碼的二進制兼容性; 2.隱藏實現細節; 3.提高編譯速度; Qt關於D指針和Q指針的定義: d_ptr指針指向私有實現類,使用如下宏定義輔助函數和聲明友元類 #define Q_

原创 學習記錄-Qt將調試信息保存到文件

如果能將調試信息打印到文件,那軟件發佈到其他機器運行時,就可以記錄軟件運行的異常情況了。 查看手冊,Qt 的QtMsgHandler qInstallMsgHandler ( QtMsgHandler handler )函數可以安裝一個自

原创 學習記錄-QTableView自定義委託實現QCheckBox複選框

之前就遇到表格裏內嵌複選框的問題,網上查了好多資料也沒有完全解決,今天花時間研究和實驗後基本搞定。 使用的是自定義委託的方式,重寫了panit函數和editorEvent函數實現指定列內嵌複選框,單擊實現選中狀態切換、選中狀態下按空格鍵也