QIcon Class

QIconクラスは、様々なモードや状態のスケーラブルなアイコンを提供します。詳細...

ヘッダ #include <QIcon>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui

パブリック・タイプ

enum Mode { Normal, Disabled, Active, Selected }
enum State { Off, On }
(since 6.7) enum class ThemeIcon { AddressBookNew, ApplicationExit, AppointmentNew, CallStart, CallStop, …, WeatherStorm }

パブリック関数

QIcon()
QIcon(QIconEngine *engine)
QIcon(const QPixmap &pixmap)
QIcon(const QString &fileName)
QIcon(const QIcon &other)
QIcon(QIcon &&other)
~QIcon()
QSize actualSize(const QSize &size, QIcon::Mode mode = Normal, QIcon::State state = Off) const
void addFile(const QString &fileName, const QSize &size = QSize(), QIcon::Mode mode = Normal, QIcon::State state = Off)
void addPixmap(const QPixmap &pixmap, QIcon::Mode mode = Normal, QIcon::State state = Off)
QList<QSize> availableSizes(QIcon::Mode mode = Normal, QIcon::State state = Off) const
qint64 cacheKey() const
bool isMask() const
bool isNull() const
QString name() const
void paint(QPainter *painter, const QRect &rect, Qt::Alignment alignment = Qt::AlignCenter, QIcon::Mode mode = Normal, QIcon::State state = Off) const
void paint(QPainter *painter, int x, int y, int w, int h, Qt::Alignment alignment = Qt::AlignCenter, QIcon::Mode mode = Normal, QIcon::State state = Off) const
QPixmap pixmap(const QSize &size, QIcon::Mode mode = Normal, QIcon::State state = Off) const
QPixmap pixmap(int extent, QIcon::Mode mode = Normal, QIcon::State state = Off) const
(since 6.0) QPixmap pixmap(const QSize &size, qreal devicePixelRatio, QIcon::Mode mode = Normal, QIcon::State state = Off) const
QPixmap pixmap(int w, int h, QIcon::Mode mode = Normal, QIcon::State state = Off) const
void setIsMask(bool isMask)
void swap(QIcon &other)
QVariant operator QVariant() const
QIcon &operator=(QIcon &&other)
QIcon &operator=(const QIcon &other)

静的パブリック・メンバー

QStringList fallbackSearchPaths()
QString fallbackThemeName()
QIcon fromTheme(const QString &name)
(since 6.7) QIcon fromTheme(QIcon::ThemeIcon icon)
(since 6.7) QIcon fromTheme(QIcon::ThemeIcon icon, const QIcon &fallback)
QIcon fromTheme(const QString &name, const QIcon &fallback)
bool hasThemeIcon(const QString &name)
(since 6.7) bool hasThemeIcon(QIcon::ThemeIcon icon)
void setFallbackSearchPaths(const QStringList &paths)
void setFallbackThemeName(const QString &name)
void setThemeName(const QString &name)
void setThemeSearchPaths(const QStringList &paths)
QString themeName()
QStringList themeSearchPaths()
QDataStream &operator<<(QDataStream &stream, const QIcon &icon)
QDataStream &operator>>(QDataStream &stream, QIcon &icon)

詳細説明

QIcon は、与えられた pixmap のセットから、小さい pixmap、大きい pixmap、アクティブな pixmap、無効な pixmap を生成することができます。このような pixmap は、Qt UI コンポーネントによって、特定のアクションを表すアイコンを表示するために使用されます。

画像ファイルからアイコンを作成する

QIconを作成する最も簡単な方法は、1つまたは複数の画像ファイルやリソースからQIconを作成することです。例えば

QToolButton *button = new QToolButton;
button->setIcon(QIcon("open.png"));

QIconは異なる状態の画像を複数保存することができ、Qtはアクションの現在の状態に最も近い画像を選択します。

QIcon openIcon("open.png");
openIcon.addFile("open-disabled.png", QIcon::Disabled);

Qtは、必要なときに必要なアイコンのスタイルとサイズを生成します。例えば、QIcon::Disabled の状態のためのpixmapは、提供されたpixmapの1つをグレーアウトすることで生成されます。

アイコンを消去するには、単に null アイコンをその場所に設定します:

button->setIcon(QIcon());

サポートされているファイル形式の完全なリストを取得するには、QImageReader::supportedImageFormats() およびQImageWriter::supportedImageFormats() 関数を使用します。

テーマやアイコンライブラリからアイコンを作成する

アイコンを作成する最も便利な方法は、fromTheme() ファクトリー関数を使用することです。Qt はFreedesktop Icon Theme Specification をサポートしているプラットフォーム上で、ネイティブのアイコンライブラリへのアクセスを実装しています。Qt 6.7 以降、Qt は macOS、iOS、Windows 10 と 11 でもネイティブアイコンライブラリへのアクセスを提供しています。Android では、MaterialIcons-Regularフォントがシステムで利用可能であるか、アプリケーションにリソースとしてバンドルされている限り、Qt は Material デザインシステムのアイコンにアクセスできます(:/qt-project.org/icons/MaterialIcons-Regular.ttf )。

QIcon undoicon = QIcon::fromTheme(QIcon::ThemeIcon::EditUndo);

