• 7752阅读
  • 14回复

[提问]QWidget: Must construct a QApplication before a QPaintDevice!!急! [复制链接]

上一主题 下一主题
离线ff007bit
 
只看楼主 倒序阅读 楼主  发表于: 2012-02-16
我用VS10+QT4.7.4(自己编译的静态库)
我想建立一个QWidget的DLL,想在另一个QApplication中的QMainWindow中调用.
但是测试时,总是出现题目中的错误.

我上网查了查,包括各种原因Debug/Release;main函数中顺序都注意到了.
(因为我的库是静态编译的,测试程序和DLL本身我都用得MTD)
但是还是出错.
请大家帮我看看吧.源代码发上来了.
谢谢

TestDLL.rar (3914 K) 下载次数:1 TestDLL.rar
离线XChinux

只看该作者 1楼 发表于: 2012-02-16
先创建QApplication对象。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线ff007bit
只看该作者 2楼 发表于: 2012-02-17
回 1楼(XChinux) 的帖子
我在DLL中怎么创建QApplication对象
我的main函数中就是把QApplication a放在最前面的啊
离线kimtaikee

只看该作者 3楼 发表于: 2012-02-17
回 2楼(ff007bit) 的帖子
debug 版本的exe调用debug 版本的dll ,同理应用于release 版本

离线ff007bit
只看该作者 4楼 发表于: 2012-02-17
回 3楼(kimtaikee) 的帖子
我exe和dll都用得MTD编译,Debug版的
但是还是出问题
离线ff007bit
只看该作者 5楼 发表于: 2012-02-17
顶一顶
离线jdwx

只看该作者 6楼 发表于: 2012-02-17
先用标准的Qt动态库测试。好用了再试试静态的。
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线ff007bit
只看该作者 7楼 发表于: 2012-02-17
回 6楼(jdwx) 的帖子
谢谢楼上!
我用自己编译的QT动态库测试,DLL和exe都用MDd编译,测试成功了,没有报错!
这是怎么回事?难道我QT静态库我编译的有问题?
离线ff007bit
只看该作者 8楼 发表于: 2012-02-17
回 6楼(jdwx) 的帖子
动态库可以,为什么使用静态库不行?
大神有没有什么见解
离线ff007bit
只看该作者 9楼 发表于: 2012-02-17
再顶,已经搞了一天了,还是有问题!
一直是QWidget: Must construct a QApplication before a QPaintDevice!
离线ff007bit
只看该作者 10楼 发表于: 2012-02-17
哪位用VS10+QT(静态)的,能不能帮在下试试
用exe调用dll
dll中的类要继承自QWidget
看看能不能运行通过.

注:一定用静态编译的QT库
离线ff007bit
只看该作者 11楼 发表于: 2012-02-18
再顶
有人推荐用qtwinmigrate
我看了相关文档,都是MFC调用QT
我的虽然是在WIndows下,但是是QT的exe调用QT的DLL
也应该用这个吗?
离线ff007bit
只看该作者 12楼 发表于: 2012-02-19
QT Creator下是C++ Library
VS 集成QT后 是 QT Library
这有什么区别
离线ff007bit
只看该作者 13楼 发表于: 2012-02-21
大神们都在哪里啊?
离线ff007bit
只看该作者 14楼 发表于: 2012-02-21
大神们都去哪了?
快速回复
限100 字节
 
上一个 下一个