• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            O(1) 的小樂

            Job Hunting

            公告

            記錄我的生活和工作。。。
            <2025年5月>
            27282930123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            統計

            • 隨筆 - 182
            • 文章 - 1
            • 評論 - 41
            • 引用 - 0

            留言簿(10)

            隨筆分類(70)

            隨筆檔案(182)

            文章檔案(1)

            如影隨形

            搜索

            •  

            最新隨筆

            最新評論

            閱讀排行榜

            評論排行榜

            Qt 深入淺出

            Qt 深入淺出

            經常有人問哪里有學習Qt的資料,Qt的教程,怎么才能入門等等,或者抱怨說中文的信息太少。其實網上有很多關于Qt的學習資料,今天在這里總結一下,希望各位想學習Qt的同學,各取所需,早日從入門到精通!

            Part 1: 新手上路

            Qt 官方學習教程
            Qt 官方學習教程包含了3部分,包括如何學習Qt,如何逐步創建一個地址簿應用以及如何編寫Qt Widget。教程由淺入深,Qt初學者必讀
            如何學習 Qt
            我們假定您已了解 C++, 并將用于 Qt 開發。有關將 Qt 與其他編程語言一起使用的更多信息,請參見 Qt 網站。。。。。
            地址簿教程
            本教程介紹了使用 Qt 跨平臺框架的 GUI 編程。在學習過程中,我們將了解部分 Qt 基本技術,如Widget 和布局管理器,容器類,信號和槽,輸入和輸出設備等。。
            Widgets 教程
            Widget 是使用 Qt 編寫的圖形用戶界面 (GUI) 應用程序的基本生成塊。每個 GUI 組件,如按鈕、標簽或文本編輯器,都是一個 widget ,并可以放置在現有的用戶界面中或作為單獨的窗口顯示。每種類型的組件都是由 QWidget 的特殊子類提供的,而 QWidget 自身又是 QObject 的子類。
            Qt 學習之路:
            來自于FinderCheng的Qt 學習之路。簡介:在本系列文章中,FinderCheng使用Qt4進行C++ GUI的開發。我是參照著《C++ GUI Programming with Qt4》一書進行學習的。其實,我也只是初學Qt4,在這里將這個學習筆記記下來,希望能夠方便更多的朋友學習Qt4。我是一個Java程序員,感覺 Qt4的一些命名規范以及約束同Java有異曲同工之妙,因而從Java遷移到Qt4似乎困難不大。不過,這也主要是因為Qt4良好的設計等等。
            Qt學習之路(1):前言
            Qt是一個著名的C++庫——或許并不能說這只是一個GUI庫,因為Qt十分龐大,并不僅僅是GUI。使用Qt,在一定程序上你獲得的是一個“一站式”的服務:不再需要研究STL,不再需要C++的 ,因為Qt有它自己的QString等等。或許這樣說很偏激,但Qt確實是一個 “偉大的C++庫”。
            Qt學習之路(2):Hello, world!
            任何編程技術的學習第一課基本上都會是Hello, world!,我也不想故意打破這個慣例——照理說,應該首先回顧一下Qt的歷史,不過即使不說這些也并無大礙。
            Qt學習之路(3):Hello, world!(續)
            下面來逐行解釋一下前面的那個Hello, world!程序,盡管很簡單,但卻可以對Qt程序的結構有一個清楚的認識。現在再把代碼貼過來:
            Qt學習之路(4):初探信號槽
            所謂信號槽,簡單來說,就像是插銷一樣:一個插頭和一個插座。怎么說呢?當某種事件發生之后,比如,點擊了一下鼠標,或者按了某個按鍵,這時,這個組件就 會發出一個信號。就像是廣播一樣,如果有了事件,它就漫天發聲。這時,如果有一個槽,正好對應上這個信號,那么,這個槽的函數就會執行,也就是回調。就像 廣播發出了,如果你感興趣,那么你就會對這個廣播有反應。干巴巴的解釋很無力,還是看代碼:
            Qt學習之路(5):組件布局
            顧名思義,絕對定位就是使用最原始的定位方法,給出這個組件的坐標和長寬值。這樣,Qt就知道該把組件放在哪里,以及怎么設置組件的大小了。但是這樣做的 一個問題是,如果用戶改變了窗口大小,比如點擊了最大化或者拖動窗口邊緣,這時,你就要自己編寫相應的函數來響應這些變化,以避免那些組件還只是靜靜地呆 在一個角落。或者,更簡單的方法是直接禁止用戶改變大小。
            Qt學習之路(6): API文檔的使用
            今天來說一下有關Qt API文檔的使用。因為Qt有一個商業版本,因此它的文檔十分健全,而且編寫良好。對于開發者來說,查看文檔時開發必修課之一——沒有人能夠記住那么多API的使用!
            Qt學習之路(7): 創建一個對話框(上)
            首先說明一點,在C++ GUI Programming with Qt4, 2nd中,這一章連同以后的若干章一起,完成了一個比較完整的程序——一個模仿Excel的電子表格。不過這個程序挺大的,而且書中也沒有給出完整的源代 碼,只是分段分段的——我不喜歡這個樣子,我想要看到我寫出來的是什么東西,這是最主要的,而不是慢慢的過上幾章的內容才能看到自己的作品。
            Qt學習之路(8): 創建一個對話框(下)
            Qt是分模塊的,記得我們建工程的時候就會問你,使用哪些模塊?QtCore?QtGui?QtXml?等等。這里,我們引入QtGui,它包括了 QtCore和QtGui模塊。不過,這并不是最好的做法,因為QtGui文件很大,包括了GUI的所有組件,但是很多組件我們根本是用不到的——就像 Swing的import,
            Qt學習之路(9):深入了解信號槽
            槽函數和 普通的C++成員函數沒有很大的區別。它們也可以使virtual的;可以被重寫;可以使public、protected或者private 的;可以由其它的C++函數調用;參數可以是任何類型的。如果要說區別,就是,槽函數可以和一個信號相連接,當這個信號發生時,它可以被自動調用。
            Qt學習之路(10): Meta-Object系統
            前面說過,Qt使用的是自己的預編譯器,它提供了對C++的一種擴展。利用Qt的信號槽機制,就可以把彼此獨立的模塊相互連接起來,不需要實現知道模塊的任何細節。為了達到這個目的,Qt提出了一個Meta-Object系統。它提供了兩個關鍵的作用:信號槽和內省。
            Qt學習之路(11): MainWindow
            盡管Qt提供了很方便的快速開發工具QtDesigner用來拖放界面元素,但是現在我并不打算去介紹這個工具,原因之一在于我們的學習大體上是依靠手工編寫代碼,過早的接觸設計工具并不能讓我們對Qt的概念突飛猛進
            Qt學習之路(12): 菜單和工具條
            在前面的QMainWindow的基礎之上,我們開始著手建造我們的應用程序。雖然現在已經有一個框架,但是,確切地說我們還一行代碼沒有寫呢!下面的工作就不那么簡單了!在這一節里面,我們要為我們的框架添加菜單和工具條。
            Qt學習之路(13): 菜單和工具條(續)
            前面一節我們已經把QAction添加到菜單和工具條上面。現在我們要添加一些圖片美化一下,然后把信號槽加上,這樣,我們的action就可以相應啦!
            Qt學習之路(14): 狀態欄
            今天的內容主要還是繼續完善前面的那個程序。我們要為我們的程序加上一個狀態欄。
            Qt學習之路(15): Qt標準對話框之QFileDialog
            下面還是按照我們的進度,從Qt的標準對話框開始說起。所謂標準對話框,其實就是Qt內置的一些對話框,比如文件選擇、顏色選擇等等。今天首先介紹一下QFileDialog。
            Qt學習之路(16): Qt標準對話框之QColorDialog
            繼續來說Qt的標準對話框,這次說說QColorDialog。這是Qt提供的顏色選擇對話框。
            Qt學習之路(tip): parent參數
            程序寫的多了,你會發現幾乎所有的Qt類的構造函數都會有一個parent參數。這個參數通常是QObject* 或者是 QWidget* 類型的。
            Qt學習之路(17): Qt標準對話框之QMessageBox
            這次來說一下QMessageBox以及類似的幾種對話框。其實,我們已經用過QMessageBox了,就在之前的幾個程序中。
            Qt學習之路(18): Qt標準對話框之QInputDialog
            這是Qt標準對話框的最后一部分。正如同其名字顯示的一樣,QInputDialog用于接收用戶的輸入。

            Part 2: 進階學習

            Qt4 學習筆記
            Qt4 學習筆記(繁體中文) 簡體中文(Google 翻譯)
            來自臺灣的caterpillar,Qt4 學習筆記由淺入深,分門別類的介紹了Qt4 中的許多特性,如事件處理,常用圖型元件,常用 API,檔案處理,拖放(Drag & Drop)與剪貼,多執行緒(Multithreading)很多內容,是進一步學習Qt的極好教程
            Qt 開發實例
            Code Project:創建一個媒體播放器
            這里我們將會構建所能想到的最簡單和最直觀的音樂播放器,給用戶提供另一個選擇。 從蘋果的新款iPod Shuffle吸取一些靈感,只提供最基本的控制功能。
            Code Project:創建一個FFMPEG前端
            如果說有一種工具非常需要GUI,那就是FFMPEG。FFMPEG是一個十分優秀的命令行應用程序,它可以將視頻和電影文件從一種格式轉換為另一種格式。
            Code Project:創建一個Qt RSS閱讀器
            這個應用程序就是一個RSS閱讀器,它允許用戶添加自己的種子,列出該種子上的內容,然后讓用戶在主應用程序自帶的一個瀏覽器窗口中閱讀這些內容。
            Qt Graphics View詳解
            來自清源游民的Qt筆記,詳解介紹了Qt Graphics View中各個對象的概念和使用方法。對于Graphics View的學習大有裨益。
            Qt 的 Graphics View 框架(一)
            Graphics View提供了一個界面,它既可以管理大數量的定制2D graphical items,又可與它們交互,有一個view widget可以把這些項繪制出來,并支持旋轉與縮放。
            Qt 的 Graphics View 框架(二)
            Graphics View基于笛卡爾坐標系。item在場景中的位置與幾何形狀通過x,y坐標表示。當使用未經變形的視圖來觀察場景時,場景中的一個單位等于屏幕上的一個像素。
            Qt 的 Graphics View 框架(三)
            QGraphicsView通過QGraphicsView::setMatrix()支持同QPainter一樣的仿射變換,通過對一個視圖應用變換,你可以很容易地支持普通的導航特性如縮放與旋轉。
            關于Qt編程的書籍
            接下來當你學習了上面的相關內容后,就可以開始閱讀Qt編程的書籍進行系統的學習了。當然,書也不一定要從頭到尾閱讀一遍,用時拿出來學習和參考也很不錯
            C++ GUI Programming with Qt 4 (2nd Edition) (英文版)
            C++ GUI Qt4 編程中文版China-pub購買地址

            本書詳細講述了用最新的Qt版本進行圖形用戶界面應用程序開發的各個方面。前5章主要涉及Qt基礎知識,后兩個部分主要講解Qt的中高級編程,包括布局管 理、事件處理、二維/三維圖形、拖放、項視圖類、容器類、輸入/輸出、數據庫、多線程、網絡、XML、國際化、嵌入式編程等內容。對于本書講授的大量 Qt4編程原理和實踐,都可以輕易將其應用于Qt4.4、Qt4.5以及后續版本的Qt程序開發過程中。

            C++ GUI Programming with Qt 4 (英文第一版)
            The Book of Qt 4 - The Art of Building Qt Applications

            Part3:深入理解

            Inside Qt 系列
            QKevin所著,通過剖析Qt源代碼,深入淺出的解釋了Qt中的許多機制,了解Qt內部是如何 work 的。著實為想深入了解Qt的開發者提供了很好的學習機會。如果你已經學習了上面的內容并且熟練掌握Qt編程,那么大力推薦這一系列文章!
            Inside Qt Series: 序
            寫了這么多年的程序,除了留下很多 code (其中有很多是garbage)之外,再沒有其它東西,或許我該寫點兒什么了,寫一些關于我的工作的東西,自己所了解的技術,也把自己在工作過程中新學習的一些東西放在這兒,就算是為了以后做一個參考。
            Inside Qt Series (一):Let’s go, Starting From the QObject
            QObject 這個 class 是 QT 對象模型的核心,絕大部分的 QT 類都是從這個類繼承而來。這個模型的中心特征就是一個叫做信號和槽(signal and slot)的機制來實現對象間的通訊,
            Inside Qt Series (二):對象數據存儲(A)
            我們知道,在C++中,幾乎每一個類(class)中都需要有一些類的成員變量(class member variable),在通常情況下的做法如下:
            Inside Qt Series (三):對象數據存儲(B)
            在 QT 4.4 中,類成員變量定義方法的出發點沒有變化,只是在具體的實現手段上發生了非常大的變化,下面具體來看。
            Inside Qt Series (四):對象數據存儲(C)
            接上節,讓我們來看看這個 QObjectPrivate 和 QObject 是如何關聯在一起的。
            Inside Qt Series (五):元對象系統(Meta-Object System)
            從本節開始,我們講解 QT Meta-Object System 的功能,以及實現。在使用 Qt 開發的過程中,大量的使用了 signal 和 slot. 比如,響應一個 button 的 click 事件,我們一般都寫如下的代碼:
            Inside Qt Series (六):元對象編譯器 – Meta Object Compiler (moc)
            元對象編譯器用來處理QT 的C++擴展,moc 分析C++源文件,如果它發現在一個頭文件(header file)中包含Q_OBJECT 宏定義,然后動態的生成另外一個C++源文件
            Inside Qt Series (七):Signal & Slot
            信號和 槽是用來在對象間通訊的方法,當一個特定事件發生的時候,signal會被 emit 出來,slot 調用是用來響應相應的 signal 的。
            Inside Qt Series (八):Meta Object Class overview
            前面我們介紹了 Meta Object 的基本功能,和它支持的最重要的特性之一:Signal & Slot的基本功能。現在讓我們來進入 Meta Object 的內部,看看它是如何支持這些能力的。
            Inside Qt Series (九):QMetaObject class data members
            我們來看一下QMetaObject的定義,我們先看一下QMetaObject對象中包含的成員數據。
            Inside Qt Series (十):connect,幕后的故事
            我們都知道,把一個signal和slot連接起來,需要使用QObject類的connect方法,它的作用就是把一個object的signal和另外一個object的slot連接起來,以達到對象間通訊的目的。
            Inside Qt Series (十一):emit,幕后的故事
            當我們寫下一下emit signal代碼的時候,與這個signal相連接的slot就會被調用,那么這個調用是如何發生的呢?讓我們來逐一解開其中的謎團。
            Inside Qt Series (十二):Qt對象之間的父子關系
            很多C/C++初學者常犯的一個錯誤就是,使用malloc、new分配了一塊內存卻忘記釋放,導致內存泄漏。Qt的對象模型提供了一種Qt對象之間的父 子關系..
            Inside Qt Series (十三):Qt/e體系結構概述
            首先,讓我們來看看Qt/e的系統結構介紹:Qt for destop Linux 和 Qt for Embedded Linux 最大的區別就在于他們所依賴的底層顯示基礎的不同,這也就導致了他們在體系結構上的差異。
            Inside Qt Series (十四):Qt/e輸入法程序設計指南
            本輸入法設計指南針對Qt for Embedded Linux 4.5.1,并且以中文輸入法為例做說明,并且本文只是側重于說明Qt/Embedded對輸入法的支持接口,
            Inside Qt Series (十五):Qt/e 輸入法,How it works?
            前面我們介紹了Qte輸入法的基本設計思路,以及一個最簡單的例子,那么,Qte的輸入法是如何工作的呢?本節我們就來看一下Qte的源代碼,一起來解開這個謎團。

            Part 4:移動平臺開發

            Symbian S60
            Forum Nokia Qt for Mobile Developers training
            09年10月21至23號,某人參加了諾基亞在北航舉辦的Qt開發培訓。培訓師是來自于芬蘭的Niemi Petri,英語比好多芬蘭人要好,課程講得深入淺出,很好理解。課程內容涉及Qt的基本知識,以及Qt在S60和Maemo上的開發。下面是培訓的PPT和作業以及演示代碼。
            第一天培訓ppt:Qt for mobile – Day 1
            第二天培訓ppt:Qt for mobile – Day 2
            第三天培訓ppt:Qt for mobile – Day 3
            第一天練習:Exercise – Day 1
            第二天演示:Demo – Day 2
            Maemo

            轉自:http://www.qteverywhere.com/learnqt

            posted on 2010-12-22 11:26 Sosi 閱讀(871) 評論(0)  編輯 收藏 引用 所屬分類: Daily Life

            統計系統
            久久精品人人做人人爽电影蜜月| 亚洲国产成人久久综合一区77| 久久久久久噜噜精品免费直播| 国产午夜精品久久久久九九| 精品国产福利久久久| 无码乱码观看精品久久| 久久亚洲国产欧洲精品一| 人人狠狠综合久久亚洲| 久久婷婷五月综合色高清| 一本一道久久a久久精品综合| 亚洲熟妇无码另类久久久| 久久99精品久久久久久齐齐| 区久久AAA片69亚洲| 亚洲国产视频久久| 亚洲成av人片不卡无码久久| 久久精品国产亚洲av麻豆色欲| 久久人人爽人爽人人爽av| 精品久久久久久无码人妻热| 午夜精品久久久久久久| 婷婷久久香蕉五月综合加勒比| 久久精品亚洲男人的天堂| 国产精品99久久精品| 97久久国产亚洲精品超碰热| 伊人久久无码精品中文字幕| 久久国产精品一区| 久久亚洲精品视频| 久久这里只有精品首页| 97久久久精品综合88久久| 日日噜噜夜夜狠狠久久丁香五月| 欧美精品九九99久久在观看| 久久久久久A亚洲欧洲AV冫| 中文字幕久久欲求不满| 久久伊人五月天论坛| 久久久久女教师免费一区| 国产成人无码精品久久久久免费 | 人人狠狠综合久久亚洲88| 久久久亚洲欧洲日产国码aⅴ| 香蕉久久夜色精品升级完成| 久久婷婷五月综合色高清 | 久久天天躁狠狠躁夜夜2020老熟妇| 亚洲午夜久久影院|