1、在vs中安装Qt VS Tools
- 打开vs2022,直接进入后点击菜单栏的扩展->管理扩展。
- 在搜索框中输入Qt,然后进行安装。

- 【重点】Qt扩展设置
- 进入设置:

- 进入Qt->General,将Qt Designer中的Run in detached window设置为True(避免双击打开*.ui文件报错)

- 进入Qt->Versions,设置Qt版本:

2、在vs中创建Qt项目
- 点击创建新项目

- 选择C++,Qt可以快速选择

- 输入项目名称后直接点击创建,开始qt项目创建弹窗

- 这里直接点击下一步(模块项目建好后也可以添加的)

- 根据需要选择(QMainWindow–自带菜单栏、状态栏等;QWidget–空窗口;QDialog–弹窗)

- 点击Finish创建完成,然后直接F5运行即可。
- 在项目中添加Qt模块,鼠标右键选择项目属性,然后按下图进行设置:

3、开始开发
3.1 界面编辑
- 双击ui文件,进入Qt Designer进行界面设计。
- 设计完成后再Qt Designer中点击保存,然后再回到vs中运行项目就可以看到新设计的窗口。
- 如果出现控件显示不完整或大小不匹配,一般是高DPI显示器导致的,在main函数中加入以下代码解决:
QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
3.2 信号、槽
- 由于vs中没办法像Qt Creator一样直接转到槽,所以在vs中一般使用两种方式进行信号和槽绑定:
- 按默认命名规则使用默认槽函数
- 使用默认槽函数,就不用写connect函数来连接信号和槽。使用方式是在类下写on_控件名_clicked函数并实现,qt就可以通过内部的QMetaObject::connectSlotsByName方法将此控件的信号和槽函数连接一起。
public slots:
void on_控件名_信号();
- 使用connect手动绑定信号和槽。
3.3 中文编码问题
- 安装FileEncoding扩展:

- 安装好扩展后,在vs编辑窗口的右下角,将包含中文的文件使用**UTF-8(BOM)**保存。
- 注意:这里是选择UTF-8(BOM),刚开始想偷懒选的UTF-8保存文件,中文也可以显示。后面发现当中文是单数的时候编译也有问题,显示最后一个字也乱码,最后还是只能使用UTF-8(BOM)保存文件,然后在使用中文的地方用QStringLiteral,目前没有出问题。

- 在QT5环境中在使用中文的地方加上QStringLiteral。
#include <QDebug>
int main(void)
{
QString str(QStringLiteral("我是中文"));
qDebug() << str;
return 0;
}