1read 100read
2012年3月プログラム45: 【RAD統合環境】 Qt 総合スレ 13 【Win/Mac/Linux】 (199) TOP カテ一覧 スレ一覧 2ch元 削除依頼
Perl忍者最終決戦〜ゲスッ復活プロジェクト (430)
最近の若者はUNIX/LINUXを使えなさ過ぎる (375)
●●●●TCL/TKなら俺に聞け 2●●●● (883)
メガデモを語る fr-08 (603)
やってて楽しいプログラミング言語は? 3言語 (912)
【C++】 DirectX初心者質問スレ Part36 【C】 (862)

【RAD統合環境】 Qt 総合スレ 13 【Win/Mac/Linux】


1 :12/02/18
Qt(キュート)は C++ ベースのフレームワーク&RAD開発環境です。
ライブラリの機能は、フォーム、ボタンなどの各種ウィジェットからネットワーク、マルチスレッド、
グラフィックス(OpenGL)や各種コンテナ、XMLパーサー、組み込み JavaScript など、非常に多岐に渡ります。
公式の統合開発環境「Qt Creator IDE」を使えば、クロスプラットフォーム対応のRAD開発が可能です。
また、EclipseやVisual Studio上で開発したい人のためのアドインも用意されています。
■主な対応プラットフォーム(デスクトップ用途の場合)
Windows XP, Vista, 7
Mac OS X 10.4, 10.5, 10.6
Linux
■ライセンス
・オープンソース版(Open-source version)
 LGPL 2.1 または GPL 3.0 のうちどちらかを利用者が選べます。
 LGPL を選んだ場合はソースコード非公開のままでの商用利用が可能です(いくつか制限あり)。
 ※正確には通常「LGPL+商用利用向きの例外条項」を選ぶことにな7ります(Qtインストール先の「LGPL_EXCEPTION.txt」を参照)。
  ちなみにGPLでも商用利用が不可能というわけではありません、念のため。
・商用版(Commercial version)
 こっちはNokia社か日本の代理店(SRA社)とライセンス契約(年間30万くらい?)を結んで使います
■Qt を使って作られたソフト例
KDE、Adobe Photoshop Elements、Google Earth、Skype、DAZ Studio など
■前スレ
【RAD統合環境】 Qt 総合スレ 12 【Win/Mac/Linux】
http://toro.2ch.net/test/read.cgi/tech/1313727889/

2 :12/02/18
■リンク
・Qt Development Frameworks (Nokia社のQt公式サイト)
http://qt.nokia.com/title-jp
・SRA社(日本の代理店)の日本語で読める Qt 関連ドキュメント
http://www.sra.co.jp/qt/relation/index.html
・Qt Users Forum Japan
http://qtusersforum.s2.zmx.jp/forum/index.php
■ライセンス関連まとめ
各ライセンスでの自作アプリのソース公開/頒布
Qtのライセンス   アプリのライセンス     Qtの頒布/(変更部分のソース公開)
GPL           GPL(ソース公開必須)      必須
LGPL         任意(ソース公開不要)      必須
商用          任意(ソース公開不要)      不要
*: LGPLは動的リンク時
実際には他にも条件(リバースエンジニアリング関係とか)あるので、
きちんとライセンスの条文を読むこと。

3 :12/02/18
Windows ユーザー向け Tips
・プロジェクトのパスに日本語を入れちゃダメ
・日本語のソースコードは、MinGW版ならUTF-8、VC版ならSystem(Shift-JIS)
 プロジェクト作成後に「プロジェクト」タブの「エディタの設定」→「デフォルトの文字コード」
・デバッグ出力などが文字化けする場合、プログラムの最初で文字コード変換設定をする
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("utf-8")); //ソースの文字コードを直接指定("utf-8"や"Shift-JIS")
// QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale()); //システムロケールの文字コードを指定
QTextCodec::setCodecForTr(QTextCodec::codecForName("utf-8")); //翻訳用マクロ tr()の文字コード
qDebug() << "うまく表示できた?";
・MinGW版配布時は mingwm10.dll も一緒に入れる(public domain。配布上の制限はない)

