QT
文章平均质量分 85
joliny
绘画,听音乐,读书,乒乓球,乐器,电脑技术学习。
展开
-
Qt 不规则窗体的实现
Skin(表皮) 是制作比较酷的软件界面的有利工具. 一个软件可以同时使用多种Skin 以取得不同的外观, 使同一个软件有截然不同的风格. 用户可以根据自己的喜好选择 不同的风格. 本节介绍使用 Qt 制作 Skin 的方法.软件界面的风格变化可以通过两种机制完成,一种是通过设置主题(Themes),它使用 界面库本身所具有的对界面组件(Components)的控制能力切换显示风格;另外一种是 通转载 2008-11-11 22:35:00 · 826 阅读 · 0 评论 -
QT的Graphics View柜架(3/3)
关键特性缩放与旋转QGraphicsView通过QGraphicsView::setMatrix()支持同QPainter一样的仿射变换,通过对一个视图应用变换,你可以很容易地支持普通的导航特性如缩放与旋转。下面是一个例子:class View:;public QGraphicsView{Q_OBJECT//.....public slots:void zoomIn() {scale(1.2,1.转载 2008-11-15 20:01:00 · 1165 阅读 · 0 评论 -
Qt Model/View 学习笔记 (一)
介绍 Qt 4推出了一组新的item view类,它们使用model/view结构来管理数据与表示层的关系。这种结构带来的功能上的分离给了开发人员更大的弹性来定制数据项的表示,它也提供一个标准的model接口,使得更多的数据源可以被这些item view使用。这里对model/view的结构进行了描述,结构中的每个组件都进行了解释,给出了一些例子说明了提供的这些类如何使用。Model/Vi转载 2008-11-15 19:53:00 · 1042 阅读 · 0 评论 -
Qt 中的多线程(一)
QT通过三种形式提供了对线程的支持。它们分别是,一、平台无关的线程类,二、线程安全的事件投递,三、跨线程的信号-槽连接。这使得开发轻巧的多线程Qt程序更为容易,并能充分利用多处理器机器的优势。多线程编程也是一个有用的模式,它用于解决执行较长时间的操作而不至于用户界面失去响应。在Qt的早期版本中,在构建库时有不选择线程支持的选项,从4.0开始,线程总是有效的。线程类Qt 包含下面一些线程相关的类:Q转载 2008-11-15 20:03:00 · 1118 阅读 · 0 评论 -
Qt Model/View 学习笔记 (二):为使用Models与views热身
介绍Qt提供了两个标准的models:QStandardItemModel和QDirModel。QStandardItemModel是一个多用途的model,可用于表示list,table,tree views所需要的各种不同的数据结构。这个model也持有数据。QDirModel维护相关的目录内容的信息,它本身不持有数据,仅是对本地文件系统中的文件与目录的描述。QDirModel是一个现成的mo转载 2008-11-15 19:53:00 · 943 阅读 · 0 评论 -
Qt Model/View 学习笔记 (七)
Delegate 类概念与MVC模式不同,model/view结构没有用于与用户交互的完全独立的组件。一般来讲, view负责把数据展示给用户,也处理用户的输入。为了获得更多的灵性性,交互通过delegagte执行。它既提供输入功能又负责渲染view中的每个数据项。 控制delegates的标准接口在QAbstractItemDelegate类中定义。Delegates通过实现paint()转载 2008-11-15 19:57:00 · 1345 阅读 · 0 评论 -
Ogre3D嵌入Qt框架 之 小结
按照经典的Qt程序结构,应该有一个从QMainWindow继承而来的MainWindow,让它做为主窗口,然后子类化一个QWidget,它做为主窗口的"中心挂件",能过封装Ogre的部分功能,实现用Ogre对该窗体的绘制。首先,如何把Ogre这个引擎发动,不断驱动其进行工作。Qt也需要告诉Ogre如何把渲染的内容画到指定的窗口中去,以及用哪种方式更新窗口中的内容。当键盘或鼠标消息来的时候,如何通知转载 2008-11-15 19:57:00 · 1137 阅读 · 0 评论 -
试用QT中的多语言翻译
基本原理:为了在使用多语言,必须做两件事情:1,把想要翻译的字符串放入tr()中,如 QString str=tr("Legal");2, 在开始的时候载入预先制作好的翻译文件(.qm)。以下利用Qt提供的工具,把翻译文件制作出来,并在程序中加载。实践步骤:1,在Qt工程文件MyApp.pro中添加一行:TRANSLATIONS=Language_Chn.ts (其中,"Langua转载 2008-11-15 20:02:00 · 835 阅读 · 0 评论 -
QT中的对象树与对象拥有权
QObjects以对象树组织它们自己。当你创建一个QObject以另一个对象作为其父对象时,这个QObject被加入到其父对象的children()列表中,当父对象对被删除时,其子对象也会被删除。实践表明这种组织方式非常适合GUI对象的特点与需要。举例来说,一个QShortcut(键盘快捷键)是其相关窗口的孩子,因此当用户关掉那个窗口时,这个快捷键也随之删除了。QWidget,是所有屏幕可转载 2008-11-15 20:03:00 · 1037 阅读 · 0 评论 -
QT中的SOCKET编程
操作系统:ARM-LINUXQT版本:QT-2.3.2-FOR-LINUXGUI:Qtopia在LINUX下进行网络编程,我们可以使用LINUX提供的统一的套接字接口。但是这种方法牵涉到太多的结构体,比如IP地址,端口转换等,不熟练的人往往容易犯这样那样的错误。QT中提供的SOCKET完全使用了类的封装机制,使用户不需要接触底层的各种结构体操作。而且它采用QT本身的signal-slot机制,使编转载 2008-11-21 09:28:00 · 1439 阅读 · 0 评论 -
Qt中不规则窗体和部件的实现
描述:a.png 窗口背景图图片: screen.width-461) window.open(http://www.qtcn.org/bbs/attachment/Mon_0708/17_2_63c275273a887ea.png);" src="http://www.qtcn.org/bbs/attachment/Mon_0708/17_2_63c275273a887ea.png"转载 2008-11-20 17:23:00 · 1261 阅读 · 0 评论 -
在QT实现摄像头图像采集
之前已经写了minGW环境中DL的创建与调动,也实验了在QT下如何用QLibrary来调动外部的DLL.于是更进一步,要用QT实现摄像头图像的采集.原理就是基于win32下的capavi32.dll的调动,参考了网上的一些DELPHI程序由于只是为了实现功能,所以界面上没有任何的button之类,所有的代码都完成在构造函数中.#include #include #include const sta转载 2008-11-21 09:30:00 · 5319 阅读 · 0 评论 -
Qt Model/View 学习笔记 (三)
Model类基本概念在model/view构架中,model为view和delegates使用数据提供了标准接口。在Qt中,标准接口QAbstractItemModel类中被定义。不管数据在底层以何种数据结构存储,QAabstractItemModel的子类会以层次结构的形式来表示数据,结构中包含了数据项表。我们按这种约定来访问model中的数据项,但这个约定不会对如何显示这些数据有任何限制。数据转载 2008-11-15 19:54:00 · 1233 阅读 · 0 评论 -
用QT 做个HTML的Label
HTML的Label现在好象很常见,但是这个东西在MFC下面的实现却不是非常简单的事情。MFC就不说了,标题是用QT,那我们就看看QT下面怎么做。由于Qt的Event模型,所以我们做很多事情都比较简单。我们要做的,就是继承一下QLabel,自定一下event的处理就可以了HTMLLabel.h[code]class QHTMLLabel : public QLabel{Q_OBJECT转载 2008-11-15 19:51:00 · 3137 阅读 · 0 评论 -
用QT创建新风格Howto
本文介绍了如何使用qt提供的接口来设计自己的GUI风格(look and feel),并通过一个具体的例子(使QSpinBox垂直显示)来详细说明过程。运行环境:redhat 9.0,qt-x11-free-3.2.*1.Qt的风格a) Qt简介 Qt是一个跨平台的C++图形用户界面应用程序开发库,使用Qt可以开发出高质量的图形用户接口,它是完全面向对象的、易于扩展且允许真正的组件编程。Q转载 2008-11-11 22:37:00 · 1279 阅读 · 0 评论 -
Qt图形用户界面编程技术入门
本文向读者介绍利用Qt开发图形用户界面的应用程序的入门知识。这里,我们首先介绍了如何搭建Qt的开发环境,之后通过一些简单的示例程序来循序渐进地介绍Qt的“信号和槽”以及布局等基本概念。我们希望以此来帮助读者尽快地对Qt图形用户界面应用程序开发有一个初步的认识,并为进一步学习打下一个良好的基础。 一、什么是Qt Qt 是一个用于桌面系统和嵌入式开发的跨平台应用程序框架。它包括一个直观的转载 2008-11-11 22:39:00 · 3413 阅读 · 0 评论 -
关于在windows下部署发布QT程序的总结
以下包括了部分网上收集的,以及qt帮助里的内容(Deploying an Application on Qt/Windows)首先,打开windows控制台,然后,找到vs安装目录下的bin里,执行 vcvars32.bat 这个脚本。执行完之后,vs需要的所有环境变量就已经设置好了。然后,做下面的操作:我的环境是QT 4.3.3 + mingw32-make部署发布QT程序有两种转载 2008-11-11 22:59:00 · 974 阅读 · 0 评论 -
MVC Architecture with QT4
很多QT4的初学者都对这个框架有些陌生,不知道怎么使用信号和插槽,不知道自己的逻辑放在什么类里面,不知道怎么关联自己的类和GUI交互。这里有篇文章,讲到如何理解MVC结构,从而真正掌握QT4的基本理念和设计思维。One of the major new features of Qt4 was said to be the model-view-controller enviro转载 2008-11-15 19:20:00 · 1155 阅读 · 0 评论 -
Qt 的 TreeModel
Qt 的确是一个好东西,开发起来非常方便,但是方便也带来很多问题,这些问题就不多说了,用到的人自然会有体会。这几天在研究Qt的MVC,List和Table类型的都很简单,没有什么难度,但是它的TreeModel实在是让我晕了好几天。一般用TreeModel都是用自己的类,于是,按着文档上说明的,关于继承QAbstractItemModel的时候,必须实现如下几个函数:index(), pa转载 2008-11-15 19:52:00 · 2201 阅读 · 0 评论 -
Qt Model/View 学习笔记 (四)
创建新的Models介绍model/view组件之间功能的分离,允许创建model利用现成的views。这也可以使用标准的功能 图形用户接口组件像QListView,QTableView和QTreeView来显示来自各种数据源的数据为。QAbstractListModel类提供了非常灵活的接口,允许数据源以层次结构的形式来管理信息,也允许以某种方式对数据进行插入、删除、修改和存储。它也提供了对拖拽转载 2008-11-15 19:55:00 · 969 阅读 · 0 评论 -
Qt Model/View 学习笔记 (五)
View 类概念在model/view架构中,view从model中获得数据项然后显示给用户。数据显示的方式不必与model提供的表示方式相同,可以与底层存储数据项的数据结构完全不同。内容与显式的分离是通过由QAbstractItemModel提供的标准模型接口,由QAsbstractItemview提供的标准视图接口共同实现的。普遍使用model index来表示数据项。view负责管理从m转载 2008-11-15 19:56:00 · 1064 阅读 · 0 评论 -
Qt Model/View 学习笔记 (六)
在views中选择数据项概念用于新的view类中的选择模型比Qt3中的模型有了很大的改进。它为基于model/view架构的选择提供了更为全面的描述。尽管对提供了的views来说,负责操纵选择的标准类已经足以应付,但是你也可以创建特定的选择模型来满足你特殊的需求。关于在view被选择的数据项的信息保持在QItemSelectionModel类的实例中。它也为每个独立的model中的数据项维转载 2008-11-15 19:56:00 · 924 阅读 · 0 评论 -
QT的Graphics View柜架(1/3)
Graphics View提供了一个界面,它既可以管理大数量的定制2D graphical items,又可与它们交互,有一个view widget可以把这些项绘制出来,并支持旋转与缩放。这个柜架也包含一个事件传播结构,对于在scene中的这些items,它具有双精度的交互能力。Items能处理键盘事件,鼠标的按,移动、释放、双击事件,也可以跟踪鼠标移动。Graphics View使用BSP树来提转载 2008-11-15 20:00:00 · 1494 阅读 · 0 评论 -
QT的Graphics View柜架(2/3)
Graphics View 坐标系统Graphics View基于笛卡尔坐标系。item在场景中的位置与几何形状通过x,y坐标表示。当使用未经变形的视图来观察场景时,场景中的一个单位等于屏幕上的一个像素。在Graphics View中有三个有效的坐标系统:Item坐标系,场景坐标系,视图坐标系。为了简化你的实现,Graphics View提供了方便的函数,允许三个坐标系之间相互映射。当渲染时,Gr转载 2008-11-15 20:00:00 · 1112 阅读 · 0 评论 -
Qt 中的多线程(二)
可重入与线程安全在Qt文档中,术语“可重入”与“线程安全”被用来说明一个函数如何用于多线程程序。假如一个类的任何函数在此类的多个不同的实例上,可以被多个线程同时调用,那么这个类被称为是“可重入”的。假如不同的线程作用在同一个实例上仍可以正常工作,那么称之为“线程安全”的。大多数c++类天生就是可重入的,因为它们典型地仅仅引用成员数据。任何线程可以在类的一个实例上调用这样的成员函数,只要没有别的转载 2008-11-15 20:04:00 · 1150 阅读 · 0 评论 -
QT网络模块
转自:http://wendy924.blogchina.com/1419192.html 网络模块这个模块是 Qt 企业版 的一部分。简介使用 QUrlOperator 和 QNetworkOperation 实现网络协议的多种操作实现自定义网络协议错误处理简介使用网络模块提供的类,可以更容易、便捷地构建网络应用程序。为了便于理解,我们将Qt网络模块转载 2008-11-21 09:29:00 · 2516 阅读 · 1 评论