Qt 常用类 (7)QPixmap/8--QIcon
来源:互联网 发布:美工需要会什么软件 编辑:程序博客网 时间:2024/05/16 09:01
http://blog.csdn.net/hmsiwtv/article/details/7561565
QIcon 类代表图标,实现在 QtGui 共享库中。QIcon 对象可以认为是一系列图像的组合,每个图像代表窗口在某种状态下应该1显示的图标。
构造
QIcon 类支持以下构造函数:
- QIcon(); // 构造一个空图像构成的图标
- QIcon(const QPixmap &pixmap); // 从 Pixmap 对象构造函数
- QIcon(const QString &filename); // 从图像文件构造图标
当从 QPixmap 对象构造图标时,系统会自动产生窗口不同状态下对应的图像,比如窗口在禁用状态下其图标为灰色。从文件构造图标时,文件并不是立刻加载,而是当图标要显示时才加载。
添加图像
下面的成员函数可以从图像文件中向 QIcon 对象添加图像:
- void addFile(const QString &filename, const QSize &size = QSize(), Mode mode = Normal, State state = Off);
其中各个参数的含义解释如下。
1)filename:文件名。
2)size:指定大小。
3)mode:指定使用模式,即窗口在何种状态下使用这个图像。
4)state:指定使用状态。
Mode 为 QIcon 类的成员类型,有以下取值。
1)QIcon::Normal:窗口为使能状态,但未激活。
2)QIcon::Disabled:窗口为禁用状态。
3)QIcon::Active:窗口为激活状态。
4)QIcon::Selected:窗口被选中。
当窗口的状态切换时,默认的图标绘制函数会自动根据窗口的状态重绘图标。如果窗口还有所谓的开关状态(比如一个按钮可以有按下和弹起两个状态),则还可以根据 state 参数来选择不同的图像。state 参数为 State 类型,这也是一个 QIcon 类的成员类型,它有以下取值。
QIcon::Off:窗口在关状态。
QIcon::On:窗口在开状态。
另外一个成员函数可以直接将 QPixmap 对象添加到 QIcon 对象中:
- void addPixmap(const QPixmap &pixmap, Mode mode = Normal, State state = Off);
这里的 pixmap 参数是要添加的 QPixmap 对象,mode 参数和 state 参数的含义与 addFile 函数中相同。
获取图像
下面的成员函数可以获取 QIcon 对象中的图像:
- QPixmap pixmap(const QSize &size, Mode mode = Normal, State state = Off) const;
其中参数 size 是指定的大小,参数 mode 和 state 则是使用模式和状态。这个函数还有以下重载版本:
- QPixmap pixmap(int w, int h, Mode mode = Normal, State state = Off) const;
- QPixmap pixmap(int extent, Mode mode = Normal, State state = Off) const;
它们分别等价于以下的函数调用:
- pixmap(QSize(w, h), mode, state);
- pixmap(QSize(extent,, extent), mode, state);
注意返回的图像大小可能比指定的小,但不会比指定的大。
判断
以下成员函数可以判断 QIcon 对象是否为空图像构成的图标:
- bool isNull() const; // 判断是否为空图像构成的图标
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
QPixmap 类代表图像,实现在 QtGui 共享库中。
构造
以下构造函数生成的 QPixmap 对象为空图像:
- QPixmap(); // 构造一个大小为 0 的空图像
以下构造函数生成大小的 QPixmap 对象,但图像数据未初始化:
- QPixmap(const QSize &size); // 构造大小为 size 的图像,图像数据未初始化
- QPixmap(int width, int height); // 等价于 QPixmap(QSize(width, height));
以下构造函数能够从指定的文件中加载图像并生成 QPixmap 对象:
- QPixmap(const QString &filename, const char *format = 0, Qt::ImageConversionFlags flags = Qt::AutoColor);
其各个参数的含义解释如下。
1) filename: 文件名。
2) format: 字符串,表示图像文件的格式,如果为 0,将进行自动识别。
3) flags:表示颜色的转换模式。
如果图像文件加载失败则产生空图像,这里 flags 参数有以下取值。
1) Qt::AutoColor:由系统自动决定。
2) Qt::ColorOnly:彩色模式。
3) Qt::MonoOnly:单色模式。
图像参数
以下成员函数可以获得 QPixmap 对象所表示的图像的相关信息:
- int depth() const; // 颜色深度,既每像素所占的比特数
- int width() const; // 图像宽度,单位是像素
- int height() const; // 图像高度,单位是像素
- QSize size() cosnt; // 图像的大小,即 QSize(width(), height());
- QRect rect() const; // 图像的矩形区域,即 QRect(QPoint(0,0),size());
加载和保存图像
用下面的成员函数可以从文件加载图像:
- bool load(const QString &filename, const char *fornat = 0, Qt::ImageCoversionFlags flags = Qt::AutoColor);
- bool save(const QString &filename, const char *format = 0, int quality = -1) const;
其各个参数及返回值的含义解释如下。
1) filename:文件名。
2) format:字符串,表示图像文件的格式,如果为 0,将根据文件名的后缀自动确定文件格式。
3) quality:对于有损压缩的文件格式来说,它表示图像保存的质量,质量越低压缩率越大。取值范围为 0~100,-1 表示采用默认值。
4) 返回值:true 表示保存成功,false 表示保存失败。
判断
以下成员函数可以判断 QPixmap 对象是否为空图像:
- bool isNull() const; // 判断是否为空图像
- Qt 常用类 (7)QPixmap/8--QIcon
- Qt常用类QIcon
- Qt 常用类 (8)—— QIcon
- Qt 常用类 (8)—— QIcon
- Qt实用技巧:QIcon缩放(QPixmap的手动放大和QIcon自动缩小)
- Qt 常用类 (9)—— QIcon
- Qt常用类QPixmap
- Qt 常用类 (7)—— QPixmap
- Qt 常用类 (7)—— QPixmap
- Qt 常用类 (7)—— QPixmap
- Qt 常用类 —— QPixmap
- Qt QPainter QpinterPath QPixmap常用语句
- Qt QIcon图标不显示
- Qt QIcon图标不显示
- Qt图片绘图类QPixmap/QImage/QPicture
- Qt中图像类QImage,QPixmap
- QIcon
- QT QPixmap、QBitmap、QImage
- LightOJ 1087 - Diablo[线段树二分前缀和]
- 面向对象基础
- Java反射机制
- 2014牡丹江网络预选赛I题(字符串hash+简单DP)zoj3817
- IT职业之路
- Qt 常用类 (7)QPixmap/8--QIcon
- 乐惠通手机十元包月全国任打--项目详解
- C#.NET验证码智能识别学习笔记---06 解决java jre问题:JTessBoxEditor.jar打开的时报找不到或无法加载主类 com.sun.tools.javac.Main错误
- Beautiful numbers(记搜经典)
- hdu 4991 Ordered Subsequence(Bestcoder Round #8 1003)
- LA 3942 Remember the Word
- Qt 常用类 (9)—— QWidget
- Erp
- fedora18-64 bit安装STM32 GCC编译环境(1)