
Qt
shuihan20e
这个作者很懒,什么都没留下…
展开
-
QML基础——基本语法
QML看起来像这样import Qt 4.7 Rectangle { width: 200 height: 200 color: "blue" Image { source: "pics/logo.png" anchors.centerIn: parent } }对象是通过类型而直接被指定的,紧随其转载 2013-11-27 14:48:29 · 412 阅读 · 0 评论 -
qt 读写配置文件 ini
1 ini文件介绍.ini 文件是Initialization File的缩写,即初始化文件。除了windows现在很多其他操作系统下面的应用软件也有.ini文件,用来配置应用软件以实现不同用户的要求。一般不用直接编辑这些.ini文件,应用程序的图形界面即可操作以实现相同的功能。它可以用来存放软件信息,注册表信息等。 2 ini文件格式INI文件由节、键、值组成转载 2013-11-28 12:34:06 · 966 阅读 · 0 评论 -
QT 的信号与槽机制介绍
简介: 信号与槽作为 QT 的核心机制在 QT 编程中有着广泛的应用,本文介绍了信号与槽的一些基本概念、元对象工具以及在实际使用过程中应注意的一些问题。QT 是一个跨平台的 C++ GUI 应用构架,它提供了丰富的窗口部件集,具有面向对象、易于扩展、真正的组件编程等特点,更为引人注目的是目前 Linux 上最为流行的 KDE 桌面环境就是建立在 QT 库的基础之上。QT 支持下列平台:转载 2013-11-28 11:59:20 · 550 阅读 · 0 评论 -
QHash的使用
开发环境:QT 5.0.2 MinGW 32bit这里主要讨论key为QString,value为结构体指针类型的QHash。例如:QHashQString, QUserInfo*> m_hash;一:在工程中添加新类:“添加新文件”-》“C++”->"C++类",生成文件quserinfo.h和quserinfo.cpp。quse转载 2013-11-27 20:36:15 · 918 阅读 · 0 评论 -
QMutex
QMutex提供了线程间的顺序访问。QMutex的目的是保护一个对象、数据结构或者代码段,所以同一时间只有一个线程可以访问它。(类似java的"synchronized”关键字)。互斥量最好和QMutexLocker搭配使用,因为它使得互斥量的解锁和锁定变得相当一致。比如: int number = 6; void method1() { number *=转载 2013-11-27 19:50:47 · 928 阅读 · 0 评论 -
QMutexLocker
QMutexLocker用来简化互斥量的锁定和解锁操作。在复杂函数或者异常处理代码中互斥量的锁定和解锁容易出错和难以调试。QMutexLocker就可以应用于这些情况,确保互斥量状态总是定义明确。应该在程序中QMutex需要被锁定处创建QMutexLocker。当QMutexLocker被创建后,互斥量就锁定了。你可以使用unlock()和relock()来解锁和再次锁定互斥量。如果互转载 2013-11-27 19:50:12 · 1653 阅读 · 0 评论 -
QWaitConditon应用
背景:在编写多线程的时候,有的线程需要一直的执行下去,永不停止,但是有的线程是需要它能够在我们的控制下自由地的开始和暂停。那么常用的方法就是让线程等待一个标志,标志为假就睡眠,当标志为真就唤醒。Qt提供了类似的机制,那就是QWaitConditon类。一、QWaitConditon简介线程如何睡眠?调用QWaitCondition的wait函数将使得调用它的线程进入睡眠状态转载 2013-11-27 19:48:02 · 471 阅读 · 0 评论 -
QWaitCondition
QWaitCondition提供一个条件变量来实现线程间同步。QWaitConditions允许一个线程告诉其它线程某种条件已经满足,一个或多个线程可以等待一个由wakeOne()或wakeAll()设定的条件QWaitCondition。使用wakeOne()会唤醒一种随机选择的事件或者wakeAll()会把它们全部唤醒。比如,假定每次用户按下一个键,我们有三个任务要同时转载 2013-11-27 19:48:57 · 576 阅读 · 0 评论 -
QSemaphore
QSemaphore提供了一个通用的可计数的信号量。信号量实际上就是广义的互斥量。一个互斥量只能被锁定一次,然而一个信号量可以被获取多次。信号量常被用于保护一定数目的同类资源。信号量支持两种基本的操作:acquire()和 release()acquire(n)尝试获取n个资源。如果没有这么多数目的资源可用,它就阻断调用它的程序直到资源可用。release(n)释放转载 2013-11-27 19:49:41 · 1419 阅读 · 0 评论 -
QThread
QThread提供了一个平台无关的方式来管理线程。一个QThread对象管理程序里的一个线程。当QThread对象执行run()后它管理的线程开始运行。默认方式,run()函数的执行将调用exec()函数,开始该线程的事件循环。你可以使用QObject::moveToThread()来将一个工作对象加入到某个线程中。class Worker : public QObject转载 2013-11-27 19:46:39 · 1905 阅读 · 0 评论 -
Qt的内建(built-in)对话框,多个信号连接一个槽
Qt的内建(built-in)对话框:颜色对话框(QColorDialog),选择颜色[html] view plaincopyprint?QColor clr=QColorDialog::getColor(plt.color(QPalette::Base),this); 错误消息框(QErrorMessage),显示错误信息转载 2013-11-27 19:27:22 · 646 阅读 · 0 评论 -
VS2008集成QT4.7.2环境搭建
本文档用于指导如何集成QT4.7.2到VS2008 IDE,详细描述其步骤和配置。 安装步骤:一、 安装包准备:1)下载QT4.7.2框架(Qt: Framework Only)安装程序,即:Qt libraries 4.7.2 for Windows (VS 2008, 218 MB),文件名为:qt-win-opensource-4.7.2-vs200转载 2013-11-27 14:49:57 · 444 阅读 · 0 评论 -
给Qt的控件添加新信号
Qt的控件有时候并不提供我们想要的信号已QLineEdit为例,它并没有提供鼠标点击的信号,此时就需要我们自己添加方法如下:mylineedit.h[cpp] view plaincopy#ifndef MYLINEEDIT_H #define MYLINEEDIT_H #include #转载 2013-11-28 12:27:17 · 1072 阅读 · 1 评论