目录

1 Qt下载

2 Qt Creator手册

1 edit toolbar

2 双击某控件更改控件名称。

3 Qt signal & slot

Qt 6+vtk9.1+vs2019配置


1 Qt下载

现在下载Qt需要先注册Qt账号。地址https://www.qt.io。版本Qt creator 7.0,Qt 6.2.3. 网站推荐使用online installer。安装后可用qt根目录的maintenancetool.exe修改安装配置。

2 Qt Creator手册

1 edit toolbar

<>在编辑位置间跳转

打开文件下拉菜单,选择已打开文件

符号下拉菜单,快速定位符号

行号、列号:定位至某行:某列

2 双击某控件更改控件名称。

3 Qt signal & slot

signal是事件,例如按钮点击;slot是处理函数。

在控件上右键点击,出现环境菜单。例如,按钮的clicked(),然后点击OK。

此时,在.h文件添加了on_findButton_clicked()函数声明,在.cpp文件添加了TextFinder::on_findButton_clicked()默认函数体。

int main(int argc, char *argv[])
{QApplication EditorApp(argc, argv);Notepad Editor;Editor.show();return EditorApp.exec();
}

QApplication声明了一个程序;notepad声明了界面,show显示界面,exec()进入程序循环。

对控件进行设计的文件位于*.ui中,为xml格式。控件都位于ui对象中,通过ui->来进行引用。

Qt文件结构:假如窗口文件名为mainWindow.ui,ui进行处理后产生ui_mainWindow.h,是窗口控件的初始化包含文件。mainWindow.cpp是界面处理类,gui循环都在这里。main.cpp是整个程序的循环,show()和exec()等。

输入文件要打包到资源文件中?

问题描述:

Windows 8环境下,在QtCreator里运行Qt5程序,没有出现问题,但是在工程文件夹下的debug目录下,双击运行生成的.exe文件,却提示丢失Qt5Core.dll。

问题解决:

将Qt5Core.dll所在的目录添加到Windows系统环境变量Path里。

我的Qt5Core.dll所在的目录是:D:\Qt\Qt5.5.1\5.5\mingw492_32\bin

右键我的电脑,选择属性,然后选择高级系统设置 --> 环境变量,编辑Path系统变量,将上述路径添加到后面,注意要用分号分隔每一个不同路径,点击确定后重新运行.exe成功。

今天在用QT写程序的时候,为了测试程序,想要在程序执行的中间过程在用C++中的cout进行输出,但是使用cout<<输出的时候,在“应用程序输出”一栏中并没有任何显示。经过查阅资料发现,原因是.pro的工程文件的内容导致的,在工程文件中加入

CONFIG += console

然后重新构建程序即可。

控件基础

QLineEdit是单行文本输入,一般用于用户名、密码等少量文本交互地方。
QTextEdit用于多行文本,也可以显示HTML格式文本。
QPlainTextEdit与QTextEdit很像,但它多用于需要与文本进行处理的地方,而QTextEdit多用于显示,可以说,QPlainTextEdit对于plain text处理能力比QTextEdit强。

QT creator修改编译设置

QTabWidget只有添加一个任意其他控件后才能显示?

Qt 6+vtk9.1+vs2019配置

参考如下两个文章:VTK9.1.0在Windows10+VS2019+Qt 5.15.2环境下编译安装以及VTK应用于QT_isongxw的博客-CSDN博客_win10安装vtkhttps://blog.csdn.net/qq_34499305/article/details/120774663

vtk9.0.3+vs2019+cmake+Qt编译库 - 知乎 (zhihu.com)https://zhuanlan.zhihu.com/p/390669033 上面都是Qt 5的,下载Qt6的库需要使用前述maintenancetool.exe下载对应的qt库。

Qt6使用cmake构建。

cmake的基本语法:

cmake不区分大小写。

set为设置变量,set(PROJ vtkqt6),将变量PROJ设置为vtkqt6。引用变量用${PROJ}。

