零. 参考文献
一. 什么是QStyle?
Qt是一个跨平台的类库,相同的界面组件在不同的操作系统上显示效果是不一样的。
QStyle是封装了GUI界面组件外观的抽象类,Qt定义了QStyle类的一些子类,应用于不同的操作系统,如QWindowsStyle、QMacStyle等。这些样式是Qt CUI模块自带的,在不停的平台上编译运行的程序具有缺省的样式,QApplication::style()可以返回应用程序缺省的样式。
二. QStyleFactory类
QStyleFactory
类管理着Qt的内置样式,该类有两个静态函数:
QStringList QStyleFactory::keys()
QStyle * QStyleFactory::create(const QString &key)
keys()
:返回一个字符串列表,是所在平台支持的QStyle的名称列表;
create()
:根据样式名称字符串创建一个QStyle对象。
三. QApplication类
QApplication
类也有两个静态函数用于操作,样式如下:
QStyle *QApplication::style()
void QApplication::setStyle(QStyle *style)
style()
:返回应用程序当前的样式,任何一个GUI应用程序,在创建时就有一个缺省的样式,通过下面的语句就可以获取缺省样式的名称
QApplication::style()->metaObject()->className()
setStyle()
:为应用程序设置一个样式,设置样式后,界面元素都具有这个样式所定义的外观