
Qt
guoxiaoqian8028
这个作者很懒,什么都没留下…
展开
-
qt用mingw编译时报错 multiple definition of `main‘
这个破问题困扰了我许久,结果在网上找到了一个外国牛人的解决方法:打开.pro文件,SOURCES+=这段里重复包含了main.cpp \,删除一个就可以了。原创 2012-11-10 17:01:34 · 2990 阅读 · 0 评论 -
Qt运行设置要注意的几点
1.运行配置要与项目名一致2.执行档就是运行的程序文件,这里不要轻易修改原创 2013-03-23 23:48:35 · 713 阅读 · 0 评论 -
Qt:can not open out file
出现上图类似的错误的原因是上次运行的程序没有关掉,你要到任务管理器去找到该名字的程序全部关掉原创 2013-03-23 23:52:30 · 897 阅读 · 0 评论 -
Qt桌面右下角提示框
在一个Widget对象的构造函数里加上 //获取可用桌面大小 QRect deskRect = QApplication::desktop()->availableGeometry(); //移动到右下角 move(deskRect.width()-width(), deskRect.height()-height()); //关闭窗口后销原创 2013-04-08 16:21:46 · 1027 阅读 · 0 评论 -
QPixmap/QImage/QPicture
QImage与Qpixmap的区别1、QPixmap主要是用于绘图,针对屏幕显示而最佳化设计,QImage主要是为图像I/O、图片访问和像素修改而设计的2、QPixmap依赖于所在的平台的绘图引擎,故例如反锯齿等一些效果在不同的平台上可能会有不同的显示效果,QImage使用Qt自身的绘图引擎,可在不同平台上具有相同的显示效果3、目前的Qt会把QPix转载 2013-06-06 23:12:57 · 646 阅读 · 0 评论 -
浅析 Qt中多线程系列之线程控制 下篇
2011-06-24 11:12 佚名 互联网 我要评论(0) 字号:T | T本文介绍的是Qt中多线程系列之线程控制,QThread 是Qt中一个对线程支持的核心的底层类。每个线程对象代表了一个运行的线程。由于Qt的跨平台特性,QThread成功隐藏了所有在不同操作系统里使用线程的平台相关性代码。AD: 2013大数据全球技术峰会课程PPT下载转载 2013-06-06 23:37:05 · 521 阅读 · 0 评论 -
Qt中图像的显示与基本操作
Qt可显示基本的图像类型,利用QImage、QPxmap类可以实现图像的显示,并且利用类中的方法可以实现图像的基本操作(缩放、旋转)。1. Qt可显示的图像类型参考Qt的帮助文档,可支持的类型,即可以直接读取并显示的格式有BMP、GIF、JPG、JPEG、PNG、TIFF、PBM、PGM、PPM、XBM、XPM。2. Qt用如何显示图像通常用QLabel显示图像,Q转载 2013-06-06 23:12:03 · 571 阅读 · 0 评论 -
QTableWidget 应用总结
本文引用自:http://blog.sina.com.cn/s/blog_9c41e8ed01011mma.htmlQTableWidget是QT程序中常用的显示数据表格的空间,很类似于VC、C#中的DataGrid。它跟QTabelView的区别:QTableWidget是QTableView的子类,QTableView可以使用自定义的数据模型来显示内容(也就是先要通过s转载 2013-06-06 23:15:47 · 2670 阅读 · 1 评论 -
wxWidgets、Qt等界面工具比较
本文是在wxWidgets Wiki上面找到的一篇,对比了wxWidgets和其他一些界面工具的特点。看到很多朋友在网上询问这些库各自的特点,我想先把这篇文章翻译出来——毕竟这也算是一篇官方的文章,应该比较有说服力吧!这篇文章写于2004年左右,但是很明显某些地方已经更新了,因为Qt 4.5是2009年才发布的! 这是我第一篇翻译,哪里翻译不好敬请谅解! 原文:ht转载 2014-01-25 19:09:40 · 11527 阅读 · 0 评论 -
从 C++ 到 Qt
Qt 是 C++ 的库,Qt在ansi C++ 的基础上进行了一点扩展。但国内似乎比较浮躁,学Qt的很多连基本的C++如何编译似乎都不太清楚。本文舍弃IDE或qmake、cmake等工具的束缚,尝试通过几个例子,一步一步从标准 C++ 的编译过渡到 Qt 的编译。本文涉及的都是最基本的东西,或许可以说,只要你用C++ Qt,不管是通过哪种工具(qmake、cmake、boost.b转载 2014-01-28 12:27:47 · 761 阅读 · 0 评论 -
事件循环与线程
初次读到这篇文章,译者感觉如沐春风,深刻体会到原文作者是花了很大功夫来写这篇文章的,文章深入浅出,相信仔细读完原文或下面译文的读者一定会有收获。由于原文很长,原文作者的行文思路是从事件循环逐渐延伸到线程使用的讨论,译者因时间受限,暂发表有关事件循环的译文。另一半线程实用的译文将近期公布。文中有翻译不当的地方,还请见谅。 介绍线程是qt channel里最流行的讨论话转载 2014-02-04 00:29:02 · 5758 阅读 · 1 评论 -
浅议Qt的事件处理机制
深入了解事件处理系统对于每个学习Qt人来说非常重要,可以说,Qt是以事件驱动的UI工具集。 大家熟知Signals/Slots在多线程的实现也依赖于Qt的事件处理机制。 在Qt中,事件被封装成一个个对象,所有的事件均继承自抽象类QEvent. 接下来依次谈谈Qt中有谁来产生、分发、接受和处理事件: 1. 谁来产生事件: 最容易想到的是我们的输入设备,比如键盘、鼠标转载 2014-02-04 00:34:59 · 1170 阅读 · 0 评论 -
Qt 信号-槽 事件机制(汇总)
恩,我由回来了,使用QT了,在windows上我发现使用labview做复杂协议有些难,我又不想重新学习GTK+,所以还是使用我很鄙视的QT了。由于心理上喜欢C语言以及其实现机制,所以对于QT的核心有警惕,挖掘挖掘其内部知识。下面的资料是网上摘取的,汇总一下。--------------------------------------分割----------------------转载 2014-02-04 00:38:03 · 963 阅读 · 0 评论 -
Qt QWidget::paintEngine: Should no longer be called 错误的解决办法
今天在重写QListView的 paintEvent方法时 QPainterpainter(this);painter.drawText(rect(),Qt::AlignCenter,tr("Draganddropfile(s)here"));运行时遇到了如下问题(并且文字并没有显示):QWidget::paintEngine: Should no longer转载 2014-02-10 14:42:38 · 17043 阅读 · 5 评论 -
Qt的跨平台技巧
先讨论一下Qt的头文件包含技巧。我们可以使用这样的简单形式来引入QMutex类,其实它的访问路径是Src\qtbase\include\QtCore\QMutex,而该文件通过#include"qmutex.h"跳转到普通的头文件,然后又通过#include "../../src/corelib/thread/qmutex.h"跳转到源代码中真实的头文件。 我们再以QMu原创 2014-05-17 15:01:39 · 2304 阅读 · 0 评论 -
Qt sqlite diver not load问题
由于Qt对SQLite数据库的支持最好(其他数据库haox)原创 2014-06-10 16:55:21 · 2419 阅读 · 3 评论 -
Qt中的核心技术
这里简单介绍Qt的一些核心机制,具体参见Qt文档。包含内容:(*)Qt的信号和槽,以及事件机制(*)Qt Object Model(*)Qt Embedded for linux简介(*)事件机制(*)显示机制(*)Qt的通信机制(*)Qt的插件系统(机制)(*)Qt内存管理机制(*)Qt的Model/View编程模式(*)绘制系统转载 2014-06-12 13:42:42 · 6412 阅读 · 0 评论 -
Qt在GUI程序里显示控制台界面
在GUI程序里有时我们想简单的打印些信息来进行测试,然而因为不是控制台程序,所以不能直接通过控制台输出,要实现这点就要做一下两点:1:在.pro文件中加入一句: CONFIG+= console2:在运行设置里勾选在终端运行的选项注:如果只做了第一点,那么信息会显示在” 应用程序输出“窗口,也可以用来查看测试结果。原创 2013-03-23 23:21:13 · 5760 阅读 · 0 评论 -
Qt构建设置注意的几点
1.检查“构建步骤”里的qmake选项是调试版的还是release版的,通过点击详情就可以进行选择,我们要选跟Qt版本一致的,比如Qt是Debug版的,qmake就是Debug版的。2.构建顺序是先qmake后make原创 2013-03-23 23:44:56 · 2713 阅读 · 0 评论 -
Qt实现遍历文件夹和文件目录(递归)
bool FindFile(const QString & path){QDir dir(path);if (!dir.exists())return false;dir.setFilter(QDir::Dirs|QDir::Files);dir.setSorting(QDir::DirsFirst);QFileInfoList list = dir.entryIn转载 2013-03-29 16:45:04 · 3945 阅读 · 1 评论 -
切换不同版本的QtSDK后无法启动qmake的问题
换了不同的环境,配置当然也需要改:打开项目选项,看看Qt版本和工具链是否设置成当前的Qt版本和编译器。原创 2012-11-11 22:10:01 · 718 阅读 · 0 评论 -
Qt下使用hash_map
hash_map是标准c++的东西,所以各个平台都支持,在Qt下需要下面两句#include using namespace __gnu_cxx;//需要引入原创 2012-11-11 14:11:27 · 1720 阅读 · 0 评论 -
qt_creator调试直接执行的问题
调试的时候虽然设了断点,但是程序还是停不住,那肯定是你用了release版的,改成debug版的就可以了。在项目选项中,构建配置里第一个配置就是选择release版还是debug版原创 2012-11-11 22:50:22 · 601 阅读 · 0 评论 -
Ubuntu下调试Qt报错ptrace operation not permitted
直接点击图标运行了qt creator,在调试的时候报错,如图很明显,是权限不足的问题。解决方法就是改用 sudo ./qtcreator的方式启动,为了方便,可以再home下创建一个qtcreator的快捷方式,这样就不用每次都cd到程序所在目录了。原创 2012-11-12 17:27:39 · 1334 阅读 · 0 评论 -
QtCreator调试程序时GDB崩溃
这个情况出现在QtCreator的2.5版以上,是由于新版QtCreator至少需要7.2 IIRC版的GDB。可以到:http://builds.qt-project.org/job/gdb-windows/下载好使的GDB。转载 2012-11-12 17:18:39 · 3985 阅读 · 0 评论 -
Qt 配置文件读写
在这里用了两个按钮触发配置文件读写操作当pushButton_read按下时读取配置文件内容pushbutton_write时分别对三个配置文件关键字写入新内容。 settings.setValue("mainFun",25);settings.setValue("subFun",40);settings.setValue("service",1);转载 2012-11-19 21:34:19 · 2531 阅读 · 0 评论 -
详解 QT 中.pro文件的写法
QT 中.pro文件的写法是本文要介绍的内容,在QT中,有一个工具qmake可以生成一个makefile文件,它是由.pro文件生成而来的,.pro文件的写法如下:1、注释从“#”开始,到这一行结束。2、指定源文件SOURCES = *.cpp 对于多源文件,可用空格分开,如:SOURCES = 1.cpp 2.cpp3.cpp或者每一个文件可以被列在一个分开的转载 2012-11-19 21:54:38 · 463 阅读 · 0 评论 -
Qt下使用pthread
MingW中已经有了pthread.h和libpthread.a,普通情况下能找到头文件但是找不到库文件,因此需要将库文件手动包含到项目中。将下载的pthread的动态链接库dll,复制到windows/system32下然后打开.pro,添加一句 LIBS +=libpthread即可原创 2012-11-11 00:06:03 · 4026 阅读 · 1 评论 -
Qt学习经验之quit()、exit()、close()
这篇文章从网上复制下来放在草稿箱很久了,现在读还是挺有用的,记得当初用C#的时候也遇到类似的问题,很值得再一读。 使用QT编辑界面,其中带来很大方便的一点就是Qt中自带丰富的、种类齐全的类及其功能函数,程序员可以在编辑程序的过程中简单地直接调用。关于窗口关闭的操作,在这里指出常用的三个槽,即quit(),exit()以及close()。 首先说转载 2013-02-14 18:10:09 · 14018 阅读 · 0 评论 -
Qt中让标准C++类实现信号/槽机制
因为只有所有从 QObject 或其子类 ( 例如 Qwidget) 派生的类都才能够包含信号和槽,因此需要将C++类继承QObject,并包含Q_OBJECT宏标记class Employee:public QObject{Q_OBJECTsignals:....public slots:....};修改好了后,需要重新qmake,否则会报错原创 2013-03-10 22:59:28 · 661 阅读 · 0 评论 -
QT安装:没有该版本的工具链
我安装QT4.8.3的过程是这样的:1.解压该QT版本对应版本的MingW2,安装SDK,选择MingW目录3.安装Creator4.配置Creator不过在配置的过程中出现了“没有该版本的工具链”的错误提示,百思不得其解。下面是最终的解决方法:先配置工具链,添加一个MinGw,具体设置如下然后再去配置Qt版本,如图原创 2013-03-03 00:40:30 · 5035 阅读 · 0 评论 -
Qt的信号与槽
QT 是一个跨平台的 C++ GUI 应用构架,它提供了丰富的窗口部件集,具有面向对象、易于扩展、真正的组件编程等特点,更为引人注目的是目前 Linux 上最为流行的 KDE 桌面环境就是建立在 QT 库的基础之上。QT 支持下列平台:MS/WINDOWS-95、98、NT 和 2000;UNIX/X11-Linux、Sun Solaris、HP-UX、Digital Unix、IBM AIX、S转载 2013-03-29 14:30:06 · 562 阅读 · 0 评论 -
QT中QWidget、QDialog及QMainWindow的区别
QWidget类是所有用户界面对象的基类。 窗口部件是用户界面的一个基本单元:它从窗口系统接收鼠标、键盘和其它事件,并且在屏幕上绘制自己。每一个窗口部件都是矩形的,并且它们按Z轴顺序排列。一个窗口部件可以被它的父窗口部件或者它前面的窗口部件盖住一部分。 QMainWindow 类提供一个有菜单条、锚接窗口(例如工具条)和一个状态条的主应用程序窗口。主窗口通常用在提供一个大的中央窗口转载 2013-03-29 14:31:50 · 643 阅读 · 0 评论 -
error:collect2:ld returned 1 exit status
原因:1、是有程序在后台运行2.、是slots里定义了函数,但是没有写函数体3、是类里定义了函数,但是没有写函数体,包括构造函数和析构函数转载 2013-03-29 15:41:08 · 528 阅读 · 0 评论 -
QListView和QListWidget
QListView是基于Model,而QListWidget是基于Item。这是它们的本质区别。往QListView中添加条目需借助QAbstractListModel:如: MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow)转载 2013-03-29 14:37:34 · 1393 阅读 · 0 评论 -
Qt 出现“undefined reference to `vtable for”原因总结
由于Qt本身实现的机制所限,我们在使用Qt制作某些软件程式的时候,会碰到各种各样这样那样的问题,而且很多是很难,或根本很难找到原因的,即使解决了问题,假如有人问您为什么,您只能回答--不知道;今天我在这里列举的问题也是再编写Qt程式时,总是碰到的问题,问题普遍,而答案却不唯一,解释这一个问题的说法很多,往往只适合某一种情况,因为这个错误太笼统了,他就是-- “undefined referen转载 2013-03-29 14:34:21 · 591 阅读 · 0 评论 -
Qt中文显示
来自 http://lwr0312.blog.163.com/blog/static/483368072010103001811552/QT默认的编码(unicode)是不能显示中文的,可能由于windows的默认编码的问题,windows默认使用(GBK/GB2312/GB18030),所以需要来更改QT程序的编码来解决中文显示的问题。QT中有专门的一个类来处理编码的问题(QText转载 2013-03-29 15:28:30 · 530 阅读 · 0 评论 -
一种基于Qt的可伸缩的全异步C/S架构服务器实现(一) 综述
本文向大家介绍一种基于Qt的伸缩TCP服务实现。该实现针对C/S客户端-服务集群应用需求而搭建。连接监听、数据传输、数据处理均在独立的线程池中进行,根据特定任务不同,可安排负责监听、传输、处理的线程数目,从而在高传输负荷、高计算符合上达成取舍。数据处理采用流水线结构,以避免少量客户的密集计算请求影响其他客户端的处理。本文对应的代码符合LGPL协议,可直接从https://github.com/go转载 2014-06-12 13:36:56 · 832 阅读 · 0 评论