4 :12/02/18
■インストール方法:MinGW版Qt & Qt Creator
(1)「Qt SDK for Windows」をインストール
 http://qt.nokia.com/downloads/sdk-windows-cpp
■インストール方法:VisualC++版Qt & Qt Creator
MinGW版との違い:Phononが利用可能。VC版の方が速いらしい
(1)「Microsoft Visual C++ 2008」(Express Edition 以上) をインストール
(2)「Microsoft Debugging Tools」をインストール
 http://www.microsoft.com/japan/whdc/devtools/debugging/installx86.mspx
(3)「Qt libraries for WIndows(VS 2008)」をインストール
 http://qt.nokia.com/downloads/windows-cpp-vs2008
(4)「Qt Creator Binary for Windows」をインストール
 http://qt.nokia.com/downloads/qt-creator-binary-for-windows
(5)環境変数PATHを設定(もともと入ってたパス;Qtインストールパス\bin)
(6)Qt Creator を起動して、「ツール」→「オプション」
 「Qt4」→「Qt Versions」を開いて自動検出された「PATH に含まれる Qt」をクリックし「MSVC バージョン」を 9.0 にする
 「デバッグヘルパ」が×印になっていれば「リビルド」ボタンをクリックしてリビルド
 もし失敗したら「プロジェクト」→「ビルドして実行」→「nmake の代わりに jom を使用する」のチェックを外してリビルド

5 :12/02/18
■Qt Creator 日本語化プロジェクト
Qt Creator を日本語化するプロジェクトです(非公式)
http://qt-creator-jp.sourceforge.jp/
■Python バインディング
PyQt4(GPL。定番)
http://www.riverbankcomputing.co.uk/software/pyqt/intro
PySide(LGPL。)
http://www.pyside.org/downloads/
ごちゃごちゃ言わず、QtQuickも使ってみてください(><;)
では、どうぞ!

6 :12/02/18
>>1おつ

7 :12/02/19
QDialog内でのQTextbrowserを使って、テキストデータを表示しているんだけど、すごく表示が遅い。
別にコードを書く必要もないと思うけど、こんな感じで、ただテキストファイルを読んで
表示させてるだけ。
QTextBrowser b;
QFile f(filename);
f.open(QIODevice.ReadOnly);
QString text = f.readAll();
f.close();
b.setText(text);
ファイルはまあそれなりに大きいといえば大きんだけど、1Mbyte程度。
だけど、ダイアログの移動さえ遅くなる。
QTextBrowserが遅いのか、ファイルの読み込み方が悪いのか、QDialog自体に問題があるのか
よくわからなくて困っています。処理を速くするにはどうしたら良いんでしょうか?
Qtって小さいシステムでしか使えないんじゃないかと疑っているんですが、そんなことはない?

8 :12/02/19
コピーが3回

9 :12/02/19
QString &text = f.readAll();

10 :12/02/19
1MB位のコピーなんてたいしたことないだろ
それよりsetPlainTextにしたほうがいいんじゃね?

11 :12/02/19
>>8
QStringはimplicit sharedなので、QStringの文字列データ部分のコピーは0回です。
>>9
同じ理由で、&の有無は影響しません。

12 :12/02/20
1Mバイト程度のテキストファイルを表示させるのが遅いのか。
Qtには速度、メモリ消費に決定的な欠点があるのかもな

13 :12/02/20
QWebView使ったら?

14 :12/02/20
>>7
まず、プロファイルを取って、どこで時間がかかっているかを特定する。
>>12
憶測で判断しない。

15 :12/02/20
Qt 解説書
■ 入門 Qt 4 プログラミング
http://www.amazon.co.jp/%E5%85%A5%E9%96%80-Qt-%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0-Jasmin-Blanchette/dp/487311344X
■ Qtプログラミング入門―使いやすいフレームワークを基礎から解説
http://www.amazon.co.jp/gp/product/4777516504/ref=pd_lpo_k2_dp_sr_2?pf_rd_p=466449256&pf_rd_s=lpo-top-stripe&pf_rd_t=201&pf_rd_i=487311344X&pf_rd_m=AN1VRQENFRJN5&pf_rd_r=1A9G2JCJYMD8FS57MBAC
■ Qtで簡単 GUIプログラミング―Qt入門書を読む前に読む「入門書」
http://www.amazon.co.jp/gp/product/4877832211/ref=pd_lpo_k2_dp_sr_1?pf_rd_p=466449256&pf_rd_s=lpo-top-stripe&pf_rd_t=201&pf_rd_i=487311344X&pf_rd_m=AN1VRQENFRJN5&pf_rd_r=1A9G2JCJYMD8FS57MBAC

