QIcon Class

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

Header: #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 の状態のピクスマップは、提供されたピクスマップの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-project.org/icons/MaterialIcons-Regular.ttf にバンドルされている限り、Qt は Material デザインシステムのアイコンにアクセスできます。

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

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

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

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

sizemodestate の特殊化として、与えられた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

指定されたmode およびstate で利用可能なアイコンサイズの一覧を返します。

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()

fallbackアイコンテーマの名前を返します。

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

注意: プラットフォームのフォールバックアイコンテーマは、現時点では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 IconNamingSpecificationも参照

[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

要求 さ れたsize,mode,state を持つ 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 IconThemeSpecificationも参照

[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 を指定されたstream に PNG 画像として書き込みます。アイコンに複数の画像が含まれている場合、すべての画像がストリームに書き込まれます。ストリームをファイルに書き込んでも、有効な画像ファイルは生成されないことに注意。

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

指定されたstream から、指定されたicon に、画像または画像のセットを読み込みます。

本書に含まれる文書の著作権は、それぞれの所有者に帰属します 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。