色々なメモ: Qtで遊ぶ 其の3 post

過去の記事は↓

QtをVisual C++ 2008 Express Editionで使えるようにしてみる: Qtで遊ぶ 其の1

色々なメモ: Qtで遊ぶ 其の2

少しずつQtのソース見つつ調べつつでやってきたメモ的な何か

ウィジェット関連の何か

QProgressBarでマーキー(marquee、メモリが左右に動くなどして進捗の終了が不明の場合に使うスタイル)で表示するには、QProgressBar.setRange(0, 0) のように範囲の最小と最大を共に0にすれば良いようだ。

その他、ウィジェットをカスタマイズする時などに参考になりそうなメモ

シグナル&スロット関連の何か

アルゴリズム的な何か

Qtでスマートポインタ使う場合は、QSharedPointerQScopedPointerがある。

あと、QObjectの派生クラスは、コンストラクタで親を指定すると親の破棄で勝手に削除してくれるらしい。

ディレクトリ、ファイル関連の何か

ディレクトリ移動は、QDir::setCurrent() で出来るようだが、ディレクトリの区切りが最後に無いとうまくいかないようだ。

プロセス間通信の何か

子プロセスの終了時にシグナルを呼ばれるようにするには finished()connect すればいいようだ。

他にも標準出力やエラー出力を取得した時などのシグナルがあるようだ。

試したところ、なぜか、強制終了した場合も正常終了となってしまうようだが、、、もうすこし調べる必要はあるようだ。

Window メッセージをQtで取得するには↓をオーバーライドすればいいらしい

QApplication::winEventFilter(MSG*)

コーディング規則など

多言語対応な何か

標準ツールを日本語で使うには...

インストールディレクトリ直下の translations フォルダの *_ja.ts を lrelease で変換してあげればよいようです。

ただ、何故か Linguist はうまく日本語にならなかったです。

ファイルを読み込んだときの文字化けを解消するため↓を先頭に書く

リンク先では埋め込み文字列が云々と書かれているが、ファイルから様だと気にも影響があるようだ(別のページで見たけどそのページが見つからない...)。

QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale());

そのほか実際の実装などについてのメモ


 /  変更履歴  /  Permalink  /  このエントリーをはてなブックマークに追加
カテゴリ: ブログ  /  タグ: C++, Qt, Qtで遊ぶ