アプリケーションは同じテーマ指定を使って、独自のアイコンライブラリを提供することができます。テーマの説明と、それに対応する画像ファイルのディレクトリ構造の例については、以下を参照してください。アプリケーションが提供するテーマのアイコンは、ネイティブのアイコンライブラリよりも優先されます。

アイコンエンジン

内部的には、QIconはアイコン画像の処理とレンダリングのためにicon engine バックエンドをインスタンス化します。アイコンエンジンの種類は、QIconオブジェクトに追加された最初のファイル、ピクセルマップ、テーマによって決まります。追加のファイルやピクセルマップは、同じエンジンで処理されます。

アイコンエンジンは、アイコンの処理方法とレンダリング方法が異なります。デフォルトの pixmap ベースのエンジンは固定画像のみを扱いますが、QtSvg モジュールはアイコンエンジンを提供し、提供されたベクターグラフィックファイルを要求されたサイズで再レンダリングし、より良い品質を実現します。テーマアイコンエンジンは通常、ネイティブプラットフォームアイコンライブラリからの画像のみを提供し、追加されたファイルやpixmapは無視されます。

さらに、カスタムアイコンエンジンを提供することも可能です。これにより、アプリケーションは生成されるアイコンのあらゆる面をカスタマイズできる。QIconEnginePlugin では、ファイルの接尾辞ごとに異なるアイコンエンジンを登録することができるため、Qt に含まれるアイコンエンジンに加えて、サードパーティが追加のアイコンエンジンを提供することも可能です。

QIcon を使用するクラスの作成

小さな pixmap を設定するオプションがあるウィジェットを自作する場合、その pixmap に QIcon を設定できるようにすることを検討してください。Qt クラスQToolButton はそのようなウィジェットの例です。

QIcon を設定するメソッドを提供し、ウィジェットの現在の状態に基づいて適切なパラメータを選択し、paint で QIcon をペイントします。例えば

void MyWidget::drawIcon(QPainter *painter, const QRect &rect)
{
    icon.paint(painter, rect, Qt::AlignCenter, isEnabled() ? QIcon::Normal
                                                           : QIcon::Disabled,
                                               isChecked() ? QIcon::On
                                                           : QIcon::Off);
}

pixmap(QSize, Mode, State)を使ってpixmapを取得し、addFile()またはaddPixmap()を使って、この指定されたサイズ、モード、状態のpixmapが追加されていない場合、QIconはその場でpixmapを生成します。このピクセルマップ生成は、QIconEngine で行われます。デフォルトのエンジンは、必要に応じてピクセルマップを縮小しますが、拡大することはなく、現在のスタイルを使用して無効な外観を計算します。

また、Active モードを利用することもできます。マウスがウィジェットの上にあるとき(QWidget::enterEvent() を参照)、マウスが押されている間(機能を有効にするリリースを保留している間)、または現在選択されているアイテムのときに、ウィジェットをActive にすることができます。ウィジェットの切り替えが可能な場合、"On "モードは異なるアイコンを描画するために使用されるかもしれません。

QIcon

注意: QIconは、アイコンを作成する前にQGuiApplication

高DPIアイコン

ネイティブ・アイコン・ライブラリから提供されるアイコンは、通常ベクター・グラフィックスに基づいており、自動的に適切な解像度でレンダリングされます。

独自の画像ファイルをaddFile() 経由で提供する場合、QIcon は Qt の"@nx" high DPI syntax を使用します。 これは、独自のディレクトリ構造を持ち、Freedesktop Icon Theme Specification に従わない場合に便利です。

アプリケーションのテーマを提供する場合、Icon Theme Specification に従って、異なる解像度に使用するファイルを指定する必要があります。QIcon に高 DPI バージョンの画像を使わせるには、index.theme ファイルにエントリを追加してください:

[Icon Theme]
Name=Test
Comment=Test Theme

Directories=32x32/actions,32x32@2/actions

[32x32/actions]
Size=32
Context=Actions
Type=Fixed

# High DPI version of the entry above.
[32x32@2/actions]
Size=32
Scale=2
Type=Fixed

アイコンテーマのディレクトリはこのようになります:

├── 32x32
│   └── actions
│       └── appointment-new.png
├── 32x32@2
│   └── actions
│       └── appointment-new.png
└── index.theme

メンバータイプ ドキュメント

enum QIcon::Mode

この列挙型は、pixmapが使用されるモードを記述する。現在定義されているモードは以下の通りです:

定数説明
QIcon::Normal0ユーザがアイコンとインタラクトしていないが、アイコンで表現される機能が利用可能な場合にpixmapを表示する。
QIcon::Disabled1アイコンの機能が利用できない場合に、pixmapを表示する。
QIcon::Active2アイコンで表現される機能が利用可能で、ユーザがアイコンの上にマウスを移動させたり、アイコンをクリックするなど、アイコンにインタラクションしているときにpixmapを表示する。
QIcon::Selected3アイコンで表されるアイテムが選択されたときにpixmapを表示する。

enum QIcon::State

この列挙型は、pixmapが使用される状態を記述する。状態は

定数説明
QIcon::Off1ウィジェットが "off "状態の時にpixmapを表示する。
QIcon::On0ウィジェットが "on "状態の時にpixmapを表示する

