QGraphicsViewを使って画像表示QGraphicViewを使って画像ファイルを表示してみる。画像ファイルを読み込む。画像をQGraphicsPixmapItemに変換する。画像(QGraphicsPixmapItem)をシーン(QGraphicsScene)に追加する。グラフィックスビュー(QGraphicsView)にシーンを設定する。QGraphicsViewが額縁やフォトフレーム、QGraphicsSceneがキャンバスや写真、QGraphicsPixmapItemはキャンバスに描かれたり、写真に撮られたりする物になる。QGraphicsPixmapItemの部分は正確にはQGraphicsItemを継承したクラスのインスタンスが使え、矩形やポリゴンなどもある。Widgetのプロジェクトを作成する。Viewとボタンを貼る。ボタンを押したらC:\tmp\hoge.pngを読み込んで表示するようにしたいと思う。WidgetクラスにQGraphicsSceneを追加する。scene;ボタンを押した時の処理を次のようにする。イメージをシーンに追加する。シーンをQGraphicsViewに設定する。ファイルオープンダイアログを出す。5.12.3)ファイルオープンダイアログを出してみる。Files(*.*)"));ケッコー簡単。ファイルオープンダイアログでキャンセル押すとfilenameはNULL文字列になる。getOpenFileName以外にもファイルやディレクトリ選択関係のダイアログが表示できる。ファイルを1つ選択できるダイアログが表示される。ファイルを複数選択できるダイアログが表示される。ファイル(リモート)を1つ選択できるダイアログが表示される。ファイル(リモート)を複数選択できるダイアログが表示される。ディレクトリを選択できるダイアログが表示される。ディレクトリ(リモート)を選択できるダイアログが表示される。ファイル保存ダイアログが表示される。ファイル(リモート)保存ダイアログが表示される。リモートとそうでないのはWindowsでは違いがないように見えるな~~。別のプラットフォームだと違うのかもしれないです。Zipファイルを扱う(Linux,macOS)Linux、macOSを試してみる。理ろぐのページを参考に試してみた。build-quazip-linux-x64を実行する。ビルド&インストール。installmacOSターミナルを起動して、Qtのqmakeのあるところにパス(うちは~/Qt/5.12.3/clang_64/bin)を通す。build-quazip-macos-x64を実行する。ビルド&インストール。installquazipフォルダができ、そこにシェアドライブラリやヘッダなんかがインストールされる。次に参考にしたページにあった"quazip.pri"を見よう見まねでこんな感じにした。Zipファイルを扱う(Windows,MinGW)MinGWを試してみる。MinizipによるとMinGWはテストされていないようだけど。理ろぐのページを参考に試してみた。64-bit)"(コマンドプロンプト)を起動する。build-quazip-MinGW-x64を実行する。ビルド&インストール。debug-installquazipフォルダができ、そこにdllやヘッダなんかがインストールされる。次に参考にしたページにあった"quazip.pri"を見よう見まねでこんな感じにした。理ろぐのページを参考に試してみた。quazipをビルドしてみる。stachenov/quazipこっから、バージョン0.7.6をダウンロードして展開する。quazip-0.7.6フォルダが出来る。64-bit)"(コマンドプロンプト)を起動する。Studio\2017\BuildTools\VC\Auxiliary\Build\vcvars64.bat"(VS2017をデフォルトでインストールした場合)を実行する。build-quazip-x64を実行する。ビルド&インストール。debug-installquazipフォルダができ、そこにdllやヘッダなんかがインストールされる。(バージョンが違うから?)なので、"quazip.pri"に書かれているディレクトリを変更する必要がある。いるんだけど、"X64"ではなくて"x64"が正解のようです。あとはmacOSやMinGWや他のプラットフォームでどーなるかを確認しないとな~。あっ、よく見るとLinux、WindowsのMSVCしかサポートしてないのか・・・Qtのバージョンも低いな~(追記)32bit版も作ってみた。ROMイメージを作ってみる。ファイルオープンダイアログを出す。