原创 Qt學習之路27--事件傳遞過程和事件過濾器

事件傳遞過程 在子組件中將事件進行處理後可能再將事件傳遞給父組件對象。 QEvent類是所有事件處理的父類 QEvent中的關鍵成員函數 –void ignore(); 接收者忽略當前事件,但事件可能傳遞給父組件 –void

原创 音視頻--視頻參數基本概念

視頻參數 視頻是利用人眼視覺暫留的原理,通過播放一系列的圖片,使人眼產生運動的感覺。單純傳輸視頻畫面,視頻量非常大,對現有的網絡和存儲來說是不可接受的。爲了能夠使視頻便於傳輸和存儲,人們發現視頻有大量重複的信息,如果將重複信息在發送

原创 音視頻--SDP協議

SDP:會話描述協議,是一種會話描述格式,爲描述多媒體數據而設計。 SDP協議介紹 SDP 完全是一種會話描述格式(對應的RFC2327 , RFC4566) 它不屬於傳輸協議 ,它只使用不同的適當的傳輸協議,包括會話通知協議(SA

原创 Qt學習之路26--事件處理、事件重寫、關閉文本編輯器操作

消息處理模型 - GUI程序必須依賴操作系統運行 - GUI應用程序提供的功能必須由用戶來觸發 - 消息的產生一般是通過用戶對應用程序進行了某種操作(如點擊某個按鈕),隨之操作系統捕捉到這個操作,並讓系統內核將這個操作事件轉換成一

原创 Qt學習之路25--QMap和QHash

在C++標準庫中是有map容器的概念。 QMap QMap是一個以升序鍵順序存儲鍵值對的數據結構 QMap原型爲class QMap<key, value> QMap中根據鍵值key進行的升序排序 QMap中key的類型必須要重載op

原创 Qt學習之路24--簡易文本編輯器--實現可打開、編輯、保存文件操作

本文內容 文件打開 文件保存 特殊細節考慮 完整代碼 在前面幾節,從學習主窗口QMainWindow開始都是爲了簡易的文本編輯器的開發,在QMainWindow中學習了菜單欄、狀態欄以及工具欄,這正是構成一個簡易文本編輯器所需的界面功

原创 Qt學習之路23--緩衝區QBuffer和目錄QDir

緩衝區 緩衝區的概念就是一段連續的存儲空間 Qt中使用QBuffer類進行緩衝區相關操作 在Qt中可以將緩衝區看做是一種特殊的IO設備 文件流輔助類是針對IO設備的,可以像操作文件直接作用於緩衝區 只要有數據的讀寫和存取都可能會用到緩衝

原创 Qt學習之路22--文本流和數據流

Qt中的文件分爲兩類 文本文件:文件內容是直接可讀的字符 數據文件:文件內容是二進制數據 在上一節中的QFile直接支持文本文件和數據文件的讀寫,具體見https://blog.csdn.net/tqs_1220/article/de

原创 音視頻--RTSP協議

RTSP簡介 RTSP協議以客戶端/服務器方式工作,如:暫停/繼續、後退、前進等。它是一個多媒體播放控制協議,用來控制用戶在播放從因特網下載的實時數據,因此 RTSP 又稱爲“因特網錄像機遙控協議”。 RTSP(Real-Time St

原创 Qt學習之路17--佈局管理器之嚮導界面

前前後後學習了四種佈局管理器了,分別是盒子佈局管理器QBoxLayout、網格佈局管理器QGridLayout、表單佈局管理器QFormLayout、棧式佈局管理器QStackedLayout。 練習 可以通過這四種佈局管理器實現一個嚮導

原创 Qt學習之路7--字符串類QString

簡介 字符串的概念在C語言中就存在,有一個歷史遺留問題,就是C語言其實是不支持真正意義上的字符串,它是通過字符數組和一組函數實現字符串的操作。 但是在C到C++的進化之後C++已經支持通過定義類來定義自定義類型,這樣就可以自定義字符串類

原创 Qt學習之路16--佈局管理器(QStackedLayout)和QTimer

前言 QStackedLayout,通過名字裏帶有一個stack,大概可以猜到今天學習的佈局管理器的行爲應該和stack相關,也就是和棧相關,通過棧能想到棧的後進先出以及每次只能拿到棧頂的數據,沒錯,今天學的就叫棧式佈局管理器,這是最特別

原创 Qt學習之路11--Qt標準對話框(顏色對話框和輸入對話框)

在上一篇裏面,學習了兩種Qt提供的標準對話框,消息對話框和文件對話框,消息對話框用於向用戶提示信息;文件對話框用戶獲取用戶選擇的文件路徑。 今天繼續學習 Qt提供的其他兩種對話框,顏色對話框和輸入對話框。 顏色選擇對話框 顏色對話框用於

原创 Qt學習之路18--主窗口QMainWindow之菜單欄QMenubar

什麼是主窗口? 主窗口通常是應用程序啓動後顯示的第一個窗口,是與用戶進行長時間交互的頂層窗口,因爲絕大的功能都是由主窗口進行提供,還有部分功能由對話框提供。 在Qt中直接支持主窗口的概念,QMainWindow類是所有主窗口的基類,它是

原创 Qt學習之路14--佈局管理器(QGridLayout)

上一節講過以行列布局的QBoxLayout佈局管理器,最後通過佈局管理器嵌套的方式實現了兩行兩列的佈局,今天我們學習另外一種佈局管理器QGridLayout,它也能實現同樣的功能。 由於網格佈局管理器中的組件也是會隨着窗口拉伸而發生