随笔分类 - QT学习
摘要:类似于: QString test = QString("123"); QString("123")是构造函数,这里就是手动调用构造函数
阅读全文
摘要:一般鼠标滑轮事件会发出信号,参数是QWheelEvent,只需要新建槽函数,QWheelEvent作为参数。
阅读全文
摘要:1、需要的东西 ftp.cpp,ftp.h是二次封装的ftp类,放在工程下包含 QFtp和qftp.h放在D:\Qt5.7.1\5.7\msvc2013\include\QtNetwork; Qt5Ftp.lib和Qt5Ftpd.lib是编译生成的库,放在工程源文件下 2、包含库 3、声明 4、注意
阅读全文
摘要:信号与槽是可以引用传递的,根据我的直觉,应该和函数的引用传递差不多,效率比值传递高。 看了很多别人的例子或者教学视频,信号与槽都是简单的值传递,但是看了Qt的手册,里面几乎都是引用或者指针传递参数。 如果是只读的,就加上const PS: 在同一个线程中 当信号和槽都在同一个线程中时,值传递参数和引
阅读全文
摘要:1、现象 在一个线程类【QObject】中声明一个对象QTimer,【不new,直接声明】,在槽函数中timer.start() 报警告:不能跨线程调用对象 2、分析 不使用new的方式,直接A a;这样是同时:声明+定义【分配空间】,所以如果在A头文件中这样定义一个对象,然后再A a;这样是在主线
阅读全文
摘要:一、引发重绘的事件 1、调用repaint() 2、调用uodate() 二、控件hide或者show 三、其他 ps: repaint函数是立即重绘,没有优化 update会优化,异步重绘,所以如果调用多次update可能会只重绘一次 重绘的函数是: paintEvent,这是QWidget的,可
阅读全文
摘要:1、效果 2、工程加入源文件【不对外公开】 3、在ui里拖一个QLabel,提升为WarnLabel 4、根据项目需要修改重载函数 5、使用
阅读全文
摘要:这里父控件是QGroupBox,子控件是QLineEdit QList<QLineEdit*> list = ui.groupBox_11->findChildren<QLineEdit*>(); for (int i = 0; i < list.size(); i++) { QLineEdit*
阅读全文
摘要:1、QML rect.color = Qt.rgba(Math.random(), Math.random(), Math.random(), 1);//random返回0~1的随机数 2、Qt QColor clr(rand() % 256, rand() % 256, rand() % 256)
阅读全文
摘要:一、疑问 突然想到,类似于QTcpsocket和QSerialport这类对象,如果是在A线程中new的,那就不能在其他线程中访问。我一般是这样做的: 封装一个QObject子类,放这些对象进去,然后通过信号与槽发送和接收数据。 但是如果是一个其他类型,比如一个Qlist或者链表,加上锁之后就可以不
阅读全文
摘要:QVector<double> tempX ; qSort(tempX.begin(), tempX.end());//从小到大排序
阅读全文
摘要:现象:修改ui界面的控件,如改变text,生成exe没有改变,清理、重新创建也没有作用 原因:ui.h没有被更新,每次软件生成的时候都是调用的旧的文件 解决:先将debug和release文件夹删除,重新创建,将生成的debug或者release里的ui_mainwindow.h将源文件里的这个文件
阅读全文
摘要:1、把下列文件放在工程中【已上传到我的文件中】 2、代码 3、效果 注意要在ui或者代码里设置列数,否则界面全空 4、为了配合上述,给出下列QHeaderView函数,这里转:https://blog.csdn.net/psujtfc/article/details/43764559 1 . voi
阅读全文