[since 6.7] enum class QIcon::ThemeIcon

この列挙型は、ほとんどのアイコンテーマの実装によって提供されるアイコンへのアクセスを提供します。

定数説明
QIcon::ThemeIcon::AddressBookNew0新しいアドレス帳を作成するためのアイコンです。
QIcon::ThemeIcon::ApplicationExit1アプリケーションを終了するためのアイコン
QIcon::ThemeIcon::AppointmentNew2新しいアポイントメントを作成するアイコンです。
QIcon::ThemeIcon::CallStart3通話を開始または受け入れるためのアイコン。
QIcon::ThemeIcon::CallStop4現在の通話を停止するためのアイコン。
QIcon::ThemeIcon::ContactNew5新しい連絡先を作成するためのアイコン。
QIcon::ThemeIcon::DocumentNew6新規ドキュメントを作成するアクションのアイコン。
QIcon::ThemeIcon::DocumentOpen7ドキュメントを開くアクションのアイコン。
QIcon::ThemeIcon::DocumentOpenRecent8最近開いた文書を開くアクションのアイコン。
QIcon::ThemeIcon::DocumentPageSetup9ページ設定アクションのアイコン。
QIcon::ThemeIcon::DocumentPrint10印刷アクションのアイコン。
QIcon::ThemeIcon::DocumentPrintPreview11印刷プレビューアクションのアイコン。
QIcon::ThemeIcon::DocumentProperties12文書のプロパティを表示するアクションのアイコン。
QIcon::ThemeIcon::DocumentRevert13文書の前のバージョンに戻すアクションのアイコン。
QIcon::ThemeIcon::DocumentSave14保存アクションのアイコン。
QIcon::ThemeIcon::DocumentSaveAs15名前を付けて保存アクションのアイコン。
QIcon::ThemeIcon::DocumentSend16送信アクションのアイコン。
QIcon::ThemeIcon::EditClear17クリアアクションアイコン
QIcon::ThemeIcon::EditCopy18コピーアクションアイコン
QIcon::ThemeIcon::EditCut19切り取りアクションのアイコン。
QIcon::ThemeIcon::EditDelete20削除アクションのアイコン。
QIcon::ThemeIcon::EditFind21検索アクションのアイコン。
QIcon::ThemeIcon::EditPaste22ペーストアクションアイコン
QIcon::ThemeIcon::EditRedo23やり直しアクションのアイコン。
QIcon::ThemeIcon::EditSelectAll24すべて選択アクションのアイコン。
QIcon::ThemeIcon::EditUndo25元に戻すアクションのアイコン。
QIcon::ThemeIcon::FolderNew26新規フォルダを作成するアイコン。
QIcon::ThemeIcon::FormatIndentLess27インデントを減らすアクションのアイコン。
QIcon::ThemeIcon::FormatIndentMore28インデントを増やす書式設定アクションのアイコン。
QIcon::ThemeIcon::FormatJustifyCenter29中央揃え書式設定アクションのアイコン。
QIcon::ThemeIcon::FormatJustifyFill30左揃え書式設定アイコン
QIcon::ThemeIcon::FormatJustifyLeft31左揃え書式設定アクションのアイコン。
QIcon::ThemeIcon::FormatJustifyRight32右揃えアクションのアイコン
QIcon::ThemeIcon::FormatTextDirectionLtr33左から右へのテキスト書式設定アクションのアイコン。
QIcon::ThemeIcon::FormatTextDirectionRtl34右から左へのテキスト書式設定アクションのアイコン。
QIcon::ThemeIcon::FormatTextBold35太字テキスト書式設定アクションのアイコン。
QIcon::ThemeIcon::FormatTextItalic36イタリック体テキスト書式設定アクションのアイコン。
QIcon::ThemeIcon::FormatTextUnderline37下線テキスト書式設定アクションのアイコン。
QIcon::ThemeIcon::FormatTextStrikethrough38取り消し線付きテキスト書式設定アクションのアイコン。
QIcon::ThemeIcon::GoDown39リストの下に移動するアクションのアイコン。
QIcon::ThemeIcon::GoHome40ホームに移動するアクションのアイコン。
QIcon::ThemeIcon::GoNext41リストの次の項目に移動するアクションのアイコン。
QIcon::ThemeIcon::GoPrevious42リストの前の項目に移動するアクションのアイコン。
QIcon::ThemeIcon::GoUp43リスト内で上に移動するアクションのアイコン。
QIcon::ThemeIcon::HelpAbout44ヘルプメニューの「バージョン情報」項目のアイコン。
QIcon::ThemeIcon::HelpFaq45ヘルプメニューのFAQ項目のアイコン。
QIcon::ThemeIcon::InsertImage46アプリケーションの画像挿入アクションのアイコン。
QIcon::ThemeIcon::InsertLink47アプリケーションのリンク挿入アクションのアイコン。
QIcon::ThemeIcon::InsertText48アプリケーションのテキスト挿入アクションのアイコン。
QIcon::ThemeIcon::ListAdd49リストに追加するアクションのアイコン。
QIcon::ThemeIcon::ListRemove50リストから削除アクションのアイコン。
QIcon::ThemeIcon::MailForward51Forwardアクションのアイコン。
QIcon::ThemeIcon::MailMarkImportant52重要としてマークするアクションのアイコン。
QIcon::ThemeIcon::MailMarkRead53既読にするアクションのアイコン。
QIcon::ThemeIcon::MailMarkUnread54未読としてマークするアクションのアイコン。
QIcon::ThemeIcon::MailMessageNew55新規メール作成アクションのアイコン。
QIcon::ThemeIcon::MailReplyAll56全員に返信アクションのアイコン。
QIcon::ThemeIcon::MailReplySender57送信者へ返信アクションのアイコン。
QIcon::ThemeIcon::MailSend58送信アクションのアイコン。
QIcon::ThemeIcon::MediaEject59メディアプレーヤーまたはファイルマネージャの取り出しアクションのアイコン。
QIcon::ThemeIcon::MediaPlaybackPause60メディアプレーヤーの一時停止アクションのアイコン。
QIcon::ThemeIcon::MediaPlaybackStart61メディアプレーヤーの再生開始アクションのアイコン。
QIcon::ThemeIcon::MediaPlaybackStop62メディアプレーヤーの停止アクションのアイコン。
QIcon::ThemeIcon::MediaRecord63メディアアプリケーションの録音操作用アイコン。
QIcon::ThemeIcon::MediaSeekBackward64メディアプレーヤーの後方シーク動作用アイコン。
QIcon::ThemeIcon::MediaSeekForward65メディアプレーヤーの前方シーク動作用アイコン。
QIcon::ThemeIcon::MediaSkipBackward66メディアプレーヤーの後方スキップ動作用アイコン。
QIcon::ThemeIcon::MediaSkipForward67メディアプレーヤーのスキップフォワードアクションのアイコン。
QIcon::ThemeIcon::ObjectRotateLeft68オブジェクトに対して行われる左回転アクションのアイコン。
QIcon::ThemeIcon::ObjectRotateRight69オブジェクトの右回転アクションのアイコン。
QIcon::ThemeIcon::ProcessStop70ブラウザのウェブページ読み込みなど、処理に時間がかかるアクションを持つアプリケーションの停止アクションのアイコン。
QIcon::ThemeIcon::SystemLockScreen71ロック画面アクションのアイコン。
QIcon::ThemeIcon::SystemLogOut72ログアウトアクションのアイコン。
QIcon::ThemeIcon::SystemSearch73検索アクションのアイコン。
QIcon::ThemeIcon::SystemReboot74再起動アクションのアイコン。
QIcon::ThemeIcon::SystemShutdown75シャットダウンアクションのアイコン。
QIcon::ThemeIcon::ToolsCheckSpelling76スペルチェックのアイコン。
QIcon::ThemeIcon::ViewFullscreen77フルスクリーンアクションのアイコン。
QIcon::ThemeIcon::ViewRefresh78更新アクションのアイコン。
QIcon::ThemeIcon::ViewRestore79フルスクリーン表示を終了するためのアイコン。
QIcon::ThemeIcon::WindowClose80クローズウィンドウアクションのアイコン。
QIcon::ThemeIcon::WindowNew81新しいウィンドウを開く
QIcon::ThemeIcon::ZoomFitBest82最適化(Best Fit)アクションのアイコン。
QIcon::ThemeIcon::ZoomIn83ズームインアクションのアイコン。
QIcon::ThemeIcon::ZoomOut84ズームアウトアクションのアイコン。
QIcon::ThemeIcon::AudioCard85音声レンダリングデバイスのアイコン。
QIcon::ThemeIcon::AudioInputMicrophone86マイク音声入力デバイスのアイコン。
QIcon::ThemeIcon::Battery87システムバッテリーのアイコン。
QIcon::ThemeIcon::CameraPhoto88デジタルスチルカメラデバイスのアイコン。
QIcon::ThemeIcon::CameraVideo89ビデオカメラのアイコン。
QIcon::ThemeIcon::CameraWeb90ウェブカメラ装置のアイコン。
QIcon::ThemeIcon::Computer91コンピューティングデバイス全体のアイコン。
QIcon::ThemeIcon::DriveHarddisk92ハードディスクドライブのアイコン。
QIcon::ThemeIcon::DriveOptical93CDやDVDなどの光学メディアドライブ用アイコン。
QIcon::ThemeIcon::InputGaming94ゲーム入力デバイスのアイコン。
QIcon::ThemeIcon::InputKeyboard95キーボード入力デバイスのアイコン。
QIcon::ThemeIcon::InputMouse96マウス入力デバイスのアイコン。
QIcon::ThemeIcon::InputTablet97グラフィックタブレット入力デバイスのアイコン。
QIcon::ThemeIcon::MediaFlash98メモリースティックなどのフラッシュメディアのアイコン。
QIcon::ThemeIcon::MediaOptical99CDやDVDなどの物理光学メディアのアイコン。
QIcon::ThemeIcon::MediaTape100一般的な物理テープメディアのアイコン。
QIcon::ThemeIcon::MultimediaPlayer101一般的なマルチメディア再生機器のアイコン。
QIcon::ThemeIcon::NetworkWired102有線ネットワーク接続用アイコン。
QIcon::ThemeIcon::NetworkWireless103ワイヤレスネットワーク接続用アイコン。
QIcon::ThemeIcon::Phone104電話デバイスのアイコン。
QIcon::ThemeIcon::Printer105プリンタデバイス用アイコン。
QIcon::ThemeIcon::Scanner106スキャナー機器のアイコン。
QIcon::ThemeIcon::VideoDisplay107ビデオが表示されるモニターのアイコン。
QIcon::ThemeIcon::AppointmentMissed108予約に間に合わなかった時のアイコン。
QIcon::ThemeIcon::AppointmentSoon109近日中に予定が入ることを示すアイコン。
QIcon::ThemeIcon::AudioVolumeHigh110音声の音量が大きいことを示すアイコン。
QIcon::ThemeIcon::AudioVolumeLow111音声音量が小さいことを示すアイコン。
QIcon::ThemeIcon::AudioVolumeMedium112音量が中であることを示すアイコン。
QIcon::ThemeIcon::AudioVolumeMuted113オーディオ再生のミュート状態を示すアイコン。
QIcon::ThemeIcon::BatteryCaution114バッテリー残量が40%未満の場合に表示されます。
QIcon::ThemeIcon::BatteryLow115バッテリー残量が20%未満の場合に使用されるアイコン。
QIcon::ThemeIcon::DialogError116ユーザーにエラー状態を説明するためのダイアログが開かれたときに使用されるアイコン。
QIcon::ThemeIcon::DialogInformation117要求されたアクションに関連する情報をユーザーに提供するためにダイアログが開かれたときに使用されるアイコン。
QIcon::ThemeIcon::DialogPassword118ユーザーの認証情報を要求するダイアログが開かれたときに使用されるアイコン。
QIcon::ThemeIcon::DialogQuestion119ユーザに簡単な質問をするダイアログが開かれたときに使用されるアイコン。
QIcon::ThemeIcon::DialogWarning120要求されたアクションに差し迫った問題があることをユーザーに警告するダイアログが開かれたときに使用されるアイコン。
QIcon::ThemeIcon::FolderDragAccept121受け入れ可能なオブジェクトがその上にドラッグされている間、フォルダに使用されるアイコン。
QIcon::ThemeIcon::FolderOpen122フォルダの内容が同じウィンドウ内に表示されている間、フォルダに使用されるアイコン。
QIcon::ThemeIcon::FolderVisiting123フォルダの内容が別のウィンドウに表示されているときに使用されるアイコン。
QIcon::ThemeIcon::ImageLoading124別の画像を読み込んでいるときに使用されるアイコン。
QIcon::ThemeIcon::ImageMissing125別の画像を読み込めなかったときのアイコン。
QIcon::ThemeIcon::MailAttachment126添付ファイルを含むメッセージのアイコン。
QIcon::ThemeIcon::MailUnread127未読メッセージのアイコン。
QIcon::ThemeIcon::MailRead128既読メッセージのアイコン。
QIcon::ThemeIcon::MailReplied129返信されたメッセージのアイコン。
QIcon::ThemeIcon::MediaPlaylistRepeat130メディアプレーヤーのリピートモードのアイコン。
QIcon::ThemeIcon::MediaPlaylistShuffle131メディアプレーヤーのシャッフルモードのアイコン。
QIcon::ThemeIcon::NetworkOffline132デバイスがネットワークに接続されていないことを示すアイコン。
QIcon::ThemeIcon::PrinterPrinting133印刷ジョブの印刷デバイスへのスプール中に使用されるアイコン。
QIcon::ThemeIcon::SecurityHigh134アイテムのセキュリティレベルが高いことを示すアイコン。
QIcon::ThemeIcon::SecurityLow135アイテムのセキュリティレベルが低いことを示すアイコン。
QIcon::ThemeIcon::SoftwareUpdateAvailable136更新が利用可能であることを示すアイコン。
QIcon::ThemeIcon::SoftwareUpdateUrgent137緊急アップデートがあることを示すアイコン。
QIcon::ThemeIcon::SyncError138デバイス間でデータを同期しようとしてエラーが発生した場合に使用されるアイコン。
QIcon::ThemeIcon::SyncSynchronizing139デバイス間でデータが正常に同期されているときに使用されるアイコン。
QIcon::ThemeIcon::UserAvailable140ユーザーが利用可能であることを示すアイコン。
QIcon::ThemeIcon::UserOffline141ユーザーが利用できないことを示すアイコン。
QIcon::ThemeIcon::WeatherClear142晴れていることを示すアイコン。
QIcon::ThemeIcon::WeatherClearNight143夜間、空が晴れていることを示すアイコン。
QIcon::ThemeIcon::WeatherFewClouds144空が部分的に曇っていることを示すアイコン。
QIcon::ThemeIcon::WeatherFewCloudsNight145夜間、空が部分的に曇っていることを示すアイコン。
QIcon::ThemeIcon::WeatherFog146霧が発生していることを示すアイコン。
QIcon::ThemeIcon::WeatherShowers147にわか雨が降っていることを示すアイコン。
QIcon::ThemeIcon::WeatherSnow148雪が降っていることを示すアイコン。
QIcon::ThemeIcon::WeatherStorm149天気が荒れていることを示すアイコン。