16 :12/02/20
>>7
環境とソース(全部)を貼れ
大抵は素人が関係ないと思ってるところに原因がある

17 :12/02/20
まちがえた
x 素人
o 本人

18 :12/02/20
ダイアログの移動さえ遅くなるってのが問題だな
そのコードは処理終わるまで制御返さないから、どんなに重くてもダイアログの移動には影響を及ぼさないはず
ユーザのコードに原因があるとすれば、Event系で重い処理をさせてるんだろう

19 :12/02/20
と思ったけどそういえばQtは仕様違ったような気がして試してみたら、
setTextに大きなデータ表示させると一部だけ表示して一旦制御を返してからバックグラウンドで残りを処理してるね
この処理中は確かにスクロールもダイアログの移動も重いわ
うちのデスクトップでは5MのHTMLファイルでも3秒未満で終わったけど

20 :12/02/20
ファイル選択ダイアログを表示するので重くなった経験ならあるけどな。
多分選択ダイアログ表示の時に何かをダイナミックリンクをしているからだと思うけど。
同じような理由で、plug-inは、初回は重い。
あと、OpenGLのコンテキストの切り替えで重くなる。chromeがWebGLに対応して、
積極的にGPU使うようになってOpenGL使う他アプリとの切り替えが重くなった。
それから、間違ってバイナリファイルを開いた時のように、改行が殆ど無いときは、
スクロールが重くなる。

21 :12/02/20
>>19
ああ、これっぽいかも。
表示領域ではすぐに表示されるけど、スクロールも受け付けないし、
ダイアログの移動も受け付けないって状態。
そうかあ、setTextはそういう処理をしてるんですか。
もしかしてQtのソースを読んだんですか?
うまく処理できる他の手はあるんだろうか?

22 :12/02/20
あ、ちなみに、私はプアなマシン(WindowsXP、Pentium4、2Gバイトメモリ)では、結構きつい。

23 :12/02/20
QPlainTextEditは、単純には断言できないけど
少なくともGTK+より格段に速い動作だった。
50MBくらいのテキストファイルをほぼ一瞬で開いてたぞ。

24 :12/02/20
QTextBrowserはリッチテキストやらの特殊なテキスト表示用
QTextEdit とその派生クラスは実装された時期が古いので
QPlainTextEditよりかなり遅いかも

25 :12/02/21
>>23
QPlainTextEditは大丈夫?
最初の「表示領域にだけは」すぐ表示されても、
スクロールやダイアログの移動を受け付けないってことが問題なんだけど。
スクロールやダイアログ移動もちゃんとすぐに受け付けてくれるのかな。

26 :12/02/21
>>25
スクロールバーもダイアログも>>19のようにはならない。
テキストエリア真っ白のまま一瞬待たされたあと
一気に表示される。スクロールバーは表示された時点でほぼ縮まりきっているし
表示が済んだあとは普通の挙動。
で、なんで挙動がちがうんだと思ったら、setTextじゃなくて
setPlainText使ってたわ。あとメモリ8GBのi7マシンなのも影響してるかも。
役に立ちそうもなくてスマソ

27 :12/02/21
いえいえ。
ちなみに、QTextBrowser でも、スクロールバーは最初から縮まりきってるんだけどね。
だから、一見、全部読み込んでしまってるのかな、と勘違いをしてしまうけど、
>>19の言ってるように、処理が完全に終わってないから、
表示エリアのスクロールバーをクリックしても、ドラッグしても、すぐには受け付けない状態。