qt6+vtk9示例程序,使用了qvtkopenglnativewidget。

#include "mainwindow.h"
#include "./ui_mainwindow.h"
#include "vtkSmartPointer.h"
#include "vtkRenderWindow.h"
#include "vtkRenderer.h"
#include "vtkRenderWindowInteractor.h"
#include "vtkInteractorStyleTrackballCamera.h"
#include "vtkCylinderSource.h"
#include "vtkPolyDataMapper.h"
#include "vtkActor.h"
#include "vtkLight.h"
#include "vtkCamera.h"
#include "vtkCGNSReader.h"#include "vtkAutoInit.h"
VTK_MODULE_INIT(vtkInteractionStyle)
VTK_MODULE_INIT(vtkRenderingOpenGL2)MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow)
{ui->setupUi(this);vtkSmartPointer<vtkCylinderSource> cylinder =vtkSmartPointer<vtkCylinderSource>::New();cylinder->SetHeight( 3.0 );cylinder->SetRadius( 1.0 );cylinder->SetResolution( 50 );vtkSmartPointer<vtkPolyDataMapper> cylinderMapper = vtkSmartPointer<vtkPolyDataMapper>::New();cylinderMapper->SetInputConnection( cylinder->GetOutputPort() );vtkSmartPointer<vtkActor> cylinderActor = vtkSmartPointer<vtkActor>::New();cylinderActor->SetMapper( cylinderMapper );vtkSmartPointer<vtkRenderer> renderer = vtkSmartPointer<vtkRenderer>::New();renderer->AddActor( cylinderActor );renderer->SetBackground( 0.1, 0.2, 0.4 );vtkSmartPointer<vtkLight> myLight= vtkSmartPointer<vtkLight>::New();myLight->SetColor(0,1,0);myLight->SetPosition(0,0,1);myLight->SetFocalPoint(renderer->GetActiveCamera()->GetFocalPoint());renderer->AddLight(myLight);ui->openGLWidget->renderWindow()->AddRenderer(renderer);vtkSmartPointer<vtkRenderWindowInteractor> iren = ui->openGLWidget->renderWindow()->GetInteractor();iren->SetRenderWindow(ui->openGLWidget->renderWindow());
}MainWindow::~MainWindow()
{delete ui;
}

参考:https://blog.csdn.net/qq_37441588/article/details/118677431

上文中有两个问题:

1,ui.qvtkWidget->GetRenderWindow()->AddRenderer(ren);
这个GetRenderWindow过时了,使用qvtkWidget->renderWindow()代替,

2,QVTKInteractor cannot control the event loop错误
第一种方法,消除vtk的警告:vtkOutputWindow::SetGlobalWarningDisplay(0);
第二种方法,原来QVTKOpenGLWidget会在创建时完成Interactor创建和开启,保证其对窗口的控制,因此
ui.openGLWidget->GetInteractor()->Initialize();
ui.openGLWidget->GetInteractor()->Start();
这两句话是不必要的。
删除这两句话后,程序不再产生vtk错误窗口。

参考链接:https://www.jianshu.com/p/8254be426275