この列挙型は Qt 6.7 で導入されました。

QIcon#Creating an icon from a theme or icon library およびfromTheme()も参照してください

メンバ関数のドキュメント

[static, since 6.7] QIcon QIcon::fromTheme(QIcon::ThemeIcon icon)

[static, since 6.7] QIcon QIcon::fromTheme(QIcon::ThemeIcon icon, const QIcon &fallback)

これはオーバーロードされた関数である。

current icon themeicon に対応するQIcon を返す。

現在のテーマがicon に対応するアイコンを提供していない場合、fallback icon theme が参照され、その後にfallback icon search path のスタンドアロンアイコンファイルが参照される。 最後に、プラットフォームのネイティブアイコンライブラリが参照される。

アイコンが見つからず、fallback が提供された場合、fallback が返される。これは、現在のアイコンテーマとフォールバックパスのセットが、 要求されたアイコンをサポートしているかどうかに関係なく、 保証されたフォールバックを提供するのに便利である。

アイコンが見つからず、fallback も提供されない場合、デフォルトで構築された空のQIcon が返されます。

この関数は Qt 6.7 で導入されました。

[noexcept] QIcon::QIcon()

NULLアイコンを構築します。

[explicit] QIcon::QIcon(QIconEngine *engine)

特定のアイコンengine でアイコンを作成します。アイコンはエンジンの所有権を持つ。