28 :12/02/21
根本的な解決じゃないけど
ハイパーリンクがあるドキュメントとかでQTextBrowserをどうしても使いたいなら
QTextBrowser::setText()の前でカーソルを砂時計にするとか特定のWidgetをDisableにするとかしちゃって
QTextBrowser::document()で取得したQTextDocumentオブジェクトのcontentsChanged()シグナルで元に戻せば
テキストの成形中の操作をさせなくはできるかも

29 :12/02/22
PySide楽しすぎワロタ

30 :12/02/22
それはよかった

31 :12/02/22
Qtで作ったアプリを配ってるんだが(Windows)、最初の立ち上がりが結構遅いみたい。
ライブラリのロードに時間がかかってるのかなあと思ってるんだけど、
立ち上がりを速くするにはどうしたら良いんだろう。
あと、例えば、最初にファイル選択ダイアログを表示する時にも、ちょっと遅いよね。
あれってどうしようもないのかな。結構、欝になる。

32 :12/02/22
俺の実装がまずいのかと思ってたら、似たような問題抱えてる人いるんだな

33 :12/02/22
.NET系やJava系よりはずっと早いんだけど
DelphiとかMFC製のネイティブアプリと比べると、体感できるくらい遅いよな

34 :12/02/22
UPXで圧縮すれば多少早くなるかもしれない
CPUが遅いと余計遅くなるかもしれないけど

35 :12/02/23
>>31
必要なライブラリを使うダミーのプログラムを作って
サービスとして登録しておけば委員で内科医

36 :12/02/23
遅いってどのくらい遅いの?自分は体感できないな
最小限のプロジェクトでQWidgetをshowするだけのプログラムでも遅いの?
使うライブラリによっては、mingwコンパイルするよりvcコンパイルしたほうが立ち上がりが早いことはある

37 :12/02/23
QtCreatorの立ち上げからしてもっさり

38 :12/02/23
インストールも時間かかりすぎ
170Mのファイルインストールで1.5GBってでかすぎ

39 :12/02/23
あれはadobeがする

40 :12/02/23
GTK+みたいにGUI部品のツールキットとして始まってるわけだから
Win32ネイティブなGUI部品をそのまま使うやつに比べれば重いし
ファイル容量が大きくなるのは当たり前。(それでもDelphiより重いかなあ)
無意味に.NETなアプリケーションが増えている現在速度はあまり気にしてなかったが
同梱しなきゃなんないdllのサイズは頭が痛い。
けどファイルダイアログなんかはWindowsのをそのまま使ってるんじゃなかったっけ?

41 :12/02/23
>>31
そんなに重いか?
VS2008のコンパイラでビルドしたexeだけど,PC起動して最初に立ち上げても
2〜3秒でメインフォームが表示されるよ。フォーム上に何十個かのウィジットが
あるけど。
起動時に何か処理が入ってない?
そもそも組み込み用途でショボイCPUでも使われてるわけで,PCでやたらに遅かったら
組み込みでは使い物にならないと思うが。
>>40
ファイルダイアログは,Windowsネイティブのものと,Qt独自のものが選択できる。
>>31の話はどっちかな?

42 :12/02/23
実際に使用する部分だけをdllにしてくれるようなツールがあればいいのに

43 :12/02/23
VCで静的リンクすると、ただフォーム出すだけのアプリでどんくらいのサイズになるのかな

44 :12/02/23
>>41
> ファイルダイアログは,Windowsネイティブのものと,Qt独自のものが選択できる。
選択できる?
オンラインマニュアルには、Windowsの場合、スタティックな関数
  QFileDialog::getExistingDirectory
  QFileDialog::getOpenFileName
  QFileDialog::getOpenFileNames
  QFileDialog::getSaveFileName
では、nativeのファイルダイアログが使われるようになっている
って書かれてある。
選択できるとは書かれていない。
もともと、普通に使っていれば、nativeなファイルダイアログが表示されるはず。

45 :12/02/23
QFileDialog *dialog = new QFileDialog;
dialog->show();
これはQt独自

46 :12/02/23
スタティックな関数でないほう(インスタンス作ってexec())を使うと
常にあの微妙なダイアログが出てるから選択できるんじゃないのか

