Qt安装及简单配置

本文介绍了如何在Windows上安装Qt SDK,选择Desktop选项并使用Mingw编译器。通过傻瓜式安装过程,无需复杂配置即可使用Qt Creator进行桌面应用开发。同时,文章提供了不使用Qt Creator时的环境变量设置方法,以及生成release版本的步骤。对于支持中文,文章也给出了一种解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

// QQ交流群: [OpenSouce] 135202158

// email: psyc209 [安特] 163.com


看不进去书,无聊,于是去下载了一个最新的Qt SDK for Windows的离线包:http://10.10.4.10/download/5496245/6518831/5/exe/230/176/1315113040870_688/Qt_SDK_Win_offline_v1_1_3_en.exe,在线安装很慢的。。。

安装时选择了Desktop,我想它应该是用于桌面应用开发的。编译器用的是Mingw。想用VS2008的需要自己重新编译QT源码,或使用商业受权的Qt。

Windows的安装是比较傻瓜的,基本上不需要配置什么,直接打开Qt Creator创建一个空项目测试如下hello world代码就是了:

#include <QApplication>
#include <QLabel>

int main(int argc, char** argv)
{
    QApplication app(argc, argv);
    QLabel* label = new QLabel("Hello Qt!");
    label->show();
    return app.exec();
}

如果你不想使用Qt Creator这IDE,需要先将某些目录加入到PATH环境变量中,例如我的机器中加入的如下:

C:\QtSDK\Desktop\Qt\4.7.4\mingw\bin;C:\QtSDK\mingw\bin;

可以建一个目录hello,然后把以上文件(假定为main.cpp)放入hello目录,再在cmd中cd到此目录,并依次运行:

qmake -project

qmake hello.pro

mingw32-make

然后,在hello目录里的debug目录里,就有了hello.exe,点击运行即可。

如果想生成 release版本,则以上第一行改为:

qmake -project "CONFIG+=release"


若想让Qt支持中文,我发现了一个方法,参见以下代码:

#include <QApplication>
#include <QPushButton>
#include <QTextCodec>

int main(int argc, char** argv)
{
    QApplication app(argc, argv);
    QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF8"));
    QPushButton* button = new QPushButton(QObject::tr("退 出"));
    QObject::connect(button, SIGNAL(clicked()),
                     &app, SLOT(quit()));
    button->show();
    return app.exec();
}


### 如何在Qt中集成并使用OpenCV 4.10 #### 集成准备 为了使Qt项目能够顺利调用OpenCV库,需先完成两者各自的安装工作。对于OpenCV而言,除了基本版本外,还建议考虑安装`opencv_contrib`模块来获取更多功能[^1]。 #### 设置CMakeLists.txt文件 当采用CMake构建系统时,在Qt Creator里创建新项目后应编辑项目的`CMakeLists.txt`文件以包含OpenCV路径: ```cmake find_package(OpenCV REQUIRED) include_directories(${OpenCV_INCLUDE_DIRS}) target_link_libraries(your_project_name ${OpenCV_LIBS}) ``` 上述命令会自动寻找已安装于系统的OpenCV,并将其头文件目录加入编译选项之中;同时也会指定链接哪些库给目标程序使用。 #### 编写简单的图像显示例子 下面给出一段简单代码用于展示如何读取图片并通过Qt窗口组件呈现出来: ```cpp #include <QApplication> #include <QWidget> #include <QImage> #include "opencv2/opencv.hpp" class ImageWidget : public QWidget { protected: void paintEvent(QPaintEvent *) override; private: QImage image_; }; void ImageWidget::paintEvent(QPaintEvent*) { QPainter painter(this); painter.drawImage(rect(), image_); } int main(int argc, char *argv[]) { QApplication app(argc, argv); cv::Mat mat = cv::imread("example.jpg"); if (mat.empty()) { qDebug() << "Failed to load image"; return -1; } auto widget = new ImageWidget(); // Convert from Mat to QImage. QImage img(mat.data, mat.cols, mat.rows, static_cast<int>(mat.step), QImage::Format_RGB888); widget->image_ = img.rgbSwapped(); // Swap R and B channels since OpenCV uses BGR format by default widget->resize(img.size()); widget->show(); return app.exec(); } ``` 此段代码实现了通过OpenCV加载一张JPEG格式的照片到内存中,再转换为Qt可以处理的形式最后呈现在界面上的功能[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值