随笔分类 -  使用 Qt

how to use Qt/qml
摘要:ClipBoard 存在的意义 进程间数据共享。 方式 Drag And Drop: clipBoard的拖曳方式 app's ClipBoard 缺点 没有权限管理 在Model View中实现Drag And Drop 重写 QStringList QAbstractItemModel::mim 阅读全文
posted @ 2017-01-16 15:47 aslistener 阅读(1588) 评论(0) 推荐(0)
摘要:Lamda 表达式 高阶语言中的lamda表达式, 灵感来自于lamda演算。lamda演算包括一条变换规则 (变量替换) 和一条函数定义方式, 通过带入和替换, 对输入产生输出。 Connect 新用法 connect 连接 信号槽 connect 连接普通函数 someFunction。 Som 阅读全文
posted @ 2016-06-30 16:35 aslistener 阅读(520) 评论(0) 推荐(0)
摘要:ObjectTree当以某个QObject为父类创建一个QObject时,它会被添加到该父类的children列表中。析构时,QObjet会首先检查自己的children,依次析构,然后析构自己,再把自己从父类的children列表中删除。这是一个递归过程,对于objecttree来说,析构是一个从... 阅读全文
posted @ 2016-01-04 14:49 aslistener 阅读(281) 评论(0) 推荐(0)
摘要:事件的概念简单来说, 就是应用程序感兴趣的应用内部或者外部的活动结果。 在Qt中, 使用QEvent 抽象这些活动。事件驱动模型事件驱动模型现在在计算机很多领域都有使用。 例如 BSD socket 中的 select 模型和信号驱动的 I/O 模型、 GUI 程序中的事件处理、操作系统中断等。以一... 阅读全文
posted @ 2015-08-24 23:19 aslistener 阅读(273) 评论(0) 推荐(0)
摘要:The property System和其它编译器厂商一样, Qt 也提供了复杂的属性机制, 但是作为一个编译器无关、平台无关的库,Qt没有那些不被标准编译器支持的特征, 如 BCB的 __property。 Qt 的属性机制在任何平台的任何C++编译器上都能正常使用。 这是由 meta objec... 阅读全文
posted @ 2015-08-20 11:25 aslistener 阅读(305) 评论(0) 推荐(0)
摘要:The Meta-Object SystemMeta-Object 提供了用于类间通信的signal/slot, 运行时类型信息、以及动态属性系统。Meta-Object 的使用基于以下三个点:QObject 提供了可以使用MetaObject 的一个公共基类。在类的声明里加入Q_OBJECT 宏,... 阅读全文
posted @ 2015-08-20 11:15 aslistener 阅读(333) 评论(0) 推荐(0)
摘要:Signal and Slots 用于对象之间通信。 它是 Qt 的核心特性之一, 并且也是Qt 与其它框架差别最大的部分。概述 在GUI编程中, 如果我们改变了一个控件, 我们可能想其它控件知道; 换言之, 我们希望任何类型的 Object 能够彼此通信。 一些Tookits使用回调函数来实现通信... 阅读全文
posted @ 2015-08-20 11:12 aslistener 阅读(351) 评论(0) 推荐(0)
摘要:读取 qt.conf 文件, 获取 Qt Library 的信息。 通常会在以下三个路径查找conf文件: :/qt/etc/qt.conf(使用资源系统时) OS X中, 在应用程序目录下的 Resource目录。 应用程序可执行文件所在目录 QLibraryInfo优先读取conf... 阅读全文
posted @ 2015-08-05 13:29 aslistener 阅读(698) 评论(0) 推荐(0)
摘要:Object Model 综述标准 C++ 的对象模型为对象的动态特性提供了运行时的支持。 但是它静态的本性决定了在某些领域它表现出僵化、不可扩展的特点。 GUI编程就是一个既需要运行时编译的效率, 也需要极大的灵活性的一个领域。 Qt 通过整合C++的效率和Qt Object Model的灵活性解... 阅读全文
posted @ 2015-07-01 11:54 aslistener 阅读(297) 评论(0) 推荐(0)
摘要:对于程序中一些常量如字符串, 实数等, C++中经常用的方法, 是定义全局常量; 或者把所有意义相近的常量用一个单例类收集起来。 QML是类JSON的标识性语言, 使用js 语法去操作对象。 在QML中定义常量稍稍麻烦些。 总结起来, 有以下几种方法: 使用 C++ qml 混合编程时: ... 阅读全文
posted @ 2015-05-16 13:58 aslistener 阅读(1254) 评论(0) 推荐(0)
摘要:QQuickImageProvider 是一个可以支持在QML中使用 qpixmap 和 图片加载线程的类。 它支持在qml中使用Image加载的高级特性, 包括 使用 QPixmap 替代实际的image文件。 在线程中异步加载图片。使用时, 首先使用QQmlEngine::addI... 阅读全文
posted @ 2015-05-05 09:09 aslistener 阅读(2113) 评论(0) 推荐(0)
摘要:两种方法。1.使用QTextCodecsetcodeforname设置编码,然后在程序中对于需要处理的字符使用 fromLocal8Bit。2.使用Linguist。首先把文件中所有使用到字符串的地方都加上tr。然后在pro文件中添加一行 TRANSLATIONS +=filename.ts接着在p... 阅读全文
posted @ 2015-05-04 14:59 aslistener 阅读(320) 评论(0) 推荐(0)
摘要:做项目的时候, 最初把图片放到 qrc里面, 使用编译生成的qrc_cpp。 但是编译超慢, 还经常提示"编译器空间不足"。 网上很多人说是 中文路径的问题。 可是总是感觉编译器空间 很难跟 路径扯上关系: 最多不识别不添加而已, 怎么会空间不足? 后来在网上看到一条分析, 编译 一个 几十兆... 阅读全文
posted @ 2015-04-27 14:22 aslistener 阅读(3041) 评论(0) 推荐(0)