47 :12/02/24
QFileDialog::DontUseNativeDialog
使ったことはないが。

48 :12/02/24
オブジェクト指向なライブラリは重い気がする

49 :12/02/24
キモオタニート

50 :12/02/24
>>45-46
ああ、そういうことか。
わざわざそっちの方を使う人もいるのかな?

51 :12/02/24
がっつりカスタマイズしたいときとか、クロスプラットフォームなソフトだと便利なこともある

52 :12/02/24
ソフトの挙動がOSごとに異なるのはサポートが面倒な場合があるかもね

53 :12/02/24
FireAlpacaが話題だねぇ

54 :12/02/24
こんなところまでステマか

55 :12/02/24
>>44,>>50
ドキュメントの読み方が浅いよ。>>47が正解。
QFileDialog::getOpenFileName()とかのスタティック関数でも,最後の引数
(Options)に指定できる。
だいたいさぁ,やってみたことあるから書いてるに決まってるじゃないか。
良く調べもせずに噛み付いて恥ずかしくないか?

56 :12/02/24
C++でプログラム書くのを覚えるとCでプログラム書くのは無理
Cを読むくらいならできるけど、Cで書くなんてバカらしくてやってらんない

57 :12/02/24
How To Become A Hacker
http://cruel.org/freeware/hacker.html
もしコンピュータ言語をなにも知らないなら、まず Python から始めることを
おすすめします。設計がきれいだし、ドキュメントもしっかりしているし、
初心者にもそこそことっつきやすくできています。でも入門言語として最適でも、
おもちゃではありません。強力で柔軟で、大きなプロジェクトにもじゅうぶん
対応しています。
Java もプログラミングを学ぶにはよい言語です。 Python よりはむずかしい
ですが、できるコードは Python より高速です。二番目の言語としてはとても
すぐれていると思います。
本気でプログラミングをするなら、C を勉強するしかありません。これはUnix の
中核となる言語です。C++ は C と密接な関係にあります。片方を知っていれば、
もう片方を学ぶのはそんなにむずかしくありません。が、どっちも真っ先に
勉強しようとするのには向いた代物ではありません。

58 :12/02/24
c++なんてどこまでいっても便利でカオスなCじゃん
Cでキッチリかけないやつなんてわかってないだけ

59 :12/02/24
C++使わないでCでプログラムをするのは
足を使わないで自転車に乗るようなもん
出来ないことはないが馬鹿らしくてやってられない

60 :12/02/24
CとC++の話は別にどうでもいいですん

61 :12/02/25
すん

62 :12/02/25
>>41
ずいぶん偉そうな言葉遣いだな。
プログラムの前に日本語を覚えなw

63 :12/02/25
CとC++のどっちがいいかなんて無意味。
目的のためなら利用できるものは何でも利用するべきなんじゃないのかな。
でも、はっきり言って、Cでまともなプログラムが書けない人は
やっぱりC++でもまともなプログラムを書いてないよね。
危なっかしいプログラムを平気で書いてる。

64 :12/02/25
ってか、Qtは大抵の人が安全に使えるから人気があるんだろうね。
そのぶん、パフォーマンスが落ちてるような気がするけど。

65 :12/02/25
>>62
どこが? で、本題はどうしたの?

66 :12/02/26
検索エンジンも業務効率の改善にいそいでいる。

67 :12/02/26
>>31, >>32, >>33
同じく。QtFileDialogのスタティック関数を使ってるけど、最初使うとき体感できるほど遅いね。
dllのロードに時間がかかってるんだろうな。

68 :12/02/28
ウインドウを不活性にして読み込み中・・・みたいなダイアログ?を表示したいんですけどどうしたらいいでしょうか

69 :12/02/28
adobeはflashの役割をhtml5にとられるだろうけど、
そのうち、photoshopをarchemyで実装しだすと思う。
javaもc#もクロスプラットフォームなRIAとしては今一な感があるし、
コアなロジックなんかはc++で書いた方がよほどコードをつかいまわせる。
余ったflash技術者にプレゼンテーション層をまかせるとなれば、
今後はqtの採用が減るんじゃないだろうか

