
QT
文章平均质量分 83
markely
物联网,电商,新闻、旅游,金融等平台开发
展开
-
Qt之qss文件编写
一 详细参考 http://doc.trolltech.com/4.6/stylesheet-reference.html 二 Qt Stylesheets TutorialStylesheets add spicy flavor to your boring Qt GUIs.For a long time, Qt has allowed you to d转载 2012-08-18 17:08:36 · 19959 阅读 · 2 评论 -
QList<T> 的释放分两种情况
1.T的类型为非指针,这时候直接调用clear()方法就可以释放了#include #include #include int main(int argc, char *argv[]){ QCoreApplication a(argc, argv); typedef struct _test { int id; QString转载 2012-11-05 19:47:00 · 8439 阅读 · 1 评论 -
Qt使用AES加密算法对字符串进行加密
因工作需要,需要对字符串进行加密处理,在网上找了很长时间,终于找到了一个可以使用的aes加密算法。其源代码采用c++编写而成,但其头文件引用windows.h,经过修改部分代码,将#include去掉,这样可是使用与多个编译器。下面的代码中列出了测试用的代码(中文出现乱码现象):点击(此处)折叠或打开int main(int argc, char *转载 2012-10-31 15:19:37 · 5873 阅读 · 0 评论 -
QT生成在Windows下有图标的exe文件(IDE=QT Creator)
首先当然要准备一个.ico图标文件(假定为myIcon.ico),将其复制到工程目录当中(.pro文件所在的目录)。·然后在QT Creator中Ctrl+N或 File - New File or Project选择General中的Text File名称填写为.rc文件(如myRc.rc)在里面只用写一行:IDI_ICON1转载 2012-10-31 14:29:23 · 1073 阅读 · 0 评论 -
QT显示图片
QT显示图片的方法有很多大致为label上显示直接画出来容器显示 1---------------显示gif图片(label上显示)http://archive.cnblogs.com/a/2053701/ 在QT中要显示GIF图片,不能通过单单的添加部件来完成.还需要手动的编写程序.工具:QT Creator转载 2012-09-25 13:11:15 · 4065 阅读 · 0 评论 -
Qt图片显示效率的比较
在Qt中处理图片一般都要用到QImage类,但是QImage的对象不能够直接显示出来,要想能看到图片,初步发现有两种方法。一、QImage转QPixmap,然后用QLabel::setPixmap()image=new QImage("D:/Temp/XX.jpg");pixmap=newQPixmap();pixmap->convertFromImage(*image)转载 2012-09-25 13:13:59 · 12580 阅读 · 1 评论 -
Qt学习——容器类QList和QMap
这里容器类与C++和Java的容器类相差不多,主要看看是什么用法。这里只贴代码,就不做解析了。1.QList用法:需要注意的是T只包括一些基本数值类型(比如int和double等)和Qt的一些数据类型(比如QString,QDate和QTime等)。Qt的QObject及其他的子类(比如QWidget和QDialog等)是不能够存储在容器类中的。 可替代方案是存储QOb转载 2012-10-10 12:13:59 · 2402 阅读 · 0 评论 -
Qt 透明窗体,圆角
一. 背景刷成黑色,前景色设为白色。 方法一、paltette方式,经测试,该方法不会影响到其他控件,推荐使用 QPalette bgpal = palette();bgpal.setColor (QPalette::Background, QColor (0, 0 , 0, 255));//bgpal.setColor (QPalette::Background, Qt::tra转载 2012-09-19 19:42:16 · 3837 阅读 · 0 评论 -
QJson应用
在使用前,需要配置使用环境。1、在本地编译出QJson的dll(见前一篇文章)。2、在.pro文件中加入如下代码:INCLUDEPATH += d:/Qt/2010.05/lib/qjson/includeLIBS += -Ld:/Qt/2010.05/lib/qjson/lib -lqjson环境就配好了。 接下来是转载 2012-10-10 18:43:14 · 6447 阅读 · 2 评论 -
qt控件的使用
所有代码都是在qt3.3.8+fedora8下运行的。1. 控件位置的确定控件的位置一般来说是相对其父的其左上角的坐标:QWidget *w = new QWidget(this);QPoint p = w->pos();int x = p.x();int y = p.y();若要得到其针对全局界面的坐标值,则需要转换一下,用mapToGlobal():QPoi转载 2012-11-05 23:09:06 · 9770 阅读 · 0 评论 -
Qt里使用QSplashScreen类制作Splash启动窗口
#include #include #include #include "ui_browser.h"int main(int argc, char **argv){ QApplication app(argc, argv); QPixmap pixmap("splash.png"); QSplashScreen *splash = new QSplashScreen(pi转载 2012-11-05 23:51:40 · 2025 阅读 · 0 评论 -
关于QJson的安装
QJson解决了我客户端要反序列化JSon串的问题,这是我第一次安装Qt的插件,折腾了半天 。QJson的官网是:http://qjson.sourceforge.net/。里面的教程讲得挺清楚的,但是有几个细节没注意,就把我卡着了。所以在这里做一个记录我用MinGW + cmake方法。下载安装了这两个应用后,照着教程装的,弄懂了就没啥问题。但有下面几个地方我遇到了错误:转载 2013-02-27 11:16:38 · 1964 阅读 · 0 评论 -
Qt使用AES加密算法对字符串进行加密
因工作需要,需要对字符串进行加密处理,在网上找了很长时间,终于找到了一个可以使用的aes加密算法。其源代码采用c++编写而成,但其头文件引用windows.h,经过修改部分代码,将#include去掉,这样可是使用与多个编译器。下面的代码中列出了测试用的代码(中文出现乱码现象)int main(int argc, char *argv[]){ QCoreApplication转载 2012-11-20 15:14:58 · 2098 阅读 · 0 评论 -
invalid conversion from 'const char*' to 'UCHAR*'解决方法
class TAesClass{public: TAesClass(); ~TAesClass(); void InitializePrivateKey(DWORD KeySize,UCHAR *KeyBytes); //AES 密钥初始化 DWORD OnAesEncrypt(LPVOID InBuffer,DWORD InLength,LPVOID OutBuf转载 2012-11-20 15:12:14 · 5130 阅读 · 0 评论 -
发布的Qt程序如何才能正常显示图片
在windows下编译好的QT程序在其他没有安装QT的机器上会出现图标和图片无法正常显示的问题。这时我们可以通过以下方式来解决:在release文件夹里创建plugins文件夹,并将QT安装目录下的plugins\imageformats文件夹复制到release\plugins文件夹(imageformats文件夹包含了许多图片格式的插件,如jpeg等)。然后最重要的一步转载 2012-11-16 12:38:41 · 1141 阅读 · 0 评论 -
Qt 界面美化
1.设置窗体透明:QWidget *pWidget->setStyleSheet("background-color:rgba(255, 255, 255, 0);border-style: solid;border-width: 0px;\ border-color: rgba(255, 255, 255, 0);");2.设置窗体背景与透明QWidg转载 2012-11-16 12:37:51 · 2149 阅读 · 0 评论 -
Qt实现遍历文件夹和文件目录(递归)
#include #include #include #include #include #include void printdir(char *dir, int depth){ DIR *dp; //定义一个子目录流 struct dirent *entry; //定义一个目录数据项,存储对目录流访问得数据 struct stat statbuf;转载 2012-11-13 15:16:16 · 7487 阅读 · 0 评论 -
QTableWidget获取选中的内容及所在行数
// QTableWidget选中所有单元格及取消选中所有单元格// ui->allowSelectKeyTableWidget->selectAll();// ui->allowSelectKeyTableWidget->setFocus(); introwCount=ui->TableWidget->rowCount(); qDebu转载 2012-11-09 16:33:30 · 64743 阅读 · 3 评论 -
Qt 动态加载 dll
#ifdef Q_OS_WIN typedef long ( *SHELLRUN)(long,const char*, const char*, const char* ,const char* , int ); SHELLRUN test; QString str = "shell32.dll"; QLibrary lib(str); test = (SH转载 2012-11-05 23:53:22 · 2638 阅读 · 0 评论 -
Qt 图形特效(Graphics Effect)模糊,变色,透明和阴影
QGraphicsEffect也是Qt-4.6引入的一个新功能。它让给图形元素QGraphicsItem增加更佳视觉效果的编程变得非常简单。先来看几张效果图。上图中最上面的那个图片是没有使用QGraphicsEffect处理的原图,下面的四个图片分别代表了模糊,变色,透明和阴影效果。对应使用了 QGraphicsEff转载 2012-09-13 16:50:13 · 11279 阅读 · 0 评论 -
Qt--圆角控件,圆角窗体,鼠标拖动窗体
1.设置圆角控件:connectPB->setStyleSheet ("border:2px groove gray;border-radius:10px;padding:2px 4px;");//设置圆角按键2.设置圆角窗体:setWindowFlags(Qt::FramelessWindowHint);QBitmap bmp(this->size());转载 2012-09-19 19:33:28 · 3857 阅读 · 0 评论 -
QT常识
1 QWidget类有什么用途? 在Qt应用程序中,QWidget用做工作空间.它是底层窗口,在其上可以放置其他对象,如按钮等.2 a.setMainWidget(&mainwindow);语句的意义是什么? 这段代码告诉Qt,说明mainwindow对象是程序的主部件.当主部件关闭时,整个程序随之结束. (主部件与其他Qt部件的区别是:当主部件终止时,整个程序就运行结束转载 2012-08-27 20:20:22 · 805 阅读 · 0 评论 -
Qt Model/View( 一)
英文:http://doc.trolltech.com/main-snapshot/model-view-programming.html介绍Qt 4推出了一组新的item view类,它们使用model/view结构来管理数据与表示层的关系。这种结构带来的功能上的分离给了开发人员更大的弹性来定制数据项的表示,它也提供一个标准的model接口,使得更多的数据源可以被这些it转载 2012-08-27 20:18:10 · 2392 阅读 · 0 评论 -
SQL模型类-QSqlTableModel模型
QSqlTableModel类继承至QSqlQueryModel类,该类提供了一个可读写单张SQL表的可编辑数据模型,功能:修改,插入,删除,查询,和排序常用函数QVariantheaderData ( intsection,Qt::Orientationorientation, introle= Qt::DisplayRole ) const 获取水平头或垂直头标题b转载 2012-08-27 21:37:54 · 954 阅读 · 0 评论 -
QT中的View Model模型系列一
本讲主要介绍一下QT中ViewModel的基本结构,以及简单的使用方法。对于View Model的概念这里就不累述了,简单的了解可以参考:http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller下面进入正文:Qt中的View主要有三种QListView,QTreeView, QTabelView转载 2012-08-27 20:40:46 · 5958 阅读 · 0 评论 -
Qt的Model/View (二)
最近在看Qt的Model/View Framework,在网上搜了搜,好像中文的除了几篇翻译没有什么有价值的文章。E文的除了Qt的官方介绍,其它文章也很少。看到一个老外在blog中写道Model/View是他认为Qt中最不好的一部分了。真的是这样吗?为了回馈开源社区,我写了这篇blog,写的是我认为比较有价值的东东。题目起得是解析,但也没有特别细节的介绍,点到为止,有兴趣的Tx可以继续讨论。我所看转载 2012-08-27 20:19:03 · 1254 阅读 · 0 评论 -
彻底解决qt中文
今晚使用QMessageBox出现中文乱码,参考网上相关文档解决问题。下面这篇文章是从网上搜索的,文中说QTextCodec::codecForName("GB2312")等代码可以保证在程序中直接使用中文而不出现乱码是欠全面的,比如,在Mac OS X 10.6.2中文版上,须使用QTextCodec::codecForName("UTF-8")才能保证中文不出现乱码。QT国际化支持转载 2012-09-01 19:26:12 · 1934 阅读 · 0 评论 -
Qt基础——让使用Designer创建的UI也能自动适应窗口大小
我们知道,通过Qt的各种Layout可以实现控件的自动布局。但是在使用Qt Designer创建的UI时,发现UI始终是设计时的样子,无法随着容器的放大缩小自适应地变化。通过之前对ui的.h文件进行分析,我们知道Qt在生成ui代码时,根据最外层的Layout自动添加一个了Widget: /** 这个Widget在UI设计时是没有的,是Qt为了方便组合其他的组件而且自动创转载 2012-08-18 18:31:19 · 1704 阅读 · 0 评论 -
使用QSS动态更换皮肤简单举例
通过QSS可以实现动态更换QT程序的外观。下面我主要通过一个小例子说明下如何动态变换皮肤的功能。首先,先创建一个test.qss文件,放置在程序目录下,文件内容如下:QPushButton {color:red;background-color:#FFFFFF}具体含义就是设置QPushButton字体颜色为red,背景颜色为#FFFFFF接着,我们创建一个QPushB转载 2012-08-18 17:06:57 · 1997 阅读 · 0 评论 -
基于Qt的多窗口编程A--界面的设计
对于应用程序中的多窗体切换,我们已经习以为常。通常一个应用程序中,不同的窗口代表不同功能的工作区。本文将详细描述基于Qt的多窗体程序的设计方法。在阅读本文之前,你最好了解面向对象的基本思想以及Qt的基本使用方法。接下来我们以编写一个客户端为例来具体说明多窗体程序的编程方法。该客户端包括多个子系统,每个子系统对应一个窗口;在客户端的主界面,通过点击相应的按钮实现多个窗体之间的切换。主界面图如转载 2012-09-27 18:10:22 · 13518 阅读 · 2 评论 -
基于Qt的多窗口设计B-窗体切换的实现
窗体类的关系在布局管理部分,我们已经说过将主界面和两个子系统分别封装成三个不同的类。首先我们讨论每个类中应该封装什么,其次再讨论这三个类之间的具体关系。通过Qt Dsigner设计好界面后会在工程文件中对应一个.ui的文件;编译器会将该文件转换成能被C++所识别的.h文件。比如configUI.ui文件就对应一个ui_configUI.h文件,该头文件中包含了类Ui::config转载 2012-09-27 18:11:45 · 14549 阅读 · 6 评论 -
QT QMap介绍与使用
Qt中的QMap介绍与使用,在坛子里逛了一圈,发现在使用QMap中,出现过很多的问题,Map是一个很有用的数据结构。它以“键-值”的形式保存数据。在使用的时候,通过提供字符标示(键)即可得到想要的数据。这个“数据”即可以是一个字符串,也可以是任意对象,当然也包括自己定义的类对象。说明:map是以值传递的形式保存数据的。1. 基本应用下面以“键-值”都是QString的例子说明QMa转载 2012-10-10 13:05:01 · 82806 阅读 · 5 评论 -
Parsing JSON with QT using standard QT library
First time i find out this it took a while. But actually there is no need any Additional code except QT itself, unless you want gain more performance then QT standard library gives. So if you want to转载 2012-10-09 15:28:41 · 1250 阅读 · 0 评论 -
QCurosr类 的鼠标形状
常用的鼠标形状与代码标记如下:转载 2012-09-27 21:11:15 · 1087 阅读 · 0 评论 -
QT的Event Filter
QT事件模块一个真正强大的特性是可以设置一个QObject的实例去监测另外一个QObject实例的事件,在被监测的实例see之前.假设我们有一个CustomerInfoDialog这样的widget, 它由几个QLineEdit组成.我们想用Spacer键来转变focus到下一个QLineEdit.这个非标准的行为可能对一个内部的程序很合适, 需要培训它的用户来使用它. 一个直接的方法是子转载 2012-09-12 22:52:28 · 1114 阅读 · 0 评论 -
QT4 用QLabel实时显示时间
最近在做一个2410基于Linux的界面,需要实时的现实一些数据和时间在网上找了好多资料,费了九牛二虎之力再到一篇相关的文章,能显示时间,但却不能实时刷新。费了将近两天的时间,终于可以让它实时显示了。编译环境 :Fedora 9编译器 :qtopia-core-opensource-src-4.3.3.tar.gz(在Fedora 9上编译成功也费了好长的时间)功能已实现,转载 2012-09-29 17:56:36 · 5597 阅读 · 0 评论 -
再谈Qt Focus事件
在我的前一篇文章中,我实现了QLineEdit获得焦点高亮显示与失去焦点恢复原样的操作,是通过重新继承该类,再重构该事件函数的方式。这篇文章紧跟那篇文章,这里要实现的功能也是一样的,而是通过另外不同的方式——事件过滤器(eventFilter)。Qt的事件模型中提供的事件过滤功能使得一个QObject对象可以监视另一个QObject对象中的事件,通过在一个QObject对象中安装事件过转载 2012-09-12 22:53:26 · 1355 阅读 · 0 评论 -
QT 窗体间通信
目录(?)[+]多窗体的实现我们可以在1:在一个创体内控制另一个窗体显示(信号,槽的使用)2:在一个窗体内触发另一个窗体内的信号,槽,函数 (信号,槽的使用)3,在一个创体内修改另一个创体内部件的属性,值等(指针使用)方法1----------main函数中控制 a.show b.show(通过accept判断,下面将不再介绍此方转载 2012-09-27 20:11:08 · 2942 阅读 · 0 评论 -
QT Tree model
Qt 的确是一个好东西,开发起来非常方便,但是方便也带来很多问题,这些问题就不多说了,用到的人自然会有体会。这几天在研究Qt的MVC,List和Table类型的都很简单,没有什么难度,但是它的TreeModel实在是让我晕了好几天。一般用TreeModel都是用自己的类,于是,按着文档上说明的,关于继承QAbstractItemModel的时候,必须实现如下几个函数:index()转载 2014-08-27 18:10:35 · 3861 阅读 · 0 评论