![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
QT
挣扎中前行
这个作者很懒,什么都没留下…
展开
-
QT延时
关于sleep函数,我们先来看一下他的作用:sleep函数是使调用sleep函数的线程休眠,线程主动放弃时间片。当经过指定的时间间隔后,再启动线程,继续执行代码。sleep函数并不能起到定时的作用,主要作用是延时。在一些多线程中可能会看到sleep(0);其主要目的是让出时间片。sleep函数的精度非常低,当系统越繁忙的时候它精度也就越低,有时候我们休眠1秒,可能3秒后才能继续执行。它的精度取决于转载 2012-02-01 17:34:33 · 5222 阅读 · 0 评论 -
Qt4项目升级到Qt5可能遇到的问题
1. 由于Qt5将大部分桌面部件移到了Qt Widgets模块中,所以在.pro中要增加下面一行QT += widgets2. 程序中使用了OWC10,用到了ActiveQt,原来的做法是在.pro中加CONFIG += qaxcontainer,现在需要改成QT += axcontainer当然了,原来的CONFIG += qaxcontainer也转载 2013-12-26 10:59:06 · 6703 阅读 · 0 评论 -
Qt 单击双击的区分
Qt 单击双击的区分原创 2013-11-20 09:51:47 · 2744 阅读 · 1 评论 -
Qt 的Model/View
QTableView::setEditTriggers(QAbstractItemView::NoEditTriggers); /设置为不可编辑状态QTableView::horizontalHeader()->setResizeMode(QHeaderView::Stretch); //设置显示铺满整个viewQHeaderView::ResizeToContents转载 2013-09-29 16:47:21 · 2837 阅读 · 0 评论 -
Qt中Qstring,char,int,QByteArray之间到转换
之所以把QString单独拿出来,是因为string是很常用的一个数据结构,甚至在很多语言中,比如JavaScript,都是把string作为一种同int等一样的基本数据结构来实现的。 每一个GUI程序都需要string,这些string可以用在界面上的提示语,也可以用作一般的数据结构。C++语言提供了两种字符串的实现:C风格的 字符串,以'/0‘结尾;std::string,即标准转载 2012-10-25 09:45:02 · 1572 阅读 · 0 评论 -
Qt 模态与非模态
模态是指当子窗口弹出时,焦点始终被强行集中于子窗口,只要子窗口不退出,焦点就不会被释放,不能再切换到其它主窗口。非模态正好相反。从线程角度讲,模态子窗口的线程是阻塞的,父、子窗口各有一个线程,当创建子窗口时,父线程就被子线程阻塞掉;非模态线程不是阻塞型的,父、子线程可以并行运行。在Qt的模态中,主要用到QDialog的exec()方法:123转载 2012-10-31 15:00:22 · 918 阅读 · 0 评论 -
Qt核心剖析: moc
前面我们说过,Qt 不是使用的“标准的” C++ 语言,而是对其进行了一定程度的“扩展”。这里我们从Qt新增加的关键字就可以看出来:signals、slots 或者 emit。所以有人会觉得 Qt 的程序编译速度慢,这主要是因为在 Qt 将源代码交给标准 C++ 编译器,如 gcc 之前,需要事先将这些扩展的语法去除掉。完成这一操作的就是 moc。moc 全称是 Meta-Object Com转载 2012-10-30 15:39:51 · 495 阅读 · 0 评论 -
QT中的事件机制
什么是自发事件?哪些类型的事件可以被propagated 或compressed? posting and sending 事件之间有何不同?什么时候应该调用 accept() 或是ignore() ? 如果这些问题你还不是很了解,那么继续看下去。事件起源:基于事件如何被产生与分发,可以把事件分为三类:* Spontaneous 事件,由窗口系统产生,它们被放到系统队列中,通过事件循环转载 2012-10-30 15:31:52 · 799 阅读 · 0 评论 -
Qevent
事件处理流程:某个事件发生------>exec()循环会接收到这个事件------>创建一个事件对象,并将对象传递给QObject::event()------> 在QWidget::event()函数中,分配给特定的事件处理函数------>在QButton的事件处理函数中emit(clicked消息) 前面说到了事件的作用,下面来看看我们如何来接收事件。回忆一下转载 2012-10-19 14:19:27 · 2994 阅读 · 0 评论 -
QT事件过滤器
Qt事件模型一个真正强大的特色是一个QObject 的实例能够管理另一个QObject 实例的事件。让我们试着设想已经有了一个CustomerInfoDialog的小部件。CustomerInfoDialog 包含一系列QLineEdit. 现在,我们想用空格键来代替Tab,使焦点在这些QLineEdit间切换。一个解决的方法是子类化QLineEdit,重新实现keyPre转载 2012-10-19 14:11:45 · 992 阅读 · 0 评论 -
QT中文支持
以下是我在实现qt中文支持时的操作希望对你有所帮助首先要设置字体编码方式(utf-8);其次要操作系统的环境变量export LANG =“zh_CN.UTF-8”;再选择中文字体库。以下是编码实现: /*字体编码方式*/ QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8")); Q原创 2012-01-31 09:45:40 · 769 阅读 · 0 评论 -
怎样正确的使用QThread类
背景描述:以前,继承 QThread 重新实现 run() 函数是使用 QThread唯一推荐的使用方法。这是相当直观和易于使用的。但是在工作线程中使用槽机制和Qt事件循环时,一些用户使用错了。Qt 核心开发人员Bradley T. Hughes, 推荐使用QObject::moveToThread 把它们移动到线程中。不幸的是, 以用户反对这样使用。Olivier Go翻译 2014-11-06 18:10:54 · 1695 阅读 · 0 评论