找回密码
 立即注册
收起左侧
楼主: yafeilinux

第2篇 基础(二)编写Qt多窗口程序

257
回复
236805
查看
  [复制链接]
累计签到:2 天
连续签到:1 天
2013-9-4 11:08:24 显示全部楼层
新建的对话框编译没有错误,连接的时候有两个错误:
lnk2019:unresolved external symbol public:virtual_thiscall logindlg::~logindlg(void)......referenced in function _main       main.obj
lnk2019:unresolved external symbol public:virtual_thiscall logindlg::logindlg(class qwidget*)......referenced in function _main       main.obj
回复 支持 反对

使用道具 举报

累计签到:1227 天
连续签到:1 天
2013-9-4 11:12:21 显示全部楼层
tianyu20 发表于 2013-9-4 11:08
新建的对话框编译没有错误,连接的时候有两个错误:
lnk2019:unresolved external symbol public:virtual_t ...

请下载源码试试。
回复 支持 反对

使用道具 举报

累计签到:2 天
连续签到:1 天
2013-9-4 11:42:17 显示全部楼层
yafeilinux 发表于 2013-9-4 11:12
请下载源码试试。

也不行,是不是版本的原因啊,我用的是qt5.1
回复 支持 反对

使用道具 举报

累计签到:1227 天
连续签到:1 天
2013-9-4 14:47:22 显示全部楼层
tianyu20 发表于 2013-9-4 11:42
也不行,是不是版本的原因啊,我用的是qt5.1

是版本问题,你需要下载刚上传的Qt 4.8.5的源码。如果使用Qt 5还需要将setTextCodec的代码去掉。

教程中的代码在Qt 5中都需要设置的,如果只是初学,建议使用教程中的开发环境。
回复 支持 反对

使用道具 举报

累计签到:18 天
连续签到:1 天
2013-9-5 06:28:34 显示全部楼层
tm7998 发表于 2013-8-30 21:58
请问《Qt Creator快速入门》里例子3-4为何运行不出结果呢?就是点击运行后不显示任何窗口,我把下载的原代 ...

可能是环境或版本问题,你用什么系统哪个版本的Qt?


嗯,是环境问题,已经解决了,谢谢啊
回复 支持 反对

使用道具 举报

累计签到:18 天
连续签到:1 天
2013-9-5 06:29:29 显示全部楼层
yafeilinux 发表于 2013-9-2 14:03
可能是环境或版本问题,你用什么系统哪个版本的Qt?

是环境问题,已解决,谢谢
回复 支持 反对

使用道具 举报

累计签到:13 天
连续签到:1 天
2013-9-8 20:08:24 显示全部楼层
本帖最后由 very0717 于 2013-9-8 20:26 编辑

void MainWindow::on_pushButton_clicked()
{
    QDialog *dlg = new QDialog(this);
    dlg->show();  
}

这里为什么不用dlg.exec()都可以呢
我以为会show()会一闪而过。

难道是父窗口在show的关系?
回复 支持 反对

使用道具 举报

累计签到:1227 天
连续签到:1 天
2013-9-8 21:16:25 显示全部楼层
very0717 发表于 2013-9-8 20:08
void MainWindow:n_pushButton_clicked()
{
    QDialog *dlg = new QDialog(this);

嗯。主窗口一直在显示。
回复 支持 反对

使用道具 举报

累计签到:3 天
连续签到:1 天
2013-10-4 21:10:52 显示全部楼层
在QT5 环境下不需要写以下两行
   // QTextCodec::setCodecForTr(QTextCodec::codecForLocale()); //设置编码
//   QTextCodec::setCodecForTr(QTextCodec::codecForName("GB2312"));
回复 支持 反对

使用道具 举报

累计签到:1227 天
连续签到:1 天
2013-10-5 09:06:24 显示全部楼层
lzerof 发表于 2013-10-4 21:10
在QT5 环境下不需要写以下两行
   // QTextCodec::setCodecForTr(QTextCodec::codecForLocale()); //设置编 ...

是啊,这个函数在Qt 5中已经取消了,直接写中文就可以显示的。

点评

你好,我Qt 5中有如下行代码,但是取消后错误很多,显示类not declared QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale());  详情 回复 发表于 2016-9-27 16:39
回复 支持 反对

使用道具 举报

累计签到:1 天
连续签到:1 天
2013-10-10 17:30:23 显示全部楼层
tianyu20 发表于 2013-9-4 11:08
新建的对话框编译没有错误,连接的时候有两个错误:
lnk2019:unresolved external symbol public:virtual_t ...

同样的问题,有一次好像可以了。后面试又不行了。QT5.1感觉不好用。
回复 支持 反对

使用道具 举报

累计签到:1 天
连续签到:1 天
2013-10-10 17:59:18 显示全部楼层
tianyu20 发表于 2013-9-4 11:08
新建的对话框编译没有错误,连接的时候有两个错误:
lnk2019:unresolved external symbol public:virtual_t ...

http://qt-project.org/forums/viewthread/23200 这里边有解决方法。。。比较狗血。。。。
回复 支持 反对

使用道具 举报

累计签到:6 天
连续签到:1 天
2013-10-11 21:20:41 显示全部楼层
加油加油,我在开始学习Qt了
回复 支持 反对

使用道具 举报

尚未签到

2013-10-19 15:03:42 显示全部楼层
youthdou 发表于 2013-10-10 17:59
http://qt-project.org/forums/viewthread/23200 这里边有解决方法。。。比较狗血。。。。 ...

确实狗血,右键项目,执行Qmake就行了,那个人也不知道为什么。
回复 支持 反对

使用道具 举报

累计签到:94 天
连续签到:1 天
2013-11-24 00:05:42 显示全部楼层
E:\Program Practice\Learning QT\uWindow\mainwindow.cpp:9: 错误:C2039: “pushButton”: 不是“Ui::MainWindow”的成员
搞了一晚上了,还是这样,4.8也下了,5.1也安了,都是一样的情况,都是按照步骤配置的。楼主帮忙看看吧~~小弟无解了。。。
回复 支持 反对

使用道具 举报

累计签到:94 天
连续签到:1 天
2013-11-25 11:00:37 显示全部楼层
chenjieat 发表于 2013-11-24 00:05
E:\Program Practice\Learning QT\uWindow\mainwindow.cpp:9: 错误:C2039: “pushButton”: 不是“Ui::Main ...

已经解决了,犯了个白痴错误。。谢谢楼主
回复 支持 反对

使用道具 举报

累计签到:1 天
连续签到:1 天
2013-12-13 14:42:28 显示全部楼层
图片都挂了呢,有点影响学习了
回复 支持 反对

使用道具 举报

累计签到:1227 天
连续签到:1 天
2013-12-13 22:02:59 显示全部楼层
夕下奕林 发表于 2013-12-13 14:42
图片都挂了呢,有点影响学习了

没有啊。注册登录即可。
回复 支持 反对

使用道具 举报

累计签到:1 天
连续签到:1 天
2013-12-16 12:24:19 显示全部楼层
yafeilinux 发表于 2013-12-13 22:02
没有啊。注册登录即可。

啊抱歉抱歉。请问楼主什么时候出QT5的书呀,我一定买,或者电子的也行。
回复 支持 反对

使用道具 举报

累计签到:1227 天
连续签到:1 天
2013-12-17 15:57:50 显示全部楼层
夕下奕林 发表于 2013-12-16 12:24
啊抱歉抱歉。请问楼主什么时候出QT5的书呀,我一定买,或者电子的也行。 ...

这个估计得明年了!呵呵,已经有计划了!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册