QIcon::QIcon(const QPixmap &pixmap)

pixmap からアイコンを作成します。

[explicit] QIcon::QIcon(const QString &fileName)

与えられたfileName のファイルからアイコンを構築します。ファイルはオンデマンドでロードされる。

fileName に相対パス(例えばファイル名のみ)が含まれる場合、関連ファイルはランタイムの作業ディレクトリからの相対パスで見つけられなければならない。

ファイル名は、ディスク上の実際のファイルまたはアプリケーションの組み込みリソースのいずれかを参照することができる。アプリケーションの実行ファイルに画像やその他のリソース・ファイルを埋め込む方法の詳細については、リソース・システムの概要を参照してください。

サポートされているファイル・フォーマットの完全なリストを取得するには、QImageReader::supportedImageFormats() およびQImageWriter::supportedImageFormats() 関数を使用してください。

QIcon::QIcon(const QIcon &other)

other のコピーを作成する。

[noexcept] QIcon::QIcon(QIcon &&other)

Move-QIconインスタンスを構築し、other が指していたのと同じオブジェクトを指すようにする。

[noexcept] QIcon::~QIcon()

アイコンを破壊する。

QSize QIcon::actualSize(const QSize &size, QIcon::Mode mode = Normal, QIcon::State state = Off) const

