【发布时间】:2017-11-04 02:31:02
【问题描述】:
这两个类都为文件夹和文件提供标准图标。我应该使用哪一个?是否保证相同?
【问题讨论】:
这两个类都为文件夹和文件提供标准图标。我应该使用哪一个?是否保证相同?
【问题讨论】:
Qt 并不严格保证... 然而,在当前的实现中,QFileIconProvider 是使用该样式的简写。这不太可能很快改变,这样做非常合乎逻辑......因此,我停止吹毛求疵:是的,这是有保证的。
Qt 是开源的,因此请查看源代码:https://github.com/qt/qtbase/blob/dev/src/widgets/itemviews/qfileiconprovider.cpp。你有
QIcon QFileIconProvider::icon(IconType type) const
{
Q_D(const QFileIconProvider);
switch (type) {
case Computer:
return d->getIcon(QStyle::SP_ComputerIcon);
//....
QIcon QFileIconProviderPrivate::getIcon(QStyle::StandardPixmap name) const
{
switch (name) {
case QStyle::SP_ComputerIcon:
if (computer.isNull())
computer = QApplication::style()->standardIcon(name);
return computer;
//...
【讨论】: