Qt ui控件代码先后顺序的tips
来源:互联网 发布:网络诈骗怎么报警呢 编辑:程序博客网 时间:2024/05/16 17:29
MyMainWindow::MyMainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MyMainWindow){ manger = new QNetworkAccessManager(this); connect(manger, SIGNAL(finished(QNetworkReply *)), this, SLOT(replyFinished(QNetworkReply *))); manger->get(QNetworkRequest(QUrl("http://blog.csdn.net/lankin2013/article/details/41855013"))); //manger1 = new QNetworkAccessManager(this); ui->setupUi(this); ui->progressBar->hide();}
这是一段很普通的代码,是我尝试Qt的http下载代码中遇到的一个小问题,其实以前也遇到过,不过后来不以为意就忽略掉了。现在就记录下来,以防以后犯错。
错误:我最开始把ui->setupUi(this)和ui->progressBar->hide()这两句话写的时候换了个位置,然后程序异常了。
解决方法:全部注释逐句检查,以为是其他地方写错了。后来看到因为这句出了问题,想了一下,意识到了问题。
Qt下的异常结束有几种情况(写项目总结的):(1)添加三方库时只添加了静态库,而程序运行时缺少动态库,所以手动将dll文件添加进程序目录
(2)变量未初始化或在使用前就已经析构掉了,换句话说就是访问你无权访问的空间,linux下常称为段错误。
回归到这个问题,思考ui->setupUi(this)的作用,可以点开这个文件,看到QProgressBar*progressBar;progressBar =new QProgressBar(centralWidget);也就是你在progressBar这个变量还不存在时就去设置它的属性,当然会引起异常。
Tips:ui下的控件设置其属性时请务必写在ui->setupUi(this)之后
阅读全文
0 0
- Qt ui控件代码先后顺序的tips
- 关于代码执行的先后顺序
- qt connect 有先后顺序
- 异常情况下代码执行的先后顺序
- 成员初始化的先后顺序
- 内存释放的先后顺序
- java初始化的先后顺序
- 焦点处理的先后顺序
- 程序执行的先后顺序
- 构造方法的先后顺序
- 静态代码块,构造代码块,构造函数之间的差别及先后执行顺序
- C# WinForm控件之Dock控件调整先后顺序
- 子类继承父类后,代码块和构造方法的运行先后的顺序
- 关于Java中静态代码块以及构造函数的执行先后顺序
- 关于Java中静态代码块以及构造函数的执行先后顺序
- 关于Java中静态代码块以及构造函数的执行先后顺序
- 关于Java中静态代码块以及构造函数的执行先后顺序
- 关于Java中静态代码块以及构造函数的执行先后顺序
- “自顶向下,逐步求精”的方法
- PostgreSQL时间加减
- 2017杭电新生赛 1001~1009
- 管道
- Log4J入门教程(一) 入门例程
- Qt ui控件代码先后顺序的tips
- (重要!)Servlet中主要的几个接口和类
- 浏览器嵌入自定义JS脚本
- ArrayList和LinkedList底层实现的区别
- 虚拟机centos6.8 设置固定ip
- 线性表的顺序储存结构(向量 )(一)
- Spring Boot实战之单元测试
- solr6.+版本基础环境搭建教程
- require 和 include的区别