要求されたsizemodestate のアイコンの実際のサイズを返す。結果は要求されたサイズより小さくなることはあっても、大きくなることはない。返されるサイズは、デバイスに依存しないピクセル単位です (これは高dpiのpixmapに関連します)。

pixmap() およびpaint()も参照のこと

void QIcon::addFile(const QString &fileName, const QSize &size = QSize(), QIcon::Mode mode = Normal, QIcon::State state = Off)

size,mode,state の特殊化として、与えられたfileName のファイルから画像をアイコンに追加します。ファイルは必要に応じて読み込まれます。注意: カスタムアイコンエンジンは、追加された pixmap を自由に無視できます。

fileName に相対パス(例えばファイル名のみ)が含まれている場合、関連ファイルはランタイムの作業ディレクトリからの相対パスで見つけられなければならない。

ファイル名は、ディスク上の実際のファイルを参照することも、アプリケーションの組み込みリソースの1つを参照することもできます。アプリケーションの実行ファイルに画像やその他のリソース・ファイルを埋め込む方法の詳細については、リソース・システムの概要を参照してください。

サポートされているファイル・フォーマットの完全なリストを取得するには、QImageReader::supportedImageFormats() とQImageWriter::supportedImageFormats() 関数を使用してください。

画像の高解像度バージョンが存在する場合(ベース名の接尾辞@2x で識別)、自動的に読み込まれ、デバイスのピクセル比が2 に設定された状態で追加されます。これは、環境変数QT_HIGHDPI_DISABLE_2X_IMAGE_LOADING を設定することで無効にすることができます(QImageReader を参照)。

注意: QIcon に空でないファイル名を追加すると、ファイルが存在しない場合や破損したファ イルを指している場合でも、アイコンは非NULLになります。

addPixmap() およびQPixmap::devicePixelRatio()も参照の こと。

void QIcon::addPixmap(const QPixmap &pixmap, QIcon::Mode mode = Normal, QIcon::State state = Off)

modestate の特殊化として、アイコンにpixmap を追加します。

カスタムアイコンエンジンは、追加された pixmap を自由に無視できます。

addFile()も参照してください

QList<QSize> QIcon::availableSizes(QIcon::Mode mode = Normal, QIcon::State state = Off) const

指定されたmodestate で利用可能なアイコンサイズのリストを返す。

qint64 QIcon::cacheKey() const

このQIcon オブジェクトのコンテンツを識別する番号を返します。異なるQIcon オブジェクトが同じコンテンツを参照する場合、同じキーを持つことができます。

cacheKey() は、addPixmap() またはaddFile() によってアイコンが変更されると変更されます。

