
Qt4
masikkk
北航计算机系研究生
展开
-
Qt中用户界面的User Interface Compiler(uic)机制的相关说明
uic读取由QtDesigner生成的XML格式的用户界面定义文件(.ui文件),然后生成其对应的C++头文件。 若界面文件为ZZZ.ui,则对应生成的头文件为ui_ZZZ.h。默认情况下: ①基于QMainWindow的程序,会生成一个叫ui_mainwindow.h的头文件 ②基于QDialog的程序,会生成一个叫ui_dialog.h的头原创 2013-03-09 21:09:33 · 2758 阅读 · 0 评论 -
qobject_cast用法
函数原型:T qobject_cast ( QObject * object )本方法返回object向下的转型T,如果转型不成功则返回0,如果传入的object本身就是0则返回0。在使用时有两个限制: 1# T类型必须继承自QObject。 2# 在声明时必须有Q_OBJECT宏。使用场景:当某一个Objec原创 2013-03-30 21:07:12 · 21806 阅读 · 3 评论 -
Qt Creator中无法使用OpenCV2中新函数的解决办法
按上篇文章《Qt4.8下应用OpenCV2.4.4搭建环境详细步骤(win7系统)》http://blog.youkuaiyun.com/masikkk/article/details/8693793在Qt Creator中配置了OpenCV2.4.X,但是只能使用opencv1.0的函数,opencv2中的函数,例如:imread(),Mat结构等都不能使用。找原因:(1)看头文件有没有问题原创 2013-04-01 22:24:47 · 9326 阅读 · 7 评论 -
Qt中使用OpenCV显示图片时,Mat结构转换为QImage结构的问题
Qt中利用OpenCV显示图片和视频时,需要将OpenCV中的Mat或IplImage结构转换为Qt中QImage结构,转换时需要注意的地方是OpenCV中和Qt中关于三原色的排列的不同:OpenCV中是以BGR的顺序排列,Qt中是以RGB的顺序排列,两种格式在转换时如果没注意到这点,就会出现问题,如下图:上图是读取的美剧《总统一家》中的一集,mkv格式的(OpenCV2中增加原创 2013-04-21 18:43:04 · 6327 阅读 · 1 评论 -
Qt中整型转字符串的方法
程序中需要将整型转换为字符串QString类型,看了看QString的构造函数,没有直接以int类型为参数的。很奇怪,Qt一直给人感觉做什么都很方便,怎么会没有直接将整型转换为字符串的方法呢?难道还得自己写?过一段时间后终于顿悟了,其实用QString的arg()函数可以完美解决其他类型转换为字符串的问题。只需要:int intValue;QString strValue;原创 2013-05-02 19:23:06 · 10656 阅读 · 0 评论 -
Qt中暂停线程的执行
在线程中定义一个信号量:QMutex pause;把run()函数中循环执行的部分用信号量pause锁住: void run() { while(1) { pause.lock(); //循环执行的内容,比如视频播放 pause.unlock(); }原创 2013-05-21 14:28:47 · 11861 阅读 · 2 评论 -
Qt4.8下应用OpenCV2.4.4搭建环境详细步骤(win7系统)
今天,研究了下Qt 中如何应用OpenCV的问题。与VC6.0环境下MFC只能应用OpenCV1.0版本不同,Qt 中可以应用最新的OpenCV2.4.x版本(又一个Qt 的好处)。搭建环境:操作系统:Win7Qt版本:Qt4.8 开发环境:Qt Creator 2.4.1 Open转载 2013-03-19 21:32:19 · 3678 阅读 · 1 评论 -
QT框架中快速应用OpenCV
和MFC比较起来,QT的信号槽机制比MFC的信号机制慢,但是因为能很好的实现跨平台,所以我在这里总结一下可能对一些人有点用。OpenCV.China论坛上有一个帖子叫做《在MFC框架中快速应用OpenCV》看了后就想结合QT写一下。0.搭建环境:OpenCV + QT 4.6我的实验是基于VS2008来做的,QT官方虽然提供了VS2008-add-in的插件,我没有用。直接下载器编转载 2013-03-30 17:01:39 · 1899 阅读 · 0 评论 -
Qt通过ODBC连接MySQL数据库
Qt连接数据库综述 QtSql模块使用数据库驱动插件来与不同的数据库API交互,默认情况下Qt只提供SQLite和ODBC的 驱动插件,默认放在C:\Qt\4.8.4\plugins\sqldrivers文件夹中,其他数据库的驱动需要我们自己编译添加。 QSqlDatabase类负责数据库的连接。一个Q原创 2013-03-09 15:24:52 · 5051 阅读 · 5 评论 -
JavaScript调用Qt本地对象的几点注意!
一、html中的JavaScript调用Qt本地对象方法过程如下:将本地的QObject对象暴露给webkit和JavaScript通过JavaScript调用本地QObject的槽重要代码:connect(ui->mapWebView->page()->mainFrame(),SIGNAL(javaScriptWindowObjectCleared()),this转载 2013-05-07 20:43:19 · 1834 阅读 · 0 评论 -
Qt实现复杂的列表控件
QTCN上有人问,复杂列表控件怎么做?控件布局如下图,求指点思路有高手指点如下,红框圈起来的是QLabel,1个进度条,2个按钮(toolButton),1个布局,1个QWidget(容器),组成一个widget。放进QListWidget里。进度条用样式表美化一下,参考:http://developer.qt.nokia.com/doc/qt-4.8/st转载 2013-05-07 20:40:06 · 5569 阅读 · 1 评论 -
QSS与Qt主程序做到界面分离
Qt中能够实现逻辑程序与界面分离,主要是将按钮贴图,颜色绘制等放到qss文件中,然后由相应的窗口加载就可以。有几点注意:1.不同的窗口可以加载不同的qss文件。例如程序中有多个窗口,那么你可以为每个窗口写一个qss文件,这样每个窗口就有自己独特的风格了。 而且更换皮肤时,只要将加载的qss文件更换一下就可以。 加载qss的相关代码:转载 2013-05-07 20:34:56 · 4058 阅读 · 1 评论 -
QT4中构建多线程的服务器and QT'Socket
QT4中构建多线程的服务器首先说一下对多线程这个名词的理解过程。以前听说过很多次多线程这个词,而且往往与服务器联系起来,因此一直把多线程误解为服务器特有的功能;直到这次课程设计,仔细学习了一下多线程的机制,才知道真正的意思。简单的来说,就是同时有多个线程一起运行,而不同的线程可以执行不同的操作。举个例子,一个图像处理工具,可以用鼠标一边移动图像,一边用快捷键缩放图像,此时,移动图像、缩放图转载 2013-05-03 16:28:38 · 1819 阅读 · 0 评论 -
Qt中的QString和标准c++中的string互相转换
string -> QString1 std::string strStd = "中文字符";2 QString strQ = QString::fromLocal8Bit(strStd.c_str());QString -> string1 QString strQ("中文字符");2 std::string strStd= strQ.toStdString();3转载 2013-04-21 22:10:33 · 3099 阅读 · 1 评论 -
设置QT中QTreeWidget的水平横向滚动条按需出现
若只有一列item则需先设置treeWidget->setHorizontalScrollMode(QAbstractItemView::ScrollPerPixel);再treeWidget->setHorizontalScrollBarPolicy(Qt::ScrollBarAsNeeded);HorizontalScrollBarPolicy设置为needed和alw转载 2013-04-16 15:55:29 · 10073 阅读 · 2 评论 -
Qt中通过设置位图掩码生成异形控件
以下步骤是以按钮为例,其他控件类似 ①在QtDesigner中拖出一个按钮或者在程序中生成一个按钮。 ②加载一个用来指定按钮形状的图片: QPixmap pixmap("images/left.png");//这里是一个左箭头 ③调用此按钮的setMask()函数来设置控件掩码,参数是从pixmap中提取的位图掩码pix原创 2013-03-27 21:19:37 · 3615 阅读 · 0 评论