Qt5-CMake

编写Qt5的CMakeLists.txt文件

参考资料:

1. Qt5官方参考:http://doc.qt.io/qt-5/cmake-manual.html

2. stackoverflow的回答1:http://stackoverflow.com/questions/22215900/add-the-installation-prefix-of-qt5widgets-to-cmake-prefix-path

简述:

我的Qt工程主要包括以下文件:main.cpp window.h window.cpp helper.h helper.cpp glwidget.h glwidget.cpp
然后按照Qt5官方参考写个CMakeLists.txt如下:

1
2
3
4
5
6
7
8
9
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.11)
PROJECT(TEST)
SET(CMAKE_INCLUDE_CURRENT_DIR ON)
SET(CMAKE_AUTOMOC ON)
SET(CMAKE_PREFIX_PATH "/home/yyj/Qt5.7.0/5.7/gcc_64")
SET(SRC_LIST main.cpp window.cpp helper.cpp glwidget.cpp)
FIND_PACKAGE(Qt5Widgets)
ADD_EXECUTABLE(camera_debugger ${SRC_LIST})
TARGET_LINK_LIBRARIES(camera_debugger Qt5::Widgets)

其中第5行的的CMAKE_PREFIX_PATH目录的设置是按照stackoverflow写的,感觉有点僵硬,之后有空再改改。
然后就是一如既往的:

1
2
3
4
mkdir build
cd build/
cmake ..
make

运行./camera_bugger就大功告成啦:)
放张成果图片:
Qt5-CMake-1

Image display using Qt and OpenGL

用Qt Creator调用OpenGL实现图片显示

参考资料:

1. Qt5 2dpainting例子

2. 《Qt5开发实战》第七章

简述:

图片的显示主要用到QGLWidget类,是QWidget的子类。可以使用QPainter重定义函数paintEvent()以绘制2D图形元素。QPainter类是QWidget的子类,所以可以在QGLWidget类中使用QPainter类,以在QGLWidget的3D场景中渲染绘制的2D图形。
先把图片的资源文件加进去:Add New - Qt - Qt Resource File
之后修改2dpainting例子中helper中的paint函数:

1
2
3
4
5
void Helper::paint(QPainter *painter, QPaintEvent *event)
{
QImage image1(":/image/Logo.png");
painter->drawImage(0,0,image1);
}

再对窗口显示和布局进行修改,以及删去一些不相关的东西就好啦。其实我是懒得写

Bash Note

配置Bash下翻墙的方法

1. 修改ShadowSocks-Qt5的Loccal Sever Type为 HTTP(s)
2. 在~目录下的.bashrc文件的最后添加如下两行代码
1
2
export http_proxy=http://127.0.0.1:1080
export https_proxy=$http_proxy
3. 完成,可以试试git clone等是不是速度变快了0.0。

Hexo Note

快捷预览的方法

其实就是把hexo clean, hexo g, hexo s写在了配置文件里
$vim package.json
在”dependencies”前插入三行

1
2
3
"scripts": {
"test":"hexo clean && hexo g && hexo s"
},

之后可运行npm run test,执行hexo生成和本地预览