キャッシュ・キーは、主にキャッシュと組み合わせて使用すると便利です。

QPixmap::cacheKey()も参照してください

[static] QStringList QIcon::fallbackSearchPaths()

アイコンの予備検索パスを返す。

フォールバック検索パスは、current icon theme またはfallback icon theme がアイコン検索の結果を提供しない場合に、スタンドアロンのアイコンファイルに対して参照されます。

設定されていない場合、フォールバック検索パスはプラットフォームによって定義されます。

setFallbackSearchPaths() およびthemeSearchPaths()も参照

[static] QString QIcon::fallbackThemeName()

フォールバック・アイコン・テーマの名前を返します。

設定されていない場合、フォールバックアイコンテーマはプラットフォームによって定義されます。

注意: プラットフォームのフォールバックアイコンテーマは、現時点ではFreedesktopベースのシステムでのみ実装されています。

setFallbackThemeName() およびthemeName()も参照

[static] QIcon QIcon::fromTheme(const QString &name)

current icon themename に対応するQIcon を返す。

現在のテーマがname に対応するアイコンを提供していない場合、fallback icon theme が参照され、その後、fallback icon search path にあるスタンドアロンのアイコンファイルが参照されます。 最後に、プラットフォームのネイティブアイコンライブラリが参照されます。

現在のアイコンテーマからアイコンを取得する:

QIcon undoicon = QIcon::fromTheme(QIcon::ThemeIcon::EditUndo);

setThemeName() でicon theme が明示的に設定されていない場合、プラットフォームで 定義されたアイコンテーマが使用される。

themeName()、fallbackThemeName()、setThemeName()、themeSearchPaths()、fallbackSearchPaths() およびFreedesktop Icon Naming Specificationも参照

[static] QIcon QIcon::fromTheme(const QString &name, const QIcon &fallback)

これはオーバーロードされた関数である。

current icon themename に対応するQIcon を返す。

現在のテーマがname に対応するアイコンを提供していない場合、fallback icon theme が参照され、その後にfallback icon search path のスタンドアロンアイコンファイルが参照される。 最後に、プラットフォームのネイティブアイコンライブラリが参照される。

アイコンが見つからなければfallback が返される。

これは、現在のアイコンテーマとフォールバックパスのセットが要求されたアイコンをサポートしているかどうかに関係なく、保証されたフォールバックを提供するのに便利です。

例えば

QIcon undoicon = QIcon::fromTheme(QIcon::ThemeIcon::EditUndo, QIcon(":/undo.png"));

fallbackThemeName() およびfallbackSearchPaths()も参照のこと

[static] bool QIcon::hasThemeIcon(const QString &name)

fromTheme() で説明されているように、現在のアイコンテーマまたはフォールバックのいずれかにname で利用可能なアイコンがある場合はtrue を返し、そうでない場合はfalse を返す。

themeSearchPaths()、fromTheme()、setThemeName()も参照

[static, since 6.7] bool QIcon::hasThemeIcon(QIcon::ThemeIcon icon)

これはオーバーロードされた関数である。

fromTheme() で説明されているように、現在のアイコンテーマまたはフォールバックのいずれかにicon で利用可能なアイコンがある場合はtrue を返し、そうでない場合はfalse を返します。

この関数はQt 6.7で導入されました。

fromTheme()も参照してください

bool QIcon::isMask() const

このアイコンがマスク画像としてマークされている場合はtrue を返す。プラットフォームによっては、マスクアイコンの描画方法が異なります (たとえば macOS のメニューアイコンなど)。

setIsMask()も参照

bool QIcon::isNull() const

アイコンが空の場合はtrue を返し、そうでない場合はfalse を返す。

アイコンが空であるのは、pixmapもファイル名もない場合である。

注意: 空でないアイコンであっても、ファイルが存在しない場合や読み込めない場合など、有効な pixmap を作成できないことがあります。

QString QIcon::name() const

アイコンの作成に使用された名前があれば、それを返します。

アイコンの作成方法によっては、アイコンに関連付けられた名前がある場合があります。これはfromTheme() で作成されたアイコンの場合である。

fromTheme() およびQIconEngine::iconName()も参照

void QIcon::paint(QPainter *painter, const QRect &rect, Qt::Alignment alignment = Qt::AlignCenter, QIcon::Mode mode = Normal, QIcon::State state = Off) const

painter を使用して、指定されたalignment 、必須のmode 、およびstate を持つアイコンを矩形rect にペイントします。

actualSize() およびpixmap()も参照

void QIcon::paint(QPainter *painter, int x, int y, int w, int h, Qt::Alignment alignment = Qt::AlignCenter, QIcon::Mode mode = Normal, QIcon::State state = Off) const

これはオーバーロードされた関数です。

アイコンを矩形QRect(x,y,w,h) にペイントします。

QPixmap QIcon::pixmap(const QSize &size, QIcon::Mode mode = Normal, QIcon::State state = Off) const

要求されたsizemodestate を持つ pixmap を返し、必要であれば生成する。返される pixmap のデバイスピクセル比が 1 より大きくない限り、 pixmap は要求された値より小さくなる可能性があるが、大きくなることはない。

actualSize() およびpaint()も参照のこと

