トップ 一覧 ソース 検索 ヘルプ RSS ログイン

Qtでファイルのアイコンを調べるメモ

Qt独自のQFileDialogがアイコンをちゃんと表示してるのが気になって、軽く調べてみた。

ss001.png

結論から言うと、QFileSystemModelを経由することでファイルのアイコンを取得することが可能、と。ポイントになる部分の処理はこんな感じ。

amaindialog.cpp
43|void        AMainDialog::getIcon( const QString& fn )
44|{
45|    //      ファイルからアイコンを取得
46|
47|    //      処理を簡単にするために
48|    //      setRootPathをここで呼び出し
49|
50|    m_model->setRootPath( fn );
51|
52|    //      ファイル名をインデックスに変換
53|
54|    QModelIndex mi  = m_model->index( fn );
55|
56|    //      アイコンを取り出し
57|
58|    m_icon      = m_model->fileIcon( mi );
59|    m_filename  = fn;
60|}

わかってみれば簡単なことだな。ここまで調べるのは大変だったけど(´・ω・`)

実験に使ったソースコードはこちら:testFileIcon-03src.zip


(2009/12/08 メモ,Qt