70 :12/02/29
なんか最近見るスレ見るスレで
フォトショ関係のー長レス見かけるんだけど…

71 :12/02/29
>>69
Qt 5の開発が遅れ気味で、安定するのにも時間がかかるだろうから、新機能は当分使えない。
Qt 4の改良は止めてしまっていて、同じく目新しいことはない。
Qtが停滞している間に、他のものを使うようになる。

72 :12/03/01
qt5はコアな部分から最適化のためにかなりいじってるみたいね

73 :12/03/01
他のものの候補ってナニ?GTK位しか知らないんだが

74 :12/03/01
どーせいつものアンチNokiaの粘着だろ

75 :12/03/01
>>68
だれかしりませんか・・・

76 :12/03/01
>>75
要するにボタンのないモーダルダイアログを表示して、プログラムのコードで閉じたいって
ことだよね?
それならQDialog::open()を使えば良い。この関数はダイアログをモーダル表示して
すぐにリターンする。閉じる時はclose()で閉じる。

77 :12/03/01
>>76
ありがとうございます
やってみます

78 :12/03/02
VS11のExpressEditionはWin8専用で、Metroアプリしかビルドできないみたいだぞ
競合IDEメーカーがいなくなったからPro以上を売りたいのかも知れないが
Qt Creatorの存在をお忘れだったようだな!

79 :12/03/02
いいかげん板違い。マ板にでも行って分かったようなこと語っててくれ

80 :12/03/02
Nokiaの腰巾着よりまともだな。

81 :12/03/03
ソースから特にオプションをつけないでビルドしたら30GBになってしもた
気をつけてね

82 :12/03/03
サイズを小さくするには
どんなオプション付けるん?

83 :12/03/03
QT初心者だが、
qmake -project
qmake
make
ってやったら don't know how to make 'FORCE' と出たんだが。

84 :12/03/03
qbs の紹介
http://labs.qt.nokia.co.jp/2012/03/03/introducing-qbs.html
何年もの間、qmake とは愛憎の入り混じった関係を育んできました。
ちゃんと仕事はしてくれるのですが、うまく行かないこともあり、
多くの人がメンテナンスは不可能だと考えています。

85 :12/03/04
noDebug

86 :12/03/04
>>82
pdbファイルがでかいので-nomake samplesなのかも

87 :12/03/05
Qt初心者です。
resizeEventに関して質問があります。
QPlainTextEditにでかいファイルを読み込ませた状態で
「MainWindowのサイズを変更したことによる
リサイズイベント」が発生すると、非常に処理が重いです。
- イベントの発行数を減らす
- qsplitの子ウィジェット感のサイズ変更のように、
サイズ変更が終了した時だけ描画する
などで対処したいのですが、何か良い方法はありませんか。
現在の第一候補はQPlainTextEditの resizeEvent のオーバーライドで、
イベント発行数を1/5ぐらいにする方法です。
(親クラスのリサイズの呼び出し回数を減らす)
ただ、問題もありそうなので、もっと良い方法を探しています。
アドバイスいただけないでしょうか。
よろしくお願いします。

88 :12/03/06
>>87
> QPlainTextEditにでかいファイルを読み込ませた状態で
> 「MainWindowのサイズを変更したことによる
> リサイズイベント」が発生すると、非常に処理が重いです。
リサイズイベントハンドラのソースは以下のようになっています。
if (e->oldSize().width() != e->size().width())
d->relayoutDocument();
たぶん、relayoutDocument() で右端で折り返す処理を行なっているんだけど、
行数が多いとこれに処理時間がかかってしまうんだと思う。
表示されている部分だけをレイアウト処理して、それ以外はマルチスレッド化
するといいとは思うけど、対処はかなり難しいと思う。

89 :12/03/06
初心者質問ですんません
エンターを押下したら特定のュボタンをクリックしたのと同じ効果となる方法ってありますか?

90 :12/03/06
>>89
> エンターを押下したら特定のュボタンをクリックしたのと同じ効果となる方法ってありますか?
keyEvent() で エンター かどうかを判定し、そうなら ュボタンの clicked() シグナルを
エミットすればいいんじゃね?