Qt6+vtk9入门相关推荐

  1. Python Qt6快速入门-嵌入PyQtGraph图表

    嵌入PyQtGraph 文章目录 嵌入PyQtGraph 1.PyQtGraph介绍 2.创建PyQtGraph小部件 3.绘图样式配置 3.1 背景颜色 3.2 线条颜色.线宽和样式配置 3.3 线 ...

  2. Qt6教程之三(3) QtWedget自定义控件

    在之前的博客中,我们使用的控件都是Qt官方提供的,对于控件的特性也只能被动地接受,为了打破这种束缚,可以按照自己的想法来定义控件. 不过自定义控件必须遵守Qt官方的一套自定义控件规则,在规则之下我们就 ...

  3. VS+Qt — Vistual Studio 2022+Qt6安装教程以及解决Qt Vistual Studio Tools下载慢和VS无法打开.ui进行设计的问题

    目录 Vistual Studio 2022下载 Qt下载 Qt Vistual Studio Tools下载 方法1 方法2 方法3 方法4 Vistual Studio 2022配置Qt6 创建Q ...

  4. 01 Qt6.2.3播放YUV视频,使用QOpenGLWidget

    Qt6.2.3播放YUV视频,使用QOpenGLWidget 作者 将狼才鲸 创建日期 2022-03-30 工程Gitee源码地址:qt_gui_simple2complex/ source / 0 ...

  5. qmake 手册:qmake 入门

    文章目录 qmake 入门 从简单开始 使应用程序可调试 添加平台特定的源文件 如果文件不存在则停止 qmake 检查多个条件 官方链接:https://doc.qt.io/qt-6/qmake-tu ...

  6. 基于Qt Designer和PyQt5的桌面软件开发--环境搭建和入门例子

      本文介绍了如何使用技术栈PyCharm+Qt Designer+PyQt5来开发桌面软件,从环境搭建.例子演示到对容易混淆概念的解释.文中用到的全部软件+代码下载链接为:https://url39 ...

  7. 用Construct 2制作入门小游戏~

    今天在软导课上了解到了Construct 2这个神器,本零基础菜鸟决定尝试做一个简单的小游戏(实际上是入门的教程啊= = 首先呢,肯定是到官网下载软件啊,点击我下载~ 等安装完毕后我便按照新手教程开始 ...

  8. Docker入门六部曲——Swarm

    原文链接:http://www.dubby.cn/detail.html?id=8738 准备工作 安装Docker(版本最低1.13). 安装好Docker Compose,上一篇文章介绍过的. 安 ...

  9. Docker入门六部曲——Stack

    原文链接:http://www.dubby.cn/detail.html?id=8739 准备知识 安装Docker(版本最低1.13). 阅读完Docker入门六部曲--Swarm,并且完成其中介绍 ...

最新文章

  1. 玩转GIT系列之【如何放弃本地/服务器端所做的修改】
  2. axios vue 回调函数_VUE使用axios调用后台API接口的方法
  3. 浅谈Java的数据结构
  4. 长文详解基于并行计算的条件随机场CRF
  5. jsp网站使用ffmpeg实现为.flv格式视频截图
  6. 技嘉z77主板msata速度_技嘉小雕、微星迫击炮、华硕电竞特工三款主板对比
  7. 网络最经典命令行 安全工作者的必杀技
  8. 拼多多显示内部服务器错误是怎么回事,拼多多提现出现错误怎么办?拼多多提现常见问题...
  9. 蓝桥杯应该参加吗?如何准备蓝桥杯?
  10. JAVA实现邮件抄送,密送,多个附件发送
  11. 【OpenCV】图像多通道混合、缩放
  12. 路由器DNS被劫持 解决办法、dns 被劫持怎么解决
  13. IntelliJ IDEA常用设置及快捷键以及自定义
  14. 史上最强HashMap面试教程
  15. 05 - 钓鱼网站的攻击与防御
  16. 计算机考研跨审计好跨嘛,跨专业如何考研
  17. 死后存活在互联网的大脑应用结构图
  18. 【OpenCV+Qt】实现简易视频播放器——支持进度条拖动
  19. 南京廖华微型计算机原理答案,微机原理习题库含答案
  20. python locust提取参数_python+locust性能测试学习笔记

热门文章

  1. mathematica--求偏导
  2. paddle 图标注_标注外包业务预算评估模板(示例)
  3. 竞品技术三瞥安装包的大小
  4. 百度AI智能工厂解决方案
  5. Vue基于JSON Schema生成表单和数据校验
  6. 2021年低压电工考试APP及低压电工复审模拟考试
  7. simsparc RUU 分析
  8. 经典乐队1:Savage Garden
  9. 计算机打字策划方案,打字接龙活动策划方案
  10. linux 3gpp格式转换器,3GPP 文件扩展名: 它是什么以及如何打开它?