QPixmap QIcon::pixmap(int extent, QIcon::Mode mode = Normal, QIcon::State state = Off) const

これはオーバーロードされた関数です。

サイズQSize(extent,extent) の pixmap を返す。返される pixmap のデバイスピクセル比が 1 より大きくない限り、 pixmap は要求されたサイズより小さくなることはあっても、大きくなることはありません。

[since 6.0] QPixmap QIcon::pixmap(const QSize &size, qreal devicePixelRatio, QIcon::Mode mode = Normal, QIcon::State state = Off) const

これはオーバーロードされた関数である。

要求されたsizedevicePixelRatiomodestate を持つ pixmap を返し、 必要であれば、与えられたmodestate を持つ pixmap を生成します。返される pixmap のデバイスとピクセルの比率が 1 より大きくない限り、 pixmap は要求されたものより小さくなる可能性がありますが、大きくなることはありません。

devicePixelRatio注意: Qt 6.8 より前のバージョンでは、この関数はデバイス依存の pixmap サイズをQIconEngine::scaledPixmap() に渡していました。

この関数は Qt 6.0 で導入されました。

actualSize() とpaint()も参照してください

QPixmap QIcon::pixmap(int w, int h, QIcon::Mode mode = Normal, QIcon::State state = Off) const

これはオーバーロードされた関数です。

サイズQSize(w,h) の pixmap を返す。返される pixmap のデバイスピクセル比が 1 より大きくない限り、 pixmap は要求されたサイズより小さくなることはあっても、大きくなることはありません。

[static] void QIcon::setFallbackSearchPaths(const QStringList &paths)

アイコンの予備検索パスをpaths に設定する。

フォールバック検索パスは、current icon theme またはfallback icon theme でアイコン検索の結果が得られない場合に、スタンドアロンのアイコンファイルに対して参照されます。

例えば

QIcon::setFallbackSearchPaths(QIcon::fallbackSearchPaths() << "my/search/path");

fallbackSearchPaths() およびsetThemeSearchPaths()も参照

[static] void QIcon::setFallbackThemeName(const QString &name)

予備アイコンテーマをname に設定する。

フォールバック・アイコン・テーマは、current icon theme で提供されていないアイコンや、current icon theme が存在しない場合に参照される。

name は、setThemeName() でドキュメント化されているのと同じフォーマットで theme に対応していなければならず、themeSearchPaths() で検索される。

注意: フォールバック・アイコン・テーマは、正しく初期化されるように、QGuiApplication を作成する前に設定すべきである。

fallbackThemeName()、themeSearchPaths()、themeName()も参照の こと。

void QIcon::setIsMask(bool isMask)

このアイコンがマスク画像(booleanisMask)であることを示し、したがって表示する場所に応じて変更できる可能性がある。

isMask()も参照

[static] void QIcon::setThemeName(const QString &name)

現在のアイコンテーマをname に設定する。

テーマはthemeSearchPaths() で検索されます。

現在のところ、サポートされているアイコンテーマの形式はFreedesktop Icon Theme Specification のみです。name は、その内容を記述したindex.theme ファイルを含む themeSearchPath() のディレクトリ名に対応する必要があります。

themeSearchPaths()、themeName()、Freedesktop Icon Theme Specificationも参照

[static] void QIcon::setThemeSearchPaths(const QStringList &paths)

アイコンテーマの検索パスをpaths に設定する。

paths の内容は、setThemeName() で文書化されているテーマ・フォーマットに従うべきである。

themeSearchPaths()、fromTheme()、setThemeName()も参照

[noexcept] void QIcon::swap(QIcon &other)

このアイコンをother と入れ替える。この操作は非常に速く、失敗することはない。

[static] QString QIcon::themeName()

現在のアイコンテーマの名前を返す。

設定されていない場合、現在のアイコンテーマはプラットフォームによって定義されます。

注意: プラットフォームのアイコンテーマは、現時点ではFreedesktopベースのシステムでのみ実装されており、 アイコンテーマはデスクトップの設定に依存します。

setThemeName(),themeSearchPaths(),fromTheme(),hasThemeIcon()も参照のこと

[static] QStringList QIcon::themeSearchPaths()

アイコンテーマの検索パスを返します。

デフォルトの検索パスはプラットフォームによって定義されます。すべてのプラットフォームは、フォールバックとしてリソースディレクトリ:\icons も持っています。

setThemeSearchPaths(),fromTheme(),setThemeName()も参照

QVariant QIcon::operator QVariant() const

アイコンをQVariant として返す。

[noexcept] QIcon &QIcon::operator=(QIcon &&other)

Move-other をこのQIcon インスタンスに割り当てる。

QIcon &QIcon::operator=(const QIcon &other)

このアイコンにother アイコンを割り当て、このアイコンへの参照を返す。

関連する非会員

QDataStream &operator<<(QDataStream &stream, const QIcon &icon)

与えられたicon を PNG 画像として与えられたstream に書き込みます。アイコンに複数の画像が含まれている場合、すべての画像がストリームに書き込まれます。ストリームをファイルに書き込んでも、有効な画像ファイルは生成されないことに注意してください。

QDataStream &operator>>(QDataStream &stream, QIcon &icon)

与えられたstream から、与えられたicon に、画像(または画像の集合)を読み込む。

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.