91 :12/03/06
>>90
clicked()シグナルのエミットのみでは、クリックしたのと同じ効果にはならないし、
エンターの判定には、どこにフォーカスがあるかどうかも考慮する必要があります。
>>89
ュボタンのanimateClick()を呼べばクリックしたのと同じことになります。
例えば、どこでもよいからエンターを押したのを判断するならば、QApplicationにイベントフィルターを設定して、
エンター押下を判断して、特定のボタンに対して、animateClick()を呼べばよいでしょう。

92 :12/03/07
>>89
QDialogだけかもしれないけど、QPushButtonのdefaultをtrueにすれば良さそう。

93 :12/03/07
>>92
QLineEditなどがあったらダメでしょう。

94 :12/03/07
Qtwebkitの開発停滞してんなあ

95 :12/03/07
ちょっと質問。
QListとかQHashなどのコンテナってスレッドセーフにできてるんですか?
自分の作ったものじゃないウィジェッドを使ってプログラムを作ってる最中なんですが、
スロットの中で、QListのメンバ変数にデータを追加する時に、
アクセスエラーと言われて落ちてしまいます。

96 :12/03/07
基本的にドキュメントにスレッドセーフってわざわざ書いてないものについては
自動で排他制御したりはしてくれないので
別スレッドからインスタンスに触るときは、QMutexLockerなりなんなりで保護しないとダメです

97 :12/03/08
ありがとうございます。なるほど・・・。
QMutexLockerってものがあったんですね。

98 :12/03/08
オープンソースのものをとりあえずコンパイルしてみたいという段階の初心者なのですが、
CMake Error at c:/CMake/share/cmake-2.8/Modules/FindQt4.cmake:575 (MESSAGE):
It appears you're trying to use Visual Studio with Qt built by mingw.
Those compilers do not produce code compatible with each other.
Call Stack (most recent call first):
CMakeLists.txt:52 (FIND_PACKAGE)
これはどう言ったエラーでしょうか
mingwとgccでcmakeしろと書いてあったのでやってみています。
エラー文でclがないとエラーが出たのでvisual studio expressを入れて、
次はqtがないとエラーが出たのでqt sdkを入れてみました。
エラー文はqtとvisual studioは競合しているように言ってるように思うのですが・・

99 :12/03/08
qt sdkでないqtを入れてみたら先に進みました
失礼しました

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
CORBAなら俺に聞け (134)
【モダン推奨】Perlについての質問箱 50箱目 (162)
Lisp Scheme Part34 (336)
ニートの俺が何か開発して食いつなぐスレ (687)
PureBasic (130)
【O3D】HTML5用 3D API WebGL 【Canvas:3D】 (367)
--log9.info------------------
鬼さくら★第四帝國 (489)
Card Wirth さくら (305)
滋賀県「木之本町」・・・・ (224)
■ 移転ですー (172)
祝! CCさくら板10周年達成!! (284)
◆ 18歳未満に「見える」CGは児童ポルノと認定へ (388)
カードキャプターすみれ さくらと小狼の子供たち3 (427)
●○●康臣技巧について語るスレ●○● (837)
ほえほえ詐欺 (465)
スーパーロボット大戦 (738)
魔法少女プリティサミー★砂沙美たん&美紗緒っち (244)
【ネコミミ】ラグナロクオンライン@さくら板 3【ウサミミ】 (223)
よつばとCCさくら板 (104)
X (185)
牧野由依 (322)
神無月の巫女 (103)
--log55.com------------------
【プリコネR】ペコリーヌはチラ魅せπにチラ魅せ靴下かわいい
【ひだまりスケッチ】ゆのに萌えるスレ69x| _ |x
【アルテ】アルテは谷間画家見習いかわいい
【イエスタデイをうたって】森ノ目しな子の操を守る会かわいい
【アニポケ】サトシ歴代シリーズ総合ファンスレpart40【主人公】
【とある魔術の禁書目録】インデックスちゃん60冊目
【放課後ていぼう日誌】帆高夏海はデコしっぽかわいい
【22/7 ナナブンノニジュウニ】河野都は浪速のおしゃべりかわいい