原创 主流嵌入式開源GUI比較

前言 本文主要說明了MicroWindows、MiniGui、QT、GTK+、OpenGUI和FLTK,第七小節是對比的詳細表格,內容是根據網上的一些資料還有各大開源GUI的官網的資料整理而來,目的是爲自己以後學習把握方向。 1 Micr

原创 QT 事件總結

Qt 的事件處理,有五個層次: 1. 重寫 paintEvent()、mousePressEvent()等事件處理函數。這是最普通、最簡單的形式,同時功能也最簡單。 2. 重寫 event()函數。event()函數是所有對象的事件入口

原创 【數學】在平面中,一個點繞任意點旋轉θ度後的點的座標

// ptSrc: 圓上某點(初始點); // ptRotationCenter: 圓心點; // angle: 旋轉角度° -- [angle * M_PI / 180]:將角度換算爲弧度 QPointF MathWidget::R

原创 Git 使用手冊

Git官方文檔 https://git-scm.com/book/zh/v2 簡單git操作可以分以下五部(提交到master,不是分支) ------------------------------------------------

原创 Qt 中設置窗體透明度的幾種方法

1、設置窗體的背景色 在構造函數裏添加代碼,需要添加頭文件qpalette或qgui QPalette pal = palette(); pal.setColor(QPalette::Background, QColor(0x00,0

原创 QT5 解決中文顯示亂碼問題

兩種方法: 第一種: 在頭文件中加入代碼 #pragma execution_character_set("utf-8") 第二種: 在中文處,使用 QStringLiteral 包一下,如下所示: ui.pushButton_Sub

原创 Link錯誤 - dll 鏈接不一致 - “QZXing::staticMetaObject”: 不允許 dllimport 靜態數據成員 的定義

發生問題的原因有以下幾種: 1. 在生成 dll 的工程中,未添加導出宏 __declspec(dllexport) 2. 在生成 dll 的工程中,有未定義的函數(即:只有聲明) 3. 在生成 dll 的工程中,純虛析構函數 / 析構函

原创 使用QZXing生成並解析二維碼

QZxing 是對 zxing 的一個封裝,用於在 Qt 程序中加入條形碼和二維碼識別的功能。這裏就講講如何編譯和使用這個庫。 前幾年 QZXing 的代碼是放到 sourceforge.net 上的,現在遷移到了 github.com。

原创 如何查看dll以及lib文件是32位還是64位

可藉助vs自帶工具dumpbin.exe 執行: dumpbin.exe   /headers   文件路徑 例如: 直接輸入:dumpbin.exe 可查看該命令的詳情。 如下如所示: 另外: VS2013設置工程32位/64位切換

原创 C++ 使用 fstream 實現對象的序列化和反序列化

序列化: 將數據結構或對象轉換成二進制串的過程。 反序列化:將在序列化過程中所生成的二進制串轉換成數據結構或者對象的過程。 下面就用相關函數實現普通的字符文件操作 和 二進制文件操作。代碼註釋很詳細 普通文件操作 #define _CR

原创 二進制如何轉十進制,十進制如何轉二進制

轉成二進制主要有以下幾種:正整數轉二進制,負整數轉二進制,小數轉二進制1、  正整數轉成二進制。要點一定一定要記住哈:除二取餘,然後倒序排列,高位補零。        也就是說,將正的十進制數除以二,得到的商再除以二,依次類推知道商爲零或

原创 RapidJson簡介

RapidJSON是一個C++的高性能的JSON解析器及生成器,同時支持SAX/DOM風格的API。簡介RapidJSON是一個C++的JSON解析器及生成器。它的靈感來自RapidXmlRapidJSON小而全。它同時支持SAX和DOM

原创 位運算總結(按位與,或,異或)

按位與運算符(&)參加運算的兩個數據,按二進制位進行“與”運算。運算規則:0&0=0;  0&1=0;   1&0=0;    1&1=1;      即:兩位同時爲“1”,結果才爲“1”,否則爲0例如:3&5  即 0000 0011&

原创 各種加密算法比較

各種加密算法比較算法選擇:對稱加密AES,非對稱加密: ECC,消息摘要: MD5,數字簽名:DSA對稱加密算法(加解密密鑰相同)名稱密鑰長度運算速度安全性資源消耗DES56位較快低中3DES112位或168位慢中高AES128、192、