Должен ли я получить стандартные значки из QFileIconProvider или QStyle?

Оба класса предлагают стандартные значки для папок и файлов. Какой я должен использовать? Они гарантированно будут одинаковыми?

3

Решение

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;
//...
4

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]