QT5学习笔记:QT+VS读取dwg文件

原文地址[https://blog.csdn.net/u013725001/article/details/43272161]

1.下载MxDraw控件 注:可到www.mxdraw.com 自行下载

2.介绍如何把控件放到QT中并运行

2.1引入控件 运行Qt Creator,点击[文件]=>[新建文件或项目…],出来新建项目窗口,如下:
在这里插入图片描述
2.2选择”Qt Widgets Application” 新建一个桌面项目
在这里插入图片描述
2.3新建项目完成,点击”mainwindow.ui”,进入界面编辑,如下图:
在这里插入图片描述
2.4在界面上,插入QAxWidge控件(可以理解一个盛放dwg文件的容器),如下图:在这里插入图片描述
2.5运行控件安装下的RegMxDrawX.bat注册控件(找到第一步下载的MxDraw控件),只有注册了控件,在下面的界面才能看到MxDraw52,如下图:在这里插入图片描述
2.6双击,拖到界面的QAxWidge控件,选择MxDrawX52在这里插入图片描述
2.7现在需要编译运行,出现如下连接错误提示,是因为工程中,没有加入Qt Axcontainer,错误提示如下:在这里插入图片描述
2.8修改工程属性文件:TestQtMxDraw.pro,加入QT += axcontainer,如下在这里插入图片描述
2.9然后构建所有项目 ,前面的连接错误就消除了。
2.10 点击运行后如下图:
在这里插入图片描述
3. 演示如何在QT调用控件打开函数,打开DWG文件
3.11.4、 增加打开文件按钮(在界面上放一个按钮,并生成按钮事件)
在这里插入图片描述
3.2点按钮上点击右键,选择[转到槽],增加按钮点击事件在这里插入图片描述
3.3点击[转到槽]
在这里插入图片描述
增加如下代码:

void MainWindow::on_pushButton_clicked()

{

// 执行控件自定义命令函数,命令的id为2,这个id用户可以自己取任意数,可以理解为是给执行的命令一个编号.

ui->axWidget->dynamicCall("DoCommand(const qint32&)",2);

}
3.4给控件增加,命令显示事件,如下图:
在这里插入图片描述
在函数中,增加如下代码,打开H盘的1.dwg文件:

void MainWindow::on_axWidget_ImplementCommandEvent(int iCommandId)

{

if(iCommandId == 2)

{

    // 调用控件打开函数,打开H:盘的1.dwg文件。

    ui->axWidget->dynamicCall("OpenDwgFile(const QString&)","H:\\1.dwg");

}

}
4. 在VS中使用QT
4.1.运行VS,点[QT5]=>[Open Qt Project File(.pro)…]文件,把刚才我们用Qt Creator引入的到VS中。在这里插入图片描述
如下:
在这里插入图片描述
导入后,就可以直接编译运行。在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43197380/article/details/84890689
今日推荐