Qt学习之旅
lobbiy
加油加油加油
展开
-
Qt学习:三维绘图之OpenGL和Qt的结合
OpenGL是绘制三维图形的标准API。Qt应用程序可以使用QtOpenGL模块绘制三维图形,该模块依赖于系统的OpenGL库。Qt OpenGL模块提供QGLWidget类,可以通过对它子类化,并使用OpenGL命令开发出自己的窗口部件。对许多三维应用程序来说,这就足够了。 这节假设大家都已经学过OpenGL,这样我们就无后顾之忧了。 在Qt中绘制OpenGL原创 2013-05-13 19:21:28 · 17520 阅读 · 11 评论 -
QT学习:Qt中应用程序图标的修改
以下是在Qt assistant中找到的修改应用程序图标的方法,留着以后用。Setting the Application Icon on WindowsFirst, create an ICO format bitmap file that contains the icon image. This can be done with e.g. Microsoft Visual C++原创 2013-05-09 16:48:02 · 991 阅读 · 0 评论 -
Qt学习:QPainter之填充
这节先介绍Qt的内置填充模式,我们用一个三次贝塞尔曲线的例子来说明。然后引入目前大量使用的三种渐变填充模式。 填充模式使用setBrush()函数实现的。 下图是三次贝塞尔曲线的内置填充模式 : 构造函数中用设置了图片作为整个窗口部件的背景:(当然也可以用指定颜色填充) setAutoFillBackgroun原创 2013-05-12 15:35:33 · 7273 阅读 · 0 评论 -
Qt学习:Qt中QDockWidget的简单用法
下面是这个例子的效果: 当然还可以控制两个停靠窗口停在四个停靠区的哪个区,这里不贴效果图了。 代码如下://dockwindow.h#ifndef DOCKWINDOW_H#define DOCKWINDOW_H#include class QMenu;class QToolBar;class QActio原创 2013-05-09 17:14:09 · 5476 阅读 · 0 评论 -
Qt学习:Win7下Qt环境配置
一、需要准备的软件: 1、qt-creator-windows-opensource-2.6.1.exe 2、qt-win-opensource-4.8.4-mingw.exe 3、MinGW(从从QCreator2.5开始,不在捆绑mingw了,需要用户自己下载) 二、因为是绿色版,不用安装,先将MinGW保存到D盘目录下,注意路径中原创 2013-05-09 17:03:57 · 2258 阅读 · 0 评论 -
Qt学习:Qt中QGridLayout按比例设定布局
这里用到两个函数:void QGridLayout::setColumnStretch ( int column, int stretch )void QGridLayout::setRowStretch ( int row, int stretch ) column表示列码,stretch表示伸缩因子。PreferenceDialog::PreferenceDia原创 2013-05-09 17:09:05 · 9009 阅读 · 0 评论 -
Qt学习:项视图类之自定义委托
我们用好几节内容介绍了Qt的MVC架构中的模型和视图类,至今,我们依然没有提到我们提到的代理的功能,下面我们再回顾一下Qt的项视图类架构。 我们知道,在经典的 MVC 模型中,view用于向用户展示 model 的数据。但是,Qt提供的不是 MVC 三层架构,而是一个 model/view 设计。这种设计并没有包含一个完整而独立的组件用于管理用户的交互。一般来说,view仅仅是用作对原创 2013-05-24 13:11:50 · 3138 阅读 · 0 评论 -
Qt学习:项视图类之自定义模型
我们先前介绍了三种Qt的预定义模型,分别是QStringListModel,QDirModel(QFileSystemModel), QSortFilterProxyMoel,这些预定义模型为数据的处理和查看提供了很好的方法。但是,有些数据源不能有效的和预定义模型一起工作,因为我们大批量数据的存储是各种各样的,这时候用我们上边提到的三种预定义模型可能能解决问题,但却同时带来了效率和处理上的不便,因原创 2013-05-24 11:49:13 · 2800 阅读 · 0 评论 -
Qt学习:项视图类之QDirModel和QTreeView
QDirModel类封装了计算机的文件系统并且可以显示(或者隐藏)不同的文件属性。可以为这个模型应用过滤器,这样就可以根据自己的需要显示不同类型的文件系统条目,并且用不同的方式对这些条目进行排序。 我们先从构造函数开始:DirectoryViewer::DirectoryViewer(QWidget *parent) : QDialog(原创 2013-05-24 11:41:29 · 8123 阅读 · 1 评论 -
Qt学习:项视图类之QSortFilterProxyModel和QListWidget
QSortFilterProxyModel是一个方便我们对模型操作(排序)的类,它是这样工作的:QSortFilterProxyModel封装一个已经存在的模型,我们可以把这个模型叫做源模型,即源模型为QSortFilterProxyModel提供数据,QSortFilterProxyModel利用视图类来观察源模型的数据并提供对源模型的数据的操作。其实就如这个类的名字说的那样,它只是一个“代理”原创 2013-05-24 11:44:48 · 2715 阅读 · 0 评论 -
Qt学习:QPainter之反走样
反走样是图形学中的重要概念,用以防止“锯齿”现象的出现。很多系统的绘图API里面都会内置了反走样的算法,不过默认一般都是关闭的,Qt也不例外。这里依然先给出效果图先。 其中左图是第一条直线是未启用反走样的效果,第二条直线启用了反走样;右上边一幅图像时启用了反走样的效果,右下边的图关闭了反走样。可以看出,两者的区别还是相当大的。 下面对一些函数及其原创 2013-05-09 17:20:56 · 4942 阅读 · 0 评论 -
Qt学习:QPainter之渐变填充
前面说了有关反走样的相关知识,下面来说一下渐变。渐变是绘图中很常见的一种功能,它是利用颜色插值使得两个或更多颜色之间能够平滑过渡,简单来说就是可以把几种颜色混合在一起,让它们能够自然地过渡,而不是一下子变成另一种颜色。它们常被用来创建二维图形的三维效果。渐变的算法比较复杂,写得不好的话效率会很低,好在很多绘图系统都内置了渐变的功能,Qt也不例外。渐变一般是用在填充里面的,所以,渐变的设置就是在QB原创 2013-05-12 15:44:09 · 5242 阅读 · 2 评论 -
Qt学习:项视图类之QStringListModel和QListView
QListView是不显示表头和表框的,如果要显示,可以使用QTreeView来 view的显示属性分为列表list显示和icon图标显示,使用 QListView::setViewMode()来设置,默认为list型的 QListView::setModel ()用来设置view所关联的model 获取view中当前的位置,QListView::cur原创 2013-05-20 18:19:39 · 6639 阅读 · 0 评论 -
Qt学习:项视图类之QTableWidget
控件设置选项 在TableWidget控件的properties选项中,一般常对以下选项进行设置。 name:该控件对应源代码中的名称; font:设置表格内部的字体; columnCount:保存列的数目; rowCount:保存行的原创 2013-05-20 18:14:02 · 5278 阅读 · 2 评论 -
Qt学习:项视图类
这节我们介绍Qt的model-view,我们主要依据的是 C++ GUI Programming with Qt4, 2nd Edition这本书。在介绍Qt的model-view之前,我们先重点讨论一下MVC框架。 我们的系统有很多数据显示的需求,比如从数据库中把数据取出,然后以自己的方式显示在我们自己的应用程序的界面中。 在早期的Qt版本中,要实现这个功原创 2013-05-18 14:48:42 · 1605 阅读 · 0 评论 -
Qt学习:项视图类之QListWidget
类QListWidget在其内部定义了一个具有列表结构的模型,并以列表形式显示其中的数据项。列表中的每个数据项被表示为类QListWidgetItem的一个对象。在列表视图中所要显示的数据被存放在每个数据项的角色DisplayRole对应的数据子项中。这个数据子项的类型为QVariant,其中可以存放类型为QString的字符串,也可以存放类型为int或者double的数值。我们可以调用QList原创 2013-05-18 14:56:29 · 7891 阅读 · 3 评论 -
Qt 常用类和c++强制类型转换深层
来自:http://hi.baidu.com/lebesgue06/item/c0c42bb81771fdaeeaba93a41、QString --> stringQString.toStdString();2、string --> QStringQString::fromStdString(string)3、QString --->int,double,char *转载 2013-08-16 21:02:03 · 1610 阅读 · 0 评论