原创 Qt5 OpenGL教程系列1:基礎渲染

文章目錄OpenGLBufferQOpenGLVertexArrayObjectQOpenGLShaderProgram基本渲染1.創建一個Vertex類(以簡化操作)。2.將QOpenGL *類添加到Window類3.創建我們的

原创 Effective QML Part0:編碼規範

文章目錄Item 0:編碼規範信號處理順序屬性的順序函數順序動畫可以放棄部分組件的id屬性賦值Import語句 Item 0:編碼規範 本節提供有關如何格式化屬性,信號和函數的順序,以使事情變得輕鬆並快速切換到相關代碼塊。 QM

原创 Effective QML Part1:綁定(Binding)

文章目錄Item1:綁定減少綁定數使用Connections使用Binding對象臨時綁定KISS延遲綁定避免不必要的重新評估 Item1:綁定 如果我們能使用好綁定,他將發揮出巨大的作用。只要屬性依賴於更改,就對綁定進行重新計算

原创 Qt5 OpenGL教程系列0:創建一個窗口

文章目錄關於Qt5 OpenGL教程系列QOpenGLWindowQOpenGLFunctions創建一個Window1. 新建一個項目2. 創建窗口類3. 編輯main.cpp來創建窗口總結 關於Qt5 OpenGL教程系列 本

原创 Qt5 OpenGL教程系列2:基礎渲染

文章目錄OpenGLBufferQOpenGLVertexArrayObjectQOpenGLShaderProgram基本渲染1.創建一個Vertex類(以簡化操作)。2.將QOpenGL *類添加到Window類3.創建我們的

原创 正確使用CMake

文章目錄簡介一個錯誤的例子目標(Target)和屬性(Properties)構建要求與使用要求libjsonutils放下CMAKE_CXX_FLAGS使用target_link_libraries建立依賴關係導入目標好的項目應該導出

原创 Linux下音頻格式轉換命令行工具

這裏寫自定義目錄標題Sox音頻轉換使用Mplayer將多種格式的而文件編碼至WAV使用FFmpeg將各種類型文件轉換成各種類型文件使用Lame編碼或者已不同的比特率重新編碼MP3以Ogg Vorbis格式編碼從音頻文件中獲取信息 在日

原创 QML如何與QSystemTrayIcon協同工作

文章目錄問題來源第一個版本系統托盤項目的結構QmlSystemTray.promain.cppsystemtray.hsystemtray.cppmain.qml第二個變種系統托盤項目的結構QmlSystemTray_2.promai

原创 Qt QML中MVC的應用

總覽QML應用程序架構最佳實踐爲什麼要關心界面,數據,邏輯分離的問題?設計模式,如MVC,MVVM或FluxQML中的模型 - 視圖分離創建清潔數據流:受Flux啓發的QML架構QML的簡單Flux-like MVC示例應用邏輯Dat

原创 如何將帶有信號與槽的C++代碼暴露給QML

使用QML進行應用程序開發簡單而強大。但是Qt C ++可以提高性能,提供許多功能並且不易出錯。這篇文章向您展示瞭如何創建利用這兩種語言的應用程序。 文章目錄如何在C ++和QML之間進行通信QML中編碼的優點何時使用C ++代替如

原创 理解evdev

翻譯自這裏 文章目錄理解evdev什麼是evdev?與evdev設備通信相關設備和鍵盤來自相關設備和鍵盤的事件絕對的設備來自絕對設備的事件多點觸控和插槽 理解evdev 這篇文章解釋了evdev協議的工作原理。閱讀本文後,您應該瞭解

原创 2.製作第一個驅動程序

驅動框架 先講解驅動框架,然後寫出first_drv驅動程序,來打印一些信息 寫出first_drv驅動程序需要以下幾步: 寫出驅動程序first_drv_open、first_drv_write 需要定義file_operatio

原创 基於HTTP/2的REST API的好處

HTTP / 1.x與HTTP / 2 首先,讓我們看看有哪些高層差異: HTTP / 2是二進制的,而不是文本的 與HTTP / 1.x等文本協議相比,二進制協議更有效地解析,在信道上更緊湊,最重要的是,與HTTP / 1.x等

原创 從Google Test 轉到 Catch

前言 如果你見過我,你可能會知道我是自動化測試的忠實信徒。即使對於小型項目,我也傾向於在早期實施一些測試,對於大型項目,我認爲測試是絕對必要的。我可以花很長時間來講爲什麼測試很重要,而你應該這樣做,但這不是今天的主題。相反,我將介紹爲

原创 解析Qt內省機制

何爲內省 所謂內省是指面嚮對象語言的一種在運行期間查詢對象信息的能力, 比如如果該語具有運行期間檢查對象型別的能力,那麼我們稱它是型別內省(type intropection)的,型別內省可以用來實施多態。 C++的內省比較有限,它僅支持