1 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 21:49:20 ] クロスプラットフォーム GUI ライブラリの wxWidgets (旧 wxWindows)についてのスレ。 本家 www.wxwidgets.org/ wxWindows日本語プロジェクト wxwindowsjp.sourceforge.jp/ Let's wxWidgets dot-gray.s33.xrea.com/ wxWindowsで始めるC++ GUIプログラミング www.h3.dion.ne.jp/~k5_n/wxwin/ wxWidgets でクロスプラットフォーム GUIアプリを作ろう 0xcc.net/pub/uu-2004-08/
367 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 23:23:21 ] >>363 マウスイベントハンドラで Refresh() を呼んでPaintイベント出してるとかいった状況? もしそうなら、Refresh() 呼んだ直後に Update() 呼べば、同期的に画面更新できるよ。 (つまり、Update() から戻ってきたときにはPaintイベントが処理されて、画面更新が終わってる)
368 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 23:39:52 ] >>367 マニュアル見る限りではUpdate()呼ぶならRefresh()要らんと思う
369 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 23:49:37 ] >>368 マニュアルのUpdate()のとこに、 Use Refresh first if you want to immediately redraw the window unconditionally. ってあるから、Refresh()いると思うよ。 無効領域がない状態でUpdate()しても何も起こらないと書いとる。
370 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 23:54:52 ] ごめんRefresh()のinsteadだけ見てた
371 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 09:11:40 ] 質問があります。 ボタンの上での右クリックイベントを捕捉したいのですが、 button->Connect(ID_RIGHT_CLICK, wxEVT_COMMAND_RIGHT_CLICK, wxCommandEventHandler(MyFrame::OnRightClick), NULL, button); としてもうまくいきません。 どうすればよいでしょうか。
372 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 12:28:29 ] >>371 OSは何? wxEVT_COMMAND_RIGHT_CLICKは Windows 95 and NT のみサポートらしいよ。 wxEVT_RIGHT_UPあたりで妥協しとくのが無難かもしれん。
373 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 12:36:07 ] >>371 あ、Connect() の最後の引数はbuttonじゃなくて、thisとかじゃない? eventSink引数には、イベント発生元オブジェクトじゃなくて、イベントハンドリングするオブジェクトを渡す。 だから、この場合はMyFrameオブジェクトを渡さないといかんです。
374 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 15:19:10 ] >>372 OSはWinXP Home Editonです。wxEVT_RIGHT_UPにするとイベントを捕捉できました。 ありがとうございました。 >>373 eventSinkにはMyFrameオブジェクトをわたせばいいのですね。 ありがとうございました。
375 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 18:50:14 ] タイマーイベントを使っていて反復実行している時 処理が混みだすとイベントがキューに溜まったような 状態になり他のイベントをリアルタイムに実行できなく なります。 溜まったイベントを削除する方法はあるんでしょか。
376 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 11:48:39 ] >>375 タイマー間隔を少し長くするか、wxIdleEventでRequestMore() しまくるなんてのはどうかな? たまったイベントの削除関数とかは見かけたことないなぁ(あるかもしれないけど)
377 名前:375 mailto:sage [2009/02/01(日) 17:54:01 ] 回答有難うございます。 Win32APIにはイベントを削除する方法があった気がしたので どうかなとおもったんですが。 時間管理を見直してみます。
378 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 14:12:47 ] 一番良いIDEは? ダイアログイパーイ作る場合ね。
379 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 14:34:46 ] Sizerの使い方を覚えたら、もうバカらしくてGUIで ダイアログ作ろうだなんて思わないけどね
380 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 14:40:26 ] コードでGUIを設定するのがバカらしいというのが一般的だが。
381 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 16:11:56 ] RADどれ?って質問だったら万人に薦められるのはwxFormBuilderくらいなんだがな RAD単体でPythonいらずってとこから IDEとなると自分で全部試せとしか言えない
382 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 16:15:11 ] >wxFormBuilder ラジャ 使ってみるお。
383 名前:323 [2009/02/10(火) 14:06:40 ] >>324 >>325 >>326 ありがとうございます!
384 名前:デフォルトの名無しさん [2009/02/11(水) 15:15:05 ] wxFormBuilderって、コンストラクタでnewしたインスタンスを デストラクタでdeleteしてくれないんだけど、これは自分で書くの?
385 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 17:37:33 ] 自動でdeleteしてくれるライブラリ(スマートポインタとか)使わないなら newした分だけdeleteするように書くしかないよ
386 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 17:58:47 ] 公式つながんない。
387 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:24:55 ] wxDevC++! ごめん嘘
388 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 11:42:37 ] ↑ 何がウソで何がホントかハッキリしる!
389 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 13:35:51 ] >>384 SizeにAddしたオブジェクトは勝手に削除される。 自分でdeleteしちゃだめ。 sizer.cpp の551行目
390 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 14:54:15 ] ひょっとして>>384 はGenerate Codeで吐き出されたコードに追記しようとしてるのか? Generate Inherited Classで継承したクラスに自分のコードを書くのが正しい使い方だぜ? そうじゃないと細かい修正でGenerate Codeしたらまた書き直さなきゃならないだろ
391 名前:384 mailto:sage [2009/02/12(木) 23:12:05 ] >>390 いや、継承して書くのはわかってたけど、吐き出されるコードも 読んでおこうと見てみたらdeleteしてなかったので、 どうすんだろうなぁと。 で、>>389 で納得しました。 ありがとうございました。
392 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 23:16:13 ] wxWidgetsはフレームワーク側で色々ゴニョゴニョしているから 正直、自分で組んでて不安になって来るんだよな。細かい挙動とか、特に。
393 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 00:44:18 ] Mac OS X 10.5にデフォルトで入ってるものを利用し、簡単なプログラムを組んだんだけど、 実行すると固まって操作できないのはそういうものでしょうか。 最新2.8.9のものをmakeして利用すれば問題ないのでしょうか。 っていうか、wxOSXっていつ頃になるの? それからWindows上でwxFormBuilderを使ってみたのですが、 イベント部のコードを吐いてくれるのはいいけど、 マージしてくれないので、使いにくい。 そうゆうもんですか。 DialogBlocksは有償だけあって使いやすかったけど、レジストしてないから制限に引っかかる。 金ないからorz なんかいいGUIのBuilderが欲しいと思った。
394 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 01:43:50 ] >>393 >Mac OS X 10.5にデフォルトで入ってるものを利用し、簡単なプログラムを組んだんだけど、 デフォルトでは wxPerl とか wxPython しか入ってないとおもったけど、どうやるの? OS X は実行ファイルは .app パッケージに入れないとイベント受け取れないから 固まったように見えますよ。 wiki.wxwidgets.org/WxMac_Issues#Building_a_MacOSX_application_bundle とか参照。
395 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 07:52:22 ] >>394 あ、そうなんですか。 Makefile書いてメイクしたのですが、minimalサンプルみたらxcodeのファイルがありますね。 MacはMacの作法にのっとってオブジェクトを配置しないといけないんですね。 ちょっとやってみようと思います。 因に私がやったメイクは、LinuxのwxGTKを使うように、 wx-config でインクルードとライブラリをあててmakeしました。 wxMacを特別に入れた記憶はありません。
396 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 09:11:03 ] >>395 なるほど、wxPerl とかだけでなくて wxWidgets そのものが デフォルトでインストールされてるんですね。そりゃそうか。
397 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 14:17:50 ] もうすぐ2月が終わる 2.9.0来るかなぁ
398 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 16:32:53 ] Eclipse CDTでwxしようとしてるんですが、ビルドとかは問題なくできるものの 補完のためのインデクサが Syntax error: DECLARE_EVENT_TABLE(); とかポップアップしてきて機能しません。 ビルド自体には影響してませんが、これだとエラーと非エラーが混ざって 使い勝手が悪いので、なんとか正常に処理させたいのですが、同じように 困ってる話は見つかっても解決方法が見当たりません。 どうすればいいでしょうか?
399 名前:デフォルトの名無しさん mailto:sage [2009/03/02(月) 23:10:17 ] wxPython2.8のAnimationが返す値おかしくね? DisposalMethodがどうも-1ずれてるみたいし BackgroundColourもなんか変だ 俺のだけ?
400 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 13:38:10 ] ソースあるんだから自分で調べたらいいじゃんか
401 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 19:05:13 ] うんその言葉で読む気になったわ 、で-1ずれてんのはcoincideだってさ BackgroundColourは最初のフレームから 背景色に初期化しなかった俺のミス ここで聞くよりソース読んだほうが 確かに早いけど誰もその情報は共有できん のだ いい意見有難う
402 名前:デフォルトの名無しさん [2009/03/10(火) 10:16:05 ] 質問 レイアウト制御において Sizer > Panel > Sizer Sizer > Sizer ってやっぱり違うんですか?( > は入れ子の関係を表してます) コントロールをまとめる枠としての Panel の存在意義がイマイチわからないっす。
403 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 02:02:27 ] Panelは子コントロールの親になる Sizerはあくまで下層要素のサイズを制御するだけ
404 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 07:05:48 ] >>403 ありがとうございます。 単にレイアウトを制御したいだけなら Sizer を直に入れ子にして、 コントロールを論理的にグループ化したい場合は Panel でまとめる、という感じですね。
405 名前:デフォルトの名無しさん [2009/03/11(水) 08:02:25 ] いつも使ってて思うことなんだけど、Sizerというクラスをなくして レイアウトの機能もWindowに含めてほしい(統合してほしい) そうなっていないということは、そうすると何か問題があるのだろうか
406 名前:405 mailto:sage [2009/03/11(水) 08:03:13 ] ごめんageてしまった
407 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 08:19:10 ] >>405 コントロールのレイアウトのためだけにWindowを入れ子にするのは メモリ効率が悪いからじゃないでしょうか だからレイアウトアルゴリズムだけをクラスとして抜き出して Sizer なんてものを 作ったのでは
408 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 23:22:44 ] レイアウトアルゴリズム増やそうとする度に wxWindowクラス書き換えて肥大化していくのは困るでしょ
409 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 10:16:25 ] GoF でいうところの Strategy パターンというやつだな
410 名前:デフォルトの名無しさん [2009/03/13(金) 19:16:34 ] 質問させて下さい。 wxRuby でちょっとした GUI ツールを書いているのですが、 ウィンドウを close してアプリを終了してもプロンプトが返ってきません。 ウィンドウを XRC から作るように変更したところでこのような 現象が発生するようになりました。 具体的には Wx::XmlResource.get.load_frame_subclass(self, nil, "MyFrame") があると上記の問題が発生します。 on_exit も呼ばれず、どうも何かが解放されずに残っていてアプリの終了を 邪魔しているような印象です。 どのような原因が考えられますか?
411 名前:410 mailto:sage [2009/03/13(金) 19:18:34 ] 補足 ウィンドウはきちんと表示されており、イベントハンドラの設定もうまくいっています。
412 名前:410 mailto:sage [2009/03/13(金) 22:04:27 ] CloseEvent に対するデフォルトのハンドラが呼ばれなくなったと推測 XRC からリソースをロードした段階で CloseEvent をトラップする別のハンドラが 設定されたのか? よくわからん。調査続行 どなたかヒントでもあればお願いします m(__)m
413 名前:410 mailto:sage [2009/03/13(金) 23:24:53 ] evt_close {|event| exit } でとりあえずプロンプトは戻るようになった。
414 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 10:35:35 ] 俺もその現象あった XRCは使ってなかったけど、Frameのサブクラス作ったからそのせいかも
415 名前:410 mailto:sage [2009/03/14(土) 11:31:46 ] >>414 自分も Frame のサブクラス作ってますが、それだけでは上記の問題は 発生しませんでした。 GUI が複雑になってきたので XRC をロードするように変更したところ close でプログラムが終了しなくなりました。 閉じられるウィンドウが最後の一枚だったら exit というハンドラを自分で 設定すれば元の動作に戻るはずですので、そうしようと思ってます。
416 名前:デフォルトの名無しさん [2009/03/19(木) 19:09:19 ] なんで SetCellAttr はないんだ? セル単位で制御したいのに まあ、自分で書いたらいいだけだけど
417 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 11:26:29 ] 2.8.10安定版リリース
418 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 21:19:15 ] 保守総一郎
419 名前:デフォルトの名無しさん [2009/03/31(火) 21:23:43 ] Qtに流れ始めたかのぉ??
420 名前:デフォルトの名無しさん mailto:sage [2009/04/01(水) 11:07:04 ] 最近 wxWidgets 使い込み出したのに廃れてもらっては困るぜ!
421 名前:デフォルトの名無しさん mailto:sage [2009/04/01(水) 11:58:06 ] 廃れてるんじゃなくて、枯れてんだよ。 だから安心して使うがいい。
422 名前:デフォルトの名無しさん mailto:sage [2009/04/01(水) 12:44:39 ] Qtとどっちがつおい?
423 名前:デフォルトの名無しさん mailto:sage [2009/04/01(水) 13:21:00 ] 字面でみると wxWidgets の圧勝w Qt のクラス名って全部 Qなんたらで間抜け面 きゅうりのQちゃんかよw
424 名前:デフォルトの名無しさん mailto:sage [2009/04/01(水) 14:09:34 ] その発想は全くナカタ
425 名前:デフォルトの名無しさん mailto:sage [2009/04/01(水) 15:08:01 ] ガンダムだって WX はあるけど Q はないしなw
426 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 17:42:54 ] ここはデスクトップアクセサリを作る人も見ていいところですか??
427 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 17:44:11 ] と思ったけど、なんか違うみたいですね? あのYahoo! Widgetとは別もんですか。
428 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 17:48:41 ] 全然違うよ。 これはクロスプラットフォームなGUIライブラリ。 アプリケーション全般を作るためのライブラリ
429 名前:デフォルトの名無しさん [2009/04/04(土) 19:59:33 ] 素朴な疑問 wxWidgets ってウィンドウを座標(-1, -1)に配置できなくね? というか、DEFAULT_POSITION と座標(-1, -1)を区別できないような…… 実用上困ることはないけど、デフォルト値がなにかと -1 なのはどうかと思った。
430 名前:デフォルトの名無しさん mailto:sage [2009/04/05(日) 10:56:39 ] 最小値が -1 の GridCellNumberEditor も作れねえ サブクラス作りなさいってことか
431 名前:デフォルトの名無しさん [2009/04/11(土) 17:18:38 ] ブラウザコントロールって何かお勧めありますか? Windows, Linux両方でまともに動くやつで。
432 名前:デフォルトの名無しさん mailto:sage [2009/04/11(土) 20:31:04 ] >>431 使ったことないけどwxHtmlWindowってのがあるね
433 名前:デフォルトの名無しさん mailto:sage [2009/05/09(土) 13:35:48 ] ライブラリビルドでwx.dswとwx_dll.dswの違いって何ですか?
434 名前:デフォルトの名無しさん mailto:sage [2009/05/09(土) 16:15:04 ] static linkとdynamic linkの違い 前者は実行ファイルが巨大になる 後者は実行ファイルは省サイズだが配布時にdllを含める必要がある
435 名前:デフォルトの名無しさん mailto:sage [2009/05/09(土) 21:21:03 ] Ubuntu8.04、C++で開発してます。wxGLCanvasで点を描画したいのですが、 glPointSizeで点のサイズを3に設定して描画しても点のサイズが1と変化がありません。 ちなみに、fedora9, Vmware用のUbuntu8.04では意図どおりにサイズが変更されます。 下のようなコードなのですが、同じような経験をされた人いませんか? void MyFrame::OnPaint(wxPaintEvent& event) { gl->SetCurrent(); glPointSize(3); glClearColor(0.f, 0.f, 0.f, 0.f); glClear(GL_COLOR_BUFFER_BIT); glBegin(GL_POINTS); glColor3f(1.f, 0.f, 0.f); glVertex2f(0.f, 0.f); glEnd(); glFlush(); gl->SwapBuffers(); }
436 名前:デフォルトの名無しさん mailto:sage [2009/05/09(土) 21:54:40 ] glGetIntegervでGL_POINT_SIZE_RANGEの値を調べてみては?
437 名前:デフォルトの名無しさん mailto:sage [2009/05/19(火) 11:58:21 ] TreeCtrl上でキー入力すると最初の文字がマッチした項目に移動するんだけど、この動作って無効にできない? Keydownイベントとか設定しても、マッチしないキーを押すとポンポンエラー音みたいなのが鳴ってうっとうしいんだよね・・・
438 名前:デフォルトの名無しさん mailto:sage [2009/05/21(木) 10:18:31 ] >>437 イベントを skip しなければいいのでは?
439 名前:437 mailto:sage [2009/05/21(木) 15:16:31 ] >>438 特にskipする記述はしていないのですが、上記の動作をしてしまうんです。 明示的にskipしないようにする記述がいるのでしょうか? なんかkeydownイベントの前に動作している気がするんですが、他の箇所に書く必要があるんですかね? まだあまりよくわかってないので質問ばかりになってしまい申し訳ありません。
440 名前:デフォルトの名無しさん mailto:sage [2009/05/22(金) 07:08:10 ] wxではあまり細かいことは気にしないのが吉。 下のレイヤのデフォルト動作の違いによるプラットフォーム間での差異とか結構あるし。
441 名前:437 mailto:sage [2009/05/22(金) 12:46:37 ] >>440 なるほど、そうゆうものと割り切った方がいいんですかね。 なんか方法があるだろうと思ってはまってたんで、ちょっと気が晴れました。ありがとうございます。 結構細かいことをやりたかったんで、他のものも含めて考え直してみようと思います。 QTとかどうなんですかねぇ。似たような感じもしますが・・・
442 名前:デフォルトの名無しさん mailto:sage [2009/05/22(金) 15:31:21 ] >>441 Qtはwxとは思想が逆。OSネイティブGUIアプリとの違いは出やすいが 自作クロスアプリでのOSごとの違いを少なくするのはやりやすい。
443 名前:デフォルトの名無しさん mailto:sage [2009/05/22(金) 15:42:42 ] ↑ 分かるようで分からない文章だな
444 名前:デフォルトの名無しさん mailto:sage [2009/05/22(金) 16:14:32 ] どこがわからない? そのOSの他のソフトと同じような動作にしたい→wx OSが何であろうと同じソフトなら同じように動作させたい→Qt ならわかる?
445 名前:デフォルトの名無しさん mailto:sage [2009/05/22(金) 16:48:57 ] 文章は分かったが、実態は分からないw
446 名前:デフォルトの名無しさん mailto:sage [2009/05/22(金) 16:58:15 ] 少なくとも>>441 の疑問には即してないな 俺はどうでもいいが
447 名前:441 mailto:sage [2009/05/24(日) 16:59:35 ] Qtいろいろ試してみました。 442さんのおっしゃるとおり思想の違いなのか結構細かいことまで設定できるようです。 キーイベントはデフォルトの動作を上書きできるみたいですね。 ポンポンエラー音みたいなのも鳴らないし、いい感じです。 Qt Creatorが使いやすくてレイアウトがとっても楽なのもうれしいですね。 ここにQtのことを書くのはあれなんでこれぐらいにしときますが、自分の要件には合ってる気がするんでこれでいってみようかと思います。 遅くなりましたが以上報告でした。お騒がせしました。
448 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 01:06:28 ] そうかそうか。おれはどっちも好きなんでガンバレ。 そういうわけで、俺と>>441 の間では通じてたようなのでOKだな。
449 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 21:37:25 ] >>448 終わりよければすべて良しってやつか
450 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 14:26:51 ] ウックス
451 名前:デフォルトの名無しさん mailto:sage [2009/06/18(木) 08:17:18 ] すみません、2.8.8をスタティクライブラリとしてコンパイルするにはどうすればいいのでしょう。 調べてはみたのですが、DLLにするやり方しかのっていないのです。
452 名前:デフォルトの名無しさん mailto:sage [2009/06/18(木) 09:05:37 ] install.txtとかくらい読め
453 名前:デフォルトの名無しさん mailto:sage [2009/06/18(木) 15:33:40 ] >>451 環境くらい書けよ。Macか?
454 名前:デフォルトの名無しさん mailto:sage [2009/06/18(木) 18:21:01 ] >>452 すみません、なにしろ初心者なものでして… >>453 申し訳ない、環境はWindowsXPでCode::Blocksで開発する予定です。
455 名前:デフォルトの名無しさん mailto:sage [2009/06/18(木) 21:27:52 ] すみません、家帰って>>452 さんのいっていたやつ読んだら解決しました。 ちょっと首吊ってきます・・・
456 名前:デフォルトの名無しさん mailto:sage [2009/06/19(金) 15:25:04 ] ようやくスタートラインに立てたんだから がんばれよー
457 名前:デフォルトの名無しさん mailto:sage [2009/06/19(金) 21:37:23 ] みなさんシリアル化とかどうしてます?
458 名前:デフォルトの名無しさん mailto:sage [2009/06/21(日) 09:29:42 ] wxWidgetsを使った日本発のオープンソースプロジェクトってありますか? もしあれば参考にしたいので教えてください。
459 名前:デフォルトの名無しさん mailto:sage [2009/06/21(日) 09:42:02 ] sourceforge.jpとかで検索してみるとか。 www.google.co.jp/search?hl=ja&q=wxwidgets+site%3Asourceforge.jp+-site%3Ailaliart.sourceforge.jp+-site%3Awxwindowsjp.sourceforge.jp
460 名前:デフォルトの名無しさん mailto:sage [2009/06/21(日) 10:06:47 ] ありがとうございます。wxRubyやwxPythonじゃなくて C++のを探していたのですが、あまり見つからないですね。 MalonNoteというのがあったので見てみます。
461 名前:デフォルトの名無しさん mailto:sage [2009/06/22(月) 22:42:46 ] wxPython の wx.lib.floatcanvas と同等の機能を持った wxWigets の C++ ライブラリってないでしょうか?
462 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 19:24:12 ] 2.8.10を使っていますがJaneStyleのスレ覧タブみたいなものはなんていうコントロールなのでしょうか?
463 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 11:17:00 ] >>462 標準のだと wxNotebook 拡張されているのは wxFlatNotebook
464 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 16:48:09 ] >>463 thx!
465 名前:デフォルトの名無しさん mailto:sage [2009/07/02(木) 22:00:06 ] wxMSW-2.8.10を使っています。 wxMessageBoxやwxAboutBoxを使うとビープ音が鳴りますが これを鳴らさなくする方法はありますか?もしかしたら wxWidgetsじゃなくてWindowsが出してるのかもしれませんが。
466 名前:デフォルトの名無しさん mailto:sage [2009/07/03(金) 10:39:41 ] >>465 うん、出しているのはWindows。 それが嫌なら wxDialog あたりを継承して自作するのが楽だと思うよ。
467 名前:デフォルトの名無しさん mailto:sage [2009/07/03(金) 17:31:34 ] >>466 ありがとうございます。自作することにします。
468 名前:デフォルトの名無しさん mailto:sage [2009/07/22(水) 06:48:33 ] クロスプラットフォームなアウトライナーみたいなのを作ってます wxRichTextCtrl使ってみようと思ってサンプル動かしてみたんですが wxGtkではwxRichTextCtrlでインライン入力できないんですか?
469 名前:デフォルトの名無しさん mailto:sage [2009/07/24(金) 10:53:48 ] >>468 wxGTK は触ったことないからなんとも言えないな〜 wxWidgets は IME 関連の制御をしていないと思うから、 なんらかのメッセージを処理すればいいんだとは思うけど。
470 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 06:15:03 ] wxWidgets 3.0っていつごろリリースされそうですか?
471 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 07:28:49 ] >>470 ロードマップだと trac.wxwidgets.org/wiki/Roadmap We hope to make 3.0 before the end of 2009. 年末じゃねえの。まあこういうのは早くなることはなく、大概おくれるもんだけどなw
472 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 07:57:52 ] >>471 thx
473 名前:デフォルトの名無しさん mailto:sage [2009/08/14(金) 16:42:31 ] wxFormBulderって生成するコード変じゃね? ダイアログにボタンが一個だけのプログラムを書いてみた。 ダミーのイベントハンドラをvritual宣言しておくから、 サブクラスを作って、そこにボタン処理などの本来のイベントハンドラを まとめて書きなさい、という方針はすばらしい。 けど、登録するイベントハンドラのアドレスが、サブクラスのアドレスじゃなくて、 継承元のダミーのアドレスでは、飛ぶはずないじゃん。 作者、なにを勘違いしているんだろ。 さわり始めて2日目の俺のほうが勘違いしている?
474 名前:デフォルトの名無しさん mailto:sage [2009/08/15(土) 12:28:24 ] >>473 つ Code::Blocks
475 名前:473 mailto:sage [2009/08/15(土) 17:39:20 ] Code::Blocks 調べました。ちゃんと動きました。 ubuntuだと日本語が入力ができないとか、 標準入出力を扱うウィンドウがないとか、 多少ありますが、素晴らしいと思いました。 進歩しているんすね。癖になりそうです ありがとうスッ。
476 名前:デフォルトの名無しさん [2009/08/27(木) 13:32:21 ] 元となったデザインがMFC構造で古すぎるので消えるって、本当でつか?
477 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 15:34:59 ] yes
478 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 07:08:07 ] wxPythonのサイト大丈夫か? www.wxpython.org/ <a target=_top href="accountin から始まるカジノがどうって行は前は無かったと思うが。
479 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 09:20:35 ] Ou voyez vous?
480 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 00:37:02 ] wxCode の wxCurlって使ってる人いますか? どうにもこうにもSetOptが効かなくて困ってます。 wxCurlHTTP http("https://hogefugamoge.jp"); http.SetOpt( CURLOPT_USERAGENT, "MyUserAgent" ); http.Get( filepath ); って感じでやってるんですが、何事も起きなくて・・・・ SetOptのreturnはtrueなんで、wxCurl君は正常に処理してるつもりっぽいのですが・・・ ちなみにSSL通信がしたくてwxCurlを使ってるんですが、 他のライブラリでもSSLでPUTとかDELETEとかできればそっちでもOKです。 すみませんがよろしくお願いします。
481 名前:480 mailto:sage [2009/09/08(火) 00:40:33 ] すみません書き忘れです。 wxWidget本体は wxMSW 2.8.10 wxCurlはsvn版 ( 2009-09-01にsvnリポジトリからダウンロード ) 開発環境は Code::Blocks 8.02 mingw同封版 です
482 名前:480 mailto:sage [2009/09/08(火) 05:44:40 ] すみません やっとこさ自己解決しました。 どうやらどのHTTPメソッドを発行する関数でも、 SetCurlHandleToDefaults という関数でヘッダー諸々の初期化を行っており、 wxCurlHTTPクラスを継承したクラスを作り、 この関数をオーバーライドしてやらないとダメみたいです。 似たようなことをwxCurlBaseを継承したwxCurlHTTPで行っているので、 それを参考にすればOKかと。 お騒がせしましたー
483 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 09:26:06 ] すみません すみません すみません omedeto-
484 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 12:49:07 ] wxWidgets 2.9.0 がリリースされたね。 つ www.wxwidgets.org/
485 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 22:11:21 ] VC6だけじゃなく、VC7からVC9までのプロジェクトファイルがある! こいつは嬉しい。
486 名前:デフォルトの名無しさん mailto:sage [2009/09/14(月) 00:02:34 ] 初心者なのでつまらない質問でスマンけど... wxWidgetsをビルドする時、makeのオプションでBUILD=debugにすると、デバッグバージョンの ライブラリがビルドされるけど、これってwxWidgets自体をデバッグしたい時だけに必要で、 wxWidgetsを利用するアプリ側だけデバッグしたいときはreleaseバージョンのライブラリ 使ってもいいの? それともアプリをデバッグする場合(Step inでwxWidgetsのコードに入っていかなくても良い場合)でも、 ライブラリはdebugバージョンじゃないとダメなの?
487 名前:デフォルトの名無しさん mailto:sage [2009/09/14(月) 00:50:49 ] yes
488 名前:デフォルトの名無しさん mailto:sage [2009/09/14(月) 00:51:31 ] no
489 名前:デフォルトの名無しさん mailto:sage [2009/09/14(月) 01:19:57 ] wxWidgetsというよりコンパイラやライブラリの仕様によると思うけど MSVCみたいにデバッグ用のランライムライブラリがある場合 アプリとライブラリでdebug/releaseを別にしちゃうと リンクするランタイムライブラリが別になるから スレッド関連とか例外の取り扱い、スタックフレーム、 その他リソースを確保するコード等でおかしなことになるかもしれない 例えば、メモリリークを検出するようなデバッグ機能がある場合 ライブラリで確保したメモリをアプリで解放したりすると 管理情報の整合性が取れなくなるかもしれない
490 名前:デフォルトの名無しさん mailto:sage [2009/09/14(月) 09:53:45 ] リリースバージョンじゃないとwxASSERTとかそのへんも効かなくなるから デバッグやるならデバッグバージョンの方がいいんじゃない
491 名前:486 mailto:sage [2009/09/14(月) 13:50:52 ] 皆さんレスサンクス。素直にdebugバージョンとreleaseバージョンをbuildして使い分けることにします。
492 名前:デフォルトの名無しさん mailto:sage [2009/09/14(月) 14:30:19 ] そこらへんCodeBlocksとかwxDevC++とか使ってみると参考になるかもよ
493 名前:デフォルトの名無しさん mailto:sage [2009/09/14(月) 17:32:34 ] ダイアログ上に置いたwxStaticTextの表示/非表示をボタンで切り替えるようなことを やろうと思って,wxBoxSizer(wxVertival)をダイアログ上に縦に並べて,上のサイザーに 表示/非表示するwxStaticTextを入れ,下のサイザーに切り替えボタンを入れたんだけど, wxStaticTextのスタイルをwxST_NO_AUTORESIZEにしておいても,Hide()とかShow(false)を 呼ぶとStaticTextそのものが消滅してしまうようで,配置が狂ってしまう。 非表示の場合はSetLabel()で空文字を設定し,表示する場合は表示したい文字を設定すれば 一応できることはわかったんだけど,もっとスマートなやり方ありませんか?
494 名前:493 mailto:sage [2009/09/14(月) 18:03:47 ] >>493 自己レス。StaticTextの入っているBoxSizerにSetMinSize()で最小サイズを設定してみたけど やっぱりダメ。 StaticTextのHide()をダイアログのコンストラクタからOnInit()移動してみたけどやっぱりダメだ。 どうすればいいだろ?
495 名前:デフォルトの名無しさん mailto:sage [2009/09/14(月) 21:20:53 ] とりあえず俺はLayout()呼んで一応うまくいってる
496 名前:493 mailto:sage [2009/09/15(火) 10:45:08 ] >>495 Layout()でうまく行った。よく読むとヘルプにも書いてあるね。サンクス。 しかし,サイザーを使いこなすのは難しいなぁ...
497 名前:デフォルトの名無しさん mailto:sage [2009/09/15(火) 13:34:05 ] またまた質問させてください。 sizerを使って,DialogやFrameのサイズを中身にあわせるというのはわかったけど, 逆にDialogやFrameのサイズを固定にしておいて中身を配置したい場合もあるでしょう? wxWidgetsの設計思想に反するのかもしれないが,うまいやり方はありませんか? Code::BlocksやwxDev-C++でいろいろ試してみてるけど,うまく行かない。 Frameの中にBoxSiserを貼って,その中にPanelを貼ってパネルのサイズを設定し, さらにその中にBoxSizerを貼ってみたけどやっぱりダメだった。 LaTexの\vssや\hssみたいに,自由に伸び縮みできる要素があれば出来そうなんだけど...
498 名前:デフォルトの名無しさん mailto:sage [2009/09/15(火) 13:39:58 ] sizerを使う
499 名前:497 mailto:sage [2009/09/15(火) 13:45:53 ] >>498 いや,sizerを普通に使うと,DialogやFrame全体のサイズが中身に合わせて変わってしまうでしょう。 sizerをどう使えば全体のサイズを固定に出来るのか教えてください。 見えない色にしたStaticLineをつっかえ棒みたいに入れるとか,いろいろ考えてはいるんだけど,一般的には 皆さんどうやってるのか知りたい。
500 名前:デフォルトの名無しさん mailto:sage [2009/09/15(火) 13:51:39 ] expand
501 名前:デフォルトの名無しさん mailto:sage [2009/09/15(火) 18:20:11 ] >>499 Sizerを使わない ウロだけどCodeBlocksのwxSmithならSizer置かなくてもポトペタできるはず あと最近はCodeBlocksに移っちゃったからこっちもウロだけど、wxDevC++もSizerなしでポトペタできるはず
502 名前:497 mailto:sage [2009/09/15(火) 18:59:43 ] >>500 , >>501 サンクス。やってみます。 あと,C::BだとFrameのコンストラクタ内に生成されるコードの後で,SetClientSize()を呼ぶ手も あるみたい。つーか,Frame内にsizerを追加するコードの前にSetClientSize()が自動で記述 されてしまうのが,原因のような気もする。
503 名前:デフォルトの名無しさん mailto:sage [2009/09/16(水) 11:56:43 ] >>502 ちと手元に資料がないんだけど、幅と高さだけを指定する 空の Sizer がなかったっけ?
504 名前:デフォルトの名無しさん mailto:sage [2009/09/16(水) 13:44:56 ] そいやCodeBlocksのwxSmithで、 メニューに項目追加って出来無くない? いくらやってもメニューバーと同じ階層に子メニューついかされちゃうんだけど・・・
505 名前:デフォルトの名無しさん mailto:sage [2009/09/21(月) 23:50:32 ] >>504 亀レスだけど,MenuBar editorで同じ階層に新しい項目を追加し,それを選択しておいて > ボタン を押すと一つ下の階層に移動するよ。 質問の意味がイマイチはっきりしないけど,メニュー項目の下の階層に子のメニュー項目を 追加したいって意味だよね? File->Open みたいに。
506 名前:デフォルトの名無しさん mailto:sage [2009/09/21(月) 23:55:31 ] >>484 2.9.0のsetup.hを読むと,wxUSE_UNICODE のところに「ANSIモードはobsoleteで,将来 なくなるぞ」って脅しが書いてあるな。 3.0ではANSIモードは削除されてUNICODEだけになるんじゃないか?
507 名前:デフォルトの名無しさん mailto:sage [2009/09/22(火) 03:38:41 ] wxWidgetsが依存しているlibsdlがx86_64でようやくコンパイル通るようになったと思ったら libsdl_mixerで死んだ。
508 名前:デフォルトの名無しさん mailto:sage [2009/09/23(水) 00:23:15 ] 2.8.10なんだけど、外部アプリケーションを実行するクラスってある?
509 名前:デフォルトの名無しさん mailto:sage [2009/09/23(水) 03:34:22 ] wxExecute wxShell
510 名前:デフォルトの名無しさん mailto:sage [2009/09/23(水) 10:33:19 ] >>509 サンクスでございます。
511 名前:デフォルトの名無しさん mailto:sage [2009/09/24(木) 12:06:53 ] wxWidgetsのunicode対応ってサロゲートペアに対応してる?
512 名前:デフォルトの名無しさん mailto:sage [2009/09/24(木) 12:47:47 ] >>505 ほあああ!! THX!! メニューバーエディタなるものの存在を知りました。
513 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 00:20:56 ] wxwigets2.8.1ってtdm版gcc4.4.1でコンパイルできる?
514 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 07:33:53 ] >>513 2.8.1じゃなくて2.8.10だよね。TDM版MinGWでコンパイルは可能だけど,4.4.1は問題があるので 一度4.4.1をインストールしておいて,後から4.3.3のcoreとg++のZIPファイルだけをダウンロードして 上書きしてから使うのが良い。全部TDM MinGWのHPのトップからダウンロードできる。 もちろん4.4.1のインストール時にcoreとg++をインストール対象から外しておいてOK。 何が問題なのかは,「Cygwin + MinGW + GCC相 談室 Part4」の最近の書き込みを見て。 簡単に言うと,コンパイルした.exeの実行がやたら遅くなる。 TDMのサイトの上の方にも[WARNING!]として書いてある。次期バージョンでは多分 解消されるんじゃないかな。 TDM氏はCode::BlocksのForumによくカキコしているから,当然wxWidgetsとの相性もよくなる ように考えているはず。
515 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 19:42:11 ] 自分のアプリケーションがいまどこのディレクトリに存在するかを取得する関数って何?
516 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 09:57:00 ] _argv[0]から実行ファイルのフルパスを取得して,最後のファイル名部分(なんたら.exe)だけ 削除すれば得られるでしょ? 別にwxWidgetsに限った話じゃないと思うが... それともwxWidgetsにそういうユーティリティ関数がないか?って話? wxAppにargvってメンバ変数があるし,GetAppNameってメンバ関数が あるから使えるんじゃないか? 試してないけど。
517 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 11:41:06 ] wxStandardPaths
518 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 17:30:33 ] >>515 docs.wxwidgets.org/stable/wx_filefunctions.html#wxgetcwd これのことか?
519 名前:515 mailto:sage [2009/09/28(月) 21:01:42 ] >>516-518 thx! >>516 そういやそういう手もあった。 >>517 求めてたのはこれ。
520 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 02:13:10 ] pwd()
521 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 07:59:29 ] カレントディレクトリと勘違いしてるヤツが多いな。
522 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 22:20:12 ] __file__
523 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 23:45:46 ] それはプリプロセッサが現在処理中のファイル名に置き換えてくれる 定義済みマクロじゃないのか? __file__ じゃなくて __FILE__ だと 思うけど。
524 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 03:01:27 ] os.path.fullpath(__FILE__)
525 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 20:53:30 ] コンパイル後、実行形式ファイルを他ディレクトリに移動したらアウツじゃねーの?
526 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 21:04:39 ] no problem
527 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 10:33:07 ] WINDOWSで,wxWidgetsを使ってアプリをタスクトレイに入れる方法はありませんか?
528 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 10:49:22 ] あります
529 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 20:10:45 ] 具体的に教えてください。
530 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 21:03:20 ] 調べたらわかりました。
531 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 22:24:07 ] なんか変なのが住みついたな。>>520 から偶数番号のレスしてるやつ。
532 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 23:54:35 ] お、俺じゃないぞ!
533 名前:527 mailto:sage [2009/10/08(木) 08:04:46 ] 自己解決しました。 wxTaskBarIconから派生させたクラスを作って使うんですね。 サンプルの taskBar にありました。
534 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 13:58:57 ] >>528 のおかげじゃないか
535 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 18:12:37 ] えーっと、軽く質問なんですが・・・ wxWidgetでは、二つ以上ウィンドウを表示するソフトを作ることはできますか?
536 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 22:17:14 ] できます。
537 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 23:52:19 ] 楽勝です
538 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 00:14:18 ] もしかしてMDIのことを言ってるの?
539 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 15:15:51 ] wxPerlの話題・質問はここでいいんでしょうか? ここはC++限定?
540 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 15:19:49 ] 内容によるんじゃなかろか とりあえず書いてみたらいかが
541 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 17:01:45 ] >>539 ああ、それなら wxPython の方が簡単に出来るよ。
542 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 17:04:21 ] C++限定じゃないと思うけど、C++とPython以外のことは 俺には答えられないぜ!
543 名前:デフォルトの名無しさん [2009/10/13(火) 19:23:06 ] 頭のいかれたとても恥ずかしい人は放置した方がいいぞ
544 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 07:48:05 ] どうせ大半の話題は共通するんだから wxPerlだろうとwxRubyだろうとwxBrainf**kだろうとここで問題なし ただし言語に由来する質問は答えられる人が居ない可能性あり
545 名前:535 [2009/10/14(水) 23:22:35 ] Show(frame)を二つ作ったら楽勝でした。ありがとうございます。
546 名前:デフォルトの名無しさん [2009/10/15(木) 16:22:53 ] wxPython でのサンプルを読んでまず適当にフレームを 表示させて描画してみているんですが,いくつかのサンプルにて wx.Frame や wx.Panel の __init__ への引数として 1)親ウィンドウがNoneというのはどういう意味でしょうか 2)id = -1となっているのはどういう意味でしょうか 意味もわからずとりあえずそうするとフレームは表示されますが・・
547 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 16:37:04 ] Frameの中にPanelを置いてPanelの親をFrameにしたときと しなかったときを比べてみれば分かる idはアクセスする必要がなければとりあえず-1
548 名前:デフォルトの名無しさん [2009/10/15(木) 16:43:16 ] >>547 ありがとうございます あれこれいじりつつあるんですが wxPython では stdout と stderr がコンソールではなく 何か特別なウィンドウに奪われてしまうみたいです。 すぐに消えてしまって例外のメッセージが見えないのですが 普通にコンソールに表示するようにはできるのでしょうか? ちなみに環境は Windows 上の Eclipse + PyDev でやっています
549 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 16:44:28 ] 一番手っ取り早いのはcmdの中でhoge.pyを実行
550 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 16:50:40 ] Panel の parent を None にすることはできないんですよね? Panel つーのはかならず親に Frame を指定しないとだめみたい
551 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 16:54:11 ] 実は Panel が理解できていない・・その存在意義が。 フレームの中にサイザーでくるんでコントロールを配置する。 という基本は理解したつもりなのですが、 パネルってなんだよ・・・と。 パネル・・・・・パネ・・・
552 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 17:10:01 ] 単に固定サイズの領域を作るだけのもの・・なのか? 少しずつ画面がにぎやかになってきてうれしいのですが 次々と文字列が出力されるログウィンドウのようなものを 複数開きたいと思っています。 こういう用途には wx.TextCtrl で作ったテキストコントロールに 次々とAppendTextしまくればいいということなんでしょうか? ほかに何書こう便利なコントロールが用意されていたりします? 今まで matplotlib で数値計算結果をプロットしてたのですが 計算経過を表示しつつアニメーションも表示しつつという アプリケーションを書いてみようとしています。
553 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 17:29:22 ] demoみた?
554 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 17:31:14 ] ttp://www.manning.com/rappin/
555 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 17:34:07 ] で、Qtとwxの使い分けはどうすればいいの。 いまwx使うのって、ネイティブな見た目にしたい時ぐらいしか利点ないのかな。
556 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 17:43:56 ] Qtもwxと同程度に同じ見た目にできるよ。 LGPLで高品質なQtか、自由に利用できるけど品質に難があるwxWidgetsか。
557 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 17:55:03 ] QtはRADツールQt Creatorの出来がイマイチなのと,Qt Creatorだとコードを書かなくても シグナルとスロットの指定だけで動作するようなものが出来てしまうので,それがかえって 都合悪い(可読性とかメンテ性の面で)。 まぁ,Qt Creatorの出来については生まれたてだから仕方ないかも。今後に期待。 wxWidgetsは俺はQtよりシンプルでわかりやすいと感じる。 あとRADツールもC::BとかwxDev-C++とか,出来のよいものが幾つかあるし。 wxDev-C++はとても良いんだけど,Subversionでソースコード落としてみたら Delphiで書いてあったのでちょっとがっかり(将来大丈夫なのか?)。 俺は元々C++ Builder使いなので,GUIとプログラムソースコードのシームレス開発に 主眼を置いてるから,他の視点から見ればまた違った評価も当然あるだろうね。
558 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 18:30:11 ] > Qt Creatorだとコードを書かなくても > シグナルとスロットの指定だけで動作するようなものが出来てしまうので コード書かない方法での指定方法じゃ、 何もつくれんだろ。 ボタン押したら終了するぐらいで 自作のスロットは、コード書かないとしていできない。
559 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 19:22:41 ] 言語によっても差があるよね RubyならほぼWxRuby一択
560 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 19:58:23 ] Python で GUI なネットワークアプリを作ろうとすると twisted のリアクタと wxPython のイベントループが 相性がいいみたいなので wxPython 使ってます。 Qt 先に覚えたら Qt マンセーになってたのかもしれないけど 先に wxPython 使い始めちゃったからなぁ。 各OSの標準的なコントロールを出来るだけ使うようにしているのはどっち?
561 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 20:25:03 ] 標準的なコントロールを使っているのかは知らないが ネイティブに見えるのはwxだと思う。 俺もwxの方がシンプルだと思うから好きだけど、 シンプルというより古いのかなって気はする。
562 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 23:41:59 ] japan.internet.com/webtech/20070604/12.html 「Qt 4.3 では対応をさらに進め、Vista スタイルに合わせるために 別途『QwindowsVistaStyle』クラスを実装した。そのため、 Qt ベースのアプリケーションは、Vista 環境でネイティブなルック&フィールを持つことになった」 さて、ネイティブに見えるのはQtの方かもしれんぞ。
563 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 00:01:30 ] wxWindows使ったときないけど、Qtいいお(´・ω・`) ここのみんなも使ってみてね。
564 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 00:12:07 ] >>557 確かにQt Creatorはちょっと...俺のPCだとよく落ちる。 斜向かいのヤツなんか、一度起動しなくなったと思ったら再インストールしても 二度と起動できなくなった。 コンパイル/リンカオプションをマニュアルでテキストファイルに書いとかなきゃ ならないのも、完成度まだまだだと思う。Code::Blocksなんか、多種類のコンパイラ に対応してるのに、オプションの指定は使用するコンパイラに合わせて細かく GUIから指定できるもんね。 >>558 Qtそんなに触ってないけど、スライドバー動かすと数字が変わる程度のことは コード書かなくても出来るtのをとなりのヤツがやってるの見たよ。 >>561 その古さがかえって都合いいこともある。 大型装置制御のアプリ作ってるんだけど、Windowsの進化に従ってlook & feelが 変わったらオペレーターが戸惑う。 それならLinux使えって言われそうだが、デバイスドライバがWindows用しかない 拡張ボードとか一杯使ってるからそうもいかない。
565 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 23:53:49 ] >>556 > LGPLで高品質なQtか、自由に利用できるけど品質に難があるwxWidgetsか。 LGPLだって事実上ほぼ自由に利用できるよ。 で,wxWidgetsの品質の難点って具体的にどんなところ?
566 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 01:23:46 ] >>565 wxGTKがgtkのim周りをきちんと実装してないから、ダイアログボックスの テキストフィールドで変換を確定しようとしたらOKボタンを押した扱いになって 入力が消える。 WindowsでwxGridでIME ONのまま入力を開始しても、フォーカスが当たってる セルが編集モードにならない。 こんな感じで、特に日本語環境であちこち穴が開きっぱなし。
567 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 02:23:53 ] www.wxwidgets.org/about/newlicen.htm The wxWindows Licence is essentially the L-GPL (Library General Public Licence) wxWindows ライセンスは 本質的にはLGPL QtがLGPLになって企業サポートがついたいま wxWindowsに利点があるのだろうか?
568 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 05:10:37 ] LinuxではGTK使ってくれてた方が好き。 あと開発コミュニティがオープンソースっぽくていい。 あまり大した利点じゃないな…。
569 名前:564 mailto:sage [2009/10/17(土) 07:21:35 ] >>566 wxGTKは使わないから知らんが, > WindowsでwxGridでIME ONのまま入力を開始しても、フォーカスが当たってる > セルが編集モードにならない。 いつの話? wxWidgets2.8.10(安定版最新)ではそんなことにはならないが... で、俺は別に wxWidgets > Qt と主張したいわけじゃない。 >>567 の言うとおり,QtにはNOKIAが付いたし,日本ではSRAがサポート してるから安心感はある。以前LGPLについて詳しく問い合わせた時も, ちゃんとした回答がすぐ返ってきた。 ただ,まともなRADツールがない。Qt Creatorは今のところ失格。 安定感、使い勝手とも×。自分だけで使うならいいかも知れないが、 チーム全体で使えるような代物じゃない。 Visual Studio用のアドオンも隣の席のヤツに評価してもらったが、 Visual StudioのIDEがQt用のRADツールに変身するわけじゃない そうで、俺も見せてもらったが、大したもんじゃないなぁと思った。 3rdパーティー製でもいいから、VBやC++ Builder/Delphi並に サクサク仕事のできるQt用のRADツールってないのかな。 今までC++ Builderで仕事してきて、工数が小さく仕事ができるので 非常に助かってたんだが、C++ Builderの雲行きが怪しくなってきた ので、今のうちに他をあたっとこうと思って評価中なんだ。
570 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 09:22:29 ] お前さんは隣の席のやつに絶大な信頼を置いてるのかもしれないけど 俺らにとってはどうでもいいわけで・・・ 煽ってるわけじゃなくてな
571 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 09:31:54 ] つーか、C++Builder並のRADはありえんだろ。要求高すぎw LazarusのC++実装とか?
572 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 11:12:33 ] ↑wxWidgetsなら,Code::Blocks,DialogBlocks,wxDev-C++あたりが かなり近い線まで行ってる。
573 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 11:33:20 ] 昔は、 wx はネイティブのラッパーだから OS の変化に追随してくれる Qt は独自実装だから OS のルック&フィールが必ずしも反映されない って感じがしてたけど、今でもそうなのかな。 あと Qt は moc がね…
574 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 11:39:54 ] オライリーのqt4の本には、 Windowルック&フィールはWindowsでしか使えません。 なぜならWindowsコンポーネント使っているから(MacOSXも同様) みたいなこと書いてあったと思うんだが・・・ 昔の話じゃね?独自実装なのは。 もちろんMotifとかは独自実装だけど。
575 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 11:43:25 ] 独自実装なのもあるし、そうじゃないのもある(´・ω・`)
576 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 11:49:58 ] 今のQtはWindows上ではWindowsの部品使うし、なんとGnome上では GTKの部品を使って描画するので、ルックアンドフィールの統一感はあるよ。
577 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 11:51:51 ] 逆にGTK+がQtの部品使って描画するのってある?
578 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 11:52:34 ] Qtって独自の文法なかったか?あれは躊躇する。
579 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 11:57:48 ] 独自の文法は無い。 ただのマクロ
580 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 12:05:23 ] 独自のマクロはデバッグが面倒くさそうだ
581 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 12:31:31 ] >>572 そのレベルならQt Creatorと大差ないじゃん。まぁバギーなのはあるが。
582 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 12:46:45 ] Windows上でQt Creator使っているけど、 まぁ、試用レベルなんだけど落ちたことは無いなぁ。 Qt Creatorに後何が加われば、C++ Builder/Delphiなみと いえるのだろうか? 個人的にはGo to Slotがわかりにくかった。 プロパティリストの欄のタブを変更すると イベントハンドラ(Slot)リストがあるべきだろw オブジェクト名が変更されると、Slot名も追尾してくれると嬉しい。 リファクタリングブラウザ機能は最近の先進的なIDEならついているけど、 昔からIDE使ってきている俺としては、あればラッキー無いほうが普通だと思ってるw そんくらいだなぁ。
583 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 13:14:35 ] Qt Creatorが良い線いってると思って使ってる僕は異端児なの?
584 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 13:16:36 ] >>581 使ってみて言ってる? 俺は全部評価したが、Qt Creatorは今のレベルじゃ使う気にならない。 つーか今までC++ Builder一本槍だった開発部隊全員に使わせるのは きつい。痒いところに手が届かなすぎ。 Delphi/C++ Builderなんかに比べるとかなり劣る。 >>572 で挙げた3つは、Delphi/C++ Builderに肉薄するレベルに達してる。 Qt用でもっとまともなRADツールがあれば、wxWidgetsより安心感のあるQt使いたい んだが。Qt Creator一つしかないってのが痛い。もちろんQt Creatorの今後の動向は ウォッチするつもり。 SRAにLGPLのサポート料払ってヤンヤ言ったらQt Creatorどんどん改良してくれんかな。 >>582 > Qt Creatorに後何が加われば、C++ Builder/Delphiなみと > いえるのだろうか? 個人的にはGo to Slotがわかりにくかった。 それもまぁ一つだね。全体的に操作が直感的でない気がする。 VC++使ってたヤツもそう言ってたから、C++ Builderに慣れすぎてる からだとばかりも言えないようだ。 > プロパティリストの欄のタブを変更すると > イベントハンドラ(Slot)リストがあるべきだろw > オブジェクト名が変更されると、Slot名も追尾してくれると嬉しい。 これも同意。 一番大きいと思ったのは、いろんな設定がGUIからロクにできないこと。 .proファイル(だっけか?)にテキストで書けって...
585 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 13:36:00 ] >>584 もちろん使ってみて言ってる。 Code::Blocks,DialogBlocks,wxDev-C++あたりとQt Creatorはどっちもどっち だなあと思う。俺はQt Creator のGo to Slotは「なるほどこういう手もあるね」 と感心したクチで、ダブルクリックだけが正解じゃないと思った。 ちなみに俺も仕事のメインはDelphiだからあの操作性を求めるのはわかるよ。 でもDelphiと同じ動きで作業できるかよりはそのツールなりの操作性がこなれ てるかどうかの方が重要だと思う。そういう意味ではCode::Blocksでいいんで あればQt Creatorでもいいと思うし、「あんなのDelphiに比べれば糞」と言えば どっちも糞だと思う。 よって、職場のチーム丸ごと「C++Builderやめて○×にしようぜ」と言える ツールはまだなくって、でも「wx(あるいはQt)で開発してください」という 仕事が来た場合には十分できる環境がある、というのが現状だと思っている。
586 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 13:44:20 ] 仕事でQt Creatorつこうてる僕は何(´・ω・`)
587 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 13:55:51 ] >>584 > 使ってみて言ってる? > 俺は全部評価したが、Qt Creatorは今のレベルじゃ使う気にならない。 お前の方こそ、使ってみていっているとは思えない。 つまり、中身が何も無い。 使ってみたという証拠を出せ。
588 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 13:58:34 ] Qtの宣伝うぜえな スレ違いだからよそでやれ
589 名前:デフォルトの名無しさん [2009/10/17(土) 14:31:54 ] >>585 > Code::Blocks,DialogBlocks,wxDev-C++あたりとQt Creatorはどっちもどっち > だなあと思う。俺はQt Creator のGo to Slotは「なるほどこういう手もあるね」 > と感心したクチで、ダブルクリックだけが正解じゃないと思った。 この辺は感じ方の違いもあると思うが、「ダブルクリックだけが正解じゃない」というのは同意。その辺は たいした問題じゃない。やっぱりコンパイラオプションやリンカオプション、子プロセスとしてコンパイラや リンカを起動する場合の環境変数の設定あたりがやりにくいのが俺には受け入れ難い。あるいはQt Creato r評価した際に取り組みが足りなかったのかもしれん。 > よって、職場のチーム丸ごと「C++Builderやめて○×にしようぜ」と言える > ツールはまだなくって、でも「wx(あるいはQt)で開発してください」という > 仕事が来た場合には十分できる環境がある、というのが現状だと思っている。 ウチはソフトの受託開発をやってるわけじゃないので、ちょっと事情が違うかな。自社製品用のソフトを開発 してるので、自分達で今後を決めていく環境にある。顧客別のカスタマイズが非常に多いので、少々環境 設定なんかのスキルの低い人間でもサクサクっと作れる事が第一優先なので、面倒見の大変なのはチト困る。 >>586 それは使いこなせるスキルがあるとも言えると思うよ。 >>587 おいおい、Qt Creatorにケチつけられたのがそんなに気にくわんか? 「中身がないって」>>584 に書いたことじゃ 足りないか? 「証拠を示せ」ってどうやって示すんだ?まずは見本を見せてくれ。 俺は何度も書いたけどできればQt使った方が安心感があると思ってるんだが、RADツールの問題で躊躇してる だけ。Qt Creatorが早く改良されればベストだと思ってる。 >>588 俺がQt Creatorの批判したから、俺にも責任あるね。まぁ、ここはQtスレに比べたらずっと書き込み少ないから、 それだけマイナーだってことなわけで、wxWidgetsの方が形勢不利なのは目に見えてる。 つーか、他のwxWidgets派は応援してくれんのか...
590 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 16:16:41 ] エディタでゴリゴリ書くのが好きだから…
591 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 16:20:47 ] 俺もエディタ派
592 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 17:55:59 ] エディタ派って単に慣れているからってだけじゃ・・・ キーバインドだけのために、新しい優れたものを使えない体に なってしまっただけじゃ・・・
593 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 17:58:48 ] 何でそういう難癖を付けたくなったのかは知らんけど、それは間違いだぜ。 昔からツールボックスアプローチとキッチンシンクアプローチという概念があるんだ。 この世界で『真に新しくて優れたもの』なんてそうそう無いよ。
594 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 18:58:29 ] IDEはツールボックスだけのものじゃないし。 開発するとき、ヘルプ見ない? ヘルプ見るのならIDEは便利だよ。
595 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 19:02:38 ] 俺はヘルプを見るときはウェブブラウザってのを使ってる。 分からないメソッドを右クリックするとグーグルというので情報を探してきてくれる。 これ結構便利だよ。
596 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 19:19:18 ] >>594 まぁ冗談はさておき、エディタ派の人は最新の IDE がどういう物かは 知った上でエディタでコーディングする事を選んでるんだよ。 君がウェブブラウザやグーグルを知ってるのと同じくらいね。 それと当然だけどエディタだけを使って開発している訳じゃないよ。 エディタを補助するツール群を揃えているから、ソースを書く時には エディタだけで十分という作業スタイルなだけで。 IDE にプラグインを入れまくる人って居るでしょ。その逆だと思えば良い。 IDE から機能を削ぎ落として、テキスト入力以外の機能は別のツールを 組み合わせて使っているんだよ。だからいわゆる IDE は必要ないのです。
597 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 19:26:35 ] エディタを使うメリットは、ネットブックでも動作が軽快な事、 他の環境に移行し易い事、問題があっても自分で直し易い事かな。 他にもあると思うけど、今思いつくのはこれくらい。
598 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 20:11:21 ] うーん。 やっぱりコード書いている途中にピリオドを押したら すぐにヘルプ見るのと同じ効果があるってことは 思いついていないみたいだ。エディタ使っている人は。 なんかギャップを感じるね。
599 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 20:12:44 ] シェルの補間機能があるのと ないぐらい以上の差があるのにね。
600 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 20:16:20 ] 全てを記憶しているから問題無い
601 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 20:23:59 ] >>598 Qt のスレでもピリオドに拘ってる人が居たけど、要らない物は 要らないとしか言いようが無い。それが便利だと思ったら 愛用のエディタに手を入れるか IDE に転ぶかするだろうけど、 今のところは必要ないよ。引き算ができない人は機能一覧を埋める 事ばかり考えるけど、そういう人ばかりじゃないという事です。 人によって考え方や作業フローが違うという事を受け入れられない内は 理解するのは難しいと思われ。
602 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 20:30:09 ] シェルの補完機能でも zsh の最新版の高度な機能を欲する人も居れば csh レベルで良いから軽い方が嬉しい人も居る訳で。 まさかその違いが分からない訳じゃないよね?
603 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 20:42:47 ] まぁ、自分が欲しい物を他人も必ず欲しがると思うのがナンセンスなんだよな。 世界に価値基準が一つしか無いと思ってると大人になって苦労するぞ。
604 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 20:46:04 ] 欲しいか欲しくないかは個人の趣味だけど、 便利か便利じゃないかといえば、 IDEの方が便利だよな。
605 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 20:49:34 ] 便利かどうかを判断する価値基準は無数にあるんだよ
606 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 20:54:34 ] >>604 俺にとってはIDEじゃない方が便利 そういう話だ
607 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 20:56:12 ] >>604 扇風機と団扇はどっちが便利? 掃除機と箒は?
608 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 20:59:42 ] >>604 自動車があるのに自転車に乗るのは馬鹿な事なの? それとも自動車と自転車を一緒くたに考える人が馬鹿なの?
609 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 21:25:54 ] 吊りだとわかってても反応したくなるな 箒や扇子は電気の無い家の外で使えるから便利だし 自転車は狭い路でも走れるから便利っつー話なんだが
610 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 21:37:53 ] 要らん時までパカパカ補間ウインドウひらくわりに肝心なときには補間できないという難点がある品。 調べたいことがあったらその時バッファにカーソル下の該当ワード拾ってヘルプウィンドウ開くさ。 Windows流の窓最大化文化ばかりが全てじゃないって話。
611 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 21:53:39 ] 一つ気になるのは、PyQtを動かすためにQtが必要であること。 まぁQtへのバインディングと考えれば必要なのは理解できるんですが、 これを各マシンにインストールするのは面倒すぎます。 もし可能であればネットワークにQtを置いて、環境変数でそこを指すようにして、 ネットワークで共有、ってことをやりたい。 それが出来るんならまぁ使ってもいいかな、って気がします。 ところで、wxPythonと比較してPyQtは何に優れてるんですかね。 AutodeskがPyQtを推す意味って何なんだろうか。
612 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 21:53:54 ] >>609 電気があれば扇風機の方が涼しいし、ウチのオフィスの清掃業者は掃除機を使ってるよ。 ちょっと遠くへ行く時や、同じ距離でも雨の日や荷物がある時は自動車が便利。 便利という指標は考え方や使う人、使う状況によって変わるものだよ。清掃業者が 箒を使わない事を批判している人が居たら、それはちょっとまずい人に見えるよね? コーディングを行う際にエディタが便利か IDE が便利かも同じ事。 IDE が生まれたのは Smalltalk や Lisp Machine まで遡れる訳だから 30 年以上は 経っている訳だよね。IDE は素晴らしく見えるかもしれないけど、別段新しい物でも ないんだぜ。この手の論争は少なくとも 10 年以上前からあるし、多分もっと昔から 宗派に分かれて戦ってきたんだろうけど、結論は変わらず『好きな物を使え、他人の 主義にケチをつけるな』だよ。結局、どっちが便利かなんて使う人次第なんだから。
613 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 22:32:31 ] > これを各マシンにインストールするのは面倒すぎます。 なぜ? > もし可能であればネットワークにQtを置いて、環境変数でそこを指すようにして、 > ネットワークで共有、ってことをやりたい。 そっちの方が面倒すぎます。 現にあなたやり方すらわかって無いでしょ?
614 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 22:38:41 ] スレタイ見てくれw
615 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 22:47:18 ] wxPython+py2exeで造ったプログラムって wxWidgetsが入っていないPCでも動くよなぁ >PyQtを動かすためにQtが必要であること 必要なの?
616 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 23:01:45 ] py2exeがwxWidgetsライブラリを含めた実行ファイルを作るから。
617 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 23:03:07 ] それってQtも同じじゃね?
618 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 23:41:36 ] う、うん……(´・ω・`)
619 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 00:02:50 ] なんかIDE論議になってるけど,IDEの一番のメリットはデバッガーだと思うんだが。 そりゃコマンドライン派はgdbやcdbでもソースレベルデバッグできると言うだろうが... IDEのエディタ上で,デバッグ中に変数にマウスカーソル当てると,中身がツール チップヘルプで表示されるなんて,この上ない便利さだと思わない? 少数のエキスパートを除いて,最大公約数的どちらが仕事が速く出来るか? と言われれば,やはりIDEの優位性は揺るがないだろう。
620 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 00:05:12 ] そういう細かい点を日ごろ使って無い人は わからないんだろうね。
621 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 00:05:38 ] >>611 >一つ気になるのは、PyQtを動かすためにQtが必要であること。 wxPythonを動かすためにwxWidgetsが必要なのは気にならないの?
622 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 00:17:45 ] スレが伸びてたからwktkして開いたのに何これ?
623 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 00:30:51 ] >>619 論点がずれてる。 元々は >>592 にある様に IDE を使えないのは能力の衰えた人という話だった。 君が言う様に IDE を使わないのは少数のエキスパートという事だと、話が真逆。 議論に乗り遅れたのはかわいそうだけど、元々の話と内容が変わってるから、 続けたいなら別スレ立てた方が良いんじゃない? これだけやっておいてなんだけど完全にスレ違いだしさw
624 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 00:44:47 ] ではIDE対エディタの続きはこちらでどうぞ pc11.2ch.net/test/read.cgi/prog/1244310984/
625 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 02:11:59 ] >621 ttp://blog.taikomatsu.com/2008/06/21/pyqt4メモ/
626 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 07:17:41 ] >>623 もうやめとくけど,>>619 に書いた「エキスパート」は皮肉だよ。真に受けないで欲しかった。
627 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 07:24:49 ] もうやめとくと言いながら未練がましく最後っ屁をかますとは人間ができてますなあ ↑皮肉ってこういう事だよ
628 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 07:26:08 ] あ、真に受けないでね ↑これも皮肉
629 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 07:50:53 ] >>619 が皮肉になっていないのは捻っているようで全く捻ってないから。 『エキスパートは IDE を使わないでも仕事が速く出来る』という命題は 文字通り解釈出来てしまうから皮肉にならない。 むしろ『中身がツールチップヘルプで表示されるなんて,この上ない 便利さだと思わない?』という表現の方が皮肉っぽいよ。例えば 『中身がツールチップヘルプで表示されるなんて,この上ない便利さ だと思わない?(見た目に騙される初心者め)』みたいな感じで 解釈可能だからね。『ツールチップヘルプ? ログに残したい時は どうするのさ。デバッガの使い方くらい覚えた方が良いぜ』みたいに 続けると良い感じかもね。 もしまだ続きがしたいなら >>625 のスレへどうぞ。
630 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 07:51:40 ] あ、スマソ。>>624 のスレでした。
631 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 07:54:03 ] Python書くときはvim、C書くときはEmacsだけど JavaはEclipse、趣味はDelphiな俺が通りますよ〜。 ぶっちゃけどれもそれぞれ使い安いよ。最高!
632 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 08:37:43 ] Java/Python/LaTeX → Eclipse C/C++ → Visual C++ その他 → Emacs
633 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 09:47:11 ] ログに残したいときはそうすれば良いし、 ツールチップでも見れること何が悪いのか さっぱりわからんw ツールチップという見た目に対して文句つけてるの?
634 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 10:07:37 ] >>633 ツールチップで見られるならそれは便利だろう でもだからといって、他の難点に目をつぶってIDEを使う気にはなれない エディタ全体・IDE全体としてどうかという話
635 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 14:15:37 ] このスレ、スレタイ間違ってる? IDEのスレなのになんでwxナントカって書いてあるけど…
636 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 14:24:25 ] wxナントカはもう死にました。
637 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 14:34:12 ] そっか。じゃあIDEの話で盛り上がっていいんだね?!
638 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 15:13:18 ] まずIDEの議論をして、その結果の良いIDEをwxで実現する予定です
639 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 15:15:18 ] すみません wxPython-src-2.8.10.1をインストール死ようとすると wxWidgetsのコンパイルは性交したらしいのですが build途中で死ぬんです
640 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 15:20:35 ] 639 途中でした src/gtk/_gdi_wrap.cpp: In function ‘PyObject* _wrap_DC_SetDeviceClippingRegion(PyObject*, PyObject*, PyObject*)’: src/gtk/_gdi_wrap.cpp:20612: error: ‘class wxDC’ has no member named ‘SetDeviceClippingRegion’ src/gtk/_gdi_wrap.cpp: In function ‘PyObject* _wrap_GraphicsRenderer_CreateBitmap(PyObject*, PyObject*, PyObject*)’: src/gtk/_gdi_wrap.cpp:31407: error: ‘class wxGraphicsRenderer’ has no member named ‘CreateBitmap’
641 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 15:24:22 ] 環境は? 環境設定ミスってないか?
642 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 16:23:13 ] パッチが出てるみたい ttp://code.google.com/p/devide/source/browse/trunk/johannes/patches/wxpython28101_gdiwrap.diff --- wxPython/src/gtk/_gdi_wrap.cpp.orig 2009-08-08 16:26:48.000000000 +0200 +++ wxPython/src/gtk/_gdi_wrap.cpp 2009-08-08 16:32:50.000000000 +0200 @@ -4195,6 +4195,10 @@ virtual wxGraphicsBrush CreateRadialGradientBrush(wxDouble , wxDouble , wxDouble , wxDouble , wxDouble , const wxColour &, const wxColour &) { return wxNullGraphicsBrush; } virtual wxGraphicsFont CreateFont( const wxFont & , const wxColour & ) { return wxNullGraphicsFont; } + + // patch required as explained in + // groups.google.com/group/wxPython-users/browse_thread/thread/129ba27e2f868c3c?pli=1 + wxGraphicsBitmap CreateBitmap( const wxBitmap &bitmap ) const { return wxNullGraphicsBitmap; } };
643 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 17:59:42 ] >>642 出来ました ありがとうございました
644 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 22:28:11 ] ライブラリAPI使いまくりの部分はIDEが断然楽だけど、 自前コードが多いとこは、なれたエディタのほうが軽快かな
645 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 00:09:56 ] wxWidgetsってネイティブ以外にonGTKとかonX11とか あるんだからonQtっつーのも有っても良いような気がする
646 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 01:01:32 ] >>645 同意。
647 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 05:43:27 ] >>644 なんでIDE vs エディタ論争になるのかぜんぜんわからん。 俺は両方使い分けてる。IDEの外部ツールに使い慣れたエディタ登録 して,エディタ編集したくなった時は起動すれば,現在編集中の行・列 にカーソルがある状態で編集開始できる。 排他制御問題も,IDE側/エディタ側の双方の設定で解決できるし。 ...ってそういう話じゃないのか?
648 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 06:10:25 ] >>647 話の腰を折るな!
649 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 07:34:16 ] はぁ? オマエ見当違いすぎ
650 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 08:35:32 ] いいからどっちも他のスレでやれ
651 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 23:15:17 ] ケンカはやめて(><)
652 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 03:38:19 ] 私のために…
653 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 03:39:02 ] 「赤いきつね」と「緑のたぬき」の具材を強化した新商品が、 コンビニ限定商品として10月19日から販売が始まった。
654 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 09:24:18 ] 私のために?
655 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 11:13:38 ] 争わないで!
656 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 12:05:33 ] もうこれ以上
657 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 13:15:41 ] すれ違いの話を
658 名前:デフォルトの名無しさん mailto:sage [2009/10/22(木) 07:52:30 ] 今、VC++2008でwxWedgetsプログラミングしてるんですけど、 他のパソコンでも実行できるようにしたいんですけど、 どのdllをリンクさせる必要がありますか? 何か教えてください(> <)
659 名前:デフォルトの名無しさん mailto:sage [2009/10/22(木) 08:17:27 ] それは使ってるもジールによって変わるから 別のPCでエラーが出なくなるまで 必要なファイルを順番に追加(ry
660 名前:デフォルトの名無しさん mailto:sage [2009/10/22(木) 08:19:14 ] これのことじゃね? Microsoft Visual C++ 2008 再頒布可能パッケージ (x86) ttp://www.microsoft.com/downloads/details.aspx?displaylang=ja&FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf
661 名前:デフォルトの名無しさん mailto:sage [2009/10/22(木) 18:15:10 ] wxCodeのwxThingsに含まれるwxSpinCtrlDblが使いたくて,SourceForgeからダウンロードしたら, やたら古くてコンパイルエラーが出るので,SVNでチェックアウトしたらwxCodeからwxThingsが削除 されてた。でもCVSリポジトリを下記のURLでブラウズすると含まれている。 wxcode.cvs.sourceforge.net/viewvc/wxcode/wxCode/components/wxthings/ なのでSourceForge.jpにユーザー登録してCVSでチェックアウトしようとして,SSHの公開鍵を 登録しようとしたら,シェルアカウント情報:に「どのプロジェクトにも所属していないため、 UNIX シェルアカウントはありません。」と書かれていて登録できない。 SourceForge.netの方にもユーザー登録したけど,やっぱり公開鍵の登録ができない。 CVSからwxThigsをチェックアウトする方法があったら教えてください。
662 名前:661 mailto:sage [2009/10/22(木) 18:20:59 ] ↑ ちなみにpserver経由のAnonymoousログインではパスワードを求められたのでパスワードなし でログインしようとしたらはじかれた。
663 名前:デフォルトの名無しさん mailto:sage [2009/10/23(金) 01:37:08 ] >>661 pserverでちゃんと取得できたぜ やり方間違ってたんじゃないの? sourceforge.net/scm/?type=cvs&group_id=51305 cvs -d:pserver:anonymous@wxcode.cvs.sourceforge.net:/cvsroot/wxcode login cvs -z3 -d:pserver:anonymous@wxcode.cvs.sourceforge.net:/cvsroot/wxcode co -P wxCode/components/wxthings
664 名前:661 mailto:sage [2009/10/23(金) 10:16:54 ] >>663 そのサイトにからコマンドラインをその通りにコピペして実行したんだけど,ログインの段階で でパスワードを求められて,何も入れずにEnter押すとはじかれる。 Windows XPのコマンドプロンプトでTortoiseCVSに含まれてるcvs.exeでやったんだけど (PATHを通しておいて),何かまずいのかな? わざわざ試してくれてありがとう。 「出来た」と言う情報だけでも助かる。昨日はサーバー側に何かあったとか言う可能性もあるし, コマンドライン版のCVSだけダウンロードしてやってみるとか,幾つか試してみます。
665 名前:661 mailto:sage [2009/10/23(金) 11:24:28 ] >>663 原因判明。会社のFirewallでCVSのポート(2401)が閉じられてた。 恒久的に開けるには手続が必要で数日かかるとのことなので,一時的にあけてもらって 無事チェックアウト成功。 アリガト。
666 名前:デフォルトの名無しさん mailto:sage [2009/10/24(土) 00:08:53 ] wxDev-C++は現在のVer.7.xを最後にDelphiでの開発をやめて、wxWidgets+C++に移植して 新たにwxDevIDEと言う名前で再スタートするらしい。 つ wxforum.shadonet.com/viewtopic.php?t=25679&highlight=delphi まだ中身はないけど、既にHPも作成されているし、SourceForgeにも登録されてる。 wxdevide.sourceforge.net/ sourceforge.net/projects/wxdevide/ SourceForgeではSVN上で開発が進められているのがわかる。 今までDelphi 6で開発されてたので、Vista以降のWindowsでは開発環境すら起動しなく なるだろうからどうするのかなぁと思ってたら、思い切った改革に乗り出した。 建前は「メンテナンスと改良が難しくなったから」と書いてあるが... wxDev-C++は使いやすいし、All in oneでインストールできる(MinGWや、MinGWと VC++用のビルド済wxWidgetsライブラリも付いてくる)のでラクチンだけど、Delphi で開発してると知って尻込みしてたんだが、wxDevIDEが起動に乗ったらWindows上 ではC::Bと戦える(思想は対照的かもしれないけど)強力なRADツールになるかも。 Linuxへの展開も狙ってるみたいなこともチラッと書いてある。 ついでにTDM's MinGWにも対応してくれると嬉しいんだが... αテスター募集してるみたいだから参加してみようかな...
667 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 13:41:10 ] 既出かもしれませんが、wxTextCtrlで日本語入力(ATOK)中にESCを押すとIME ではなくダイアログを抜けるので、それまで確定した内容が消えてしまいます。 入力中だった文字はそのままの状態で消えたダイアログの親に行きます。 IME入力中のESCキーがIMEのウィンドウ?に飛ばず下のDialog or TextCtrlに 飛んでいるように見えますがが、回避するにはどこを見たらいいでしょうか。
668 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 14:49:33 ] うちはそんなことないよ
669 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 15:04:00 ] >>667 環境を書かないと。OSもコンパイラもバージョンも何も書いてないんじゃ...
670 名前:667 mailto:sage [2009/10/25(日) 15:33:48 ] >>669 失礼しました。WindowsXP SP3 / ATOK2008 です。 RapidSVN 0.12.0 のリリース物件なのでコンパイラはちょっとわからないですが、 バージョン情報には wxWidgets 2.8.9 とあります。 Audacity 1.2.5 (wxWindows 2.4.2) の設定ダイアログでも同じことが起きています。
671 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 15:43:14 ] ATOK2008
672 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 16:04:43 ] >>667 IME関係なくESCだけ押してみたけどDialog閉じないよ 自分で書いたコードでなんか拾ってるんじゃないの?
673 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 17:06:11 ] ・何がしたいのか ・現状どうなっているのか ・それに対する自分の意見 ・自分の環境は何なのか(OS,CPU,GPU) ・IMEを他のものにして同じ症状があるのかどうか、ないならそのIMEは何なのか。 ・可能ならサンプルをアップローダーに。 このくらいは質問するなら情報として欲しいわ。
674 名前:667 mailto:sage [2009/10/25(日) 19:02:54 ] >671 MS IME 2002 でも同じでした。 Off の状態でも同じ動作をしますが、これは開発者が意図したものだと思います。 >672 ESC キーでダイアログが閉じるのは wxDialog の標準的な動きではないという ことですか? このへんを追っかけてみるとCommitDlgがキーボードのイベントを拾っている所は 見つけられなかったんですが、どうでしょうか。 ttp://rapidsvn.tigris.org/svn/rapidsvn/trunk/src/commit_dlg.cpp ttp://rapidsvn.tigris.org/svn/rapidsvn/trunk/src/rapidsvn_generated.cpp >673 >何がしたいのか コミッターでも何でもないですが、RapidSVN で上述のような現象が起きて不便 なので、パッチを投げたいです。
675 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 19:39:58 ] キャンセルボタンを貼り付けてなければ閉じなかった デフォルトボタンが拾ってると思う
676 名前:デフォルトの名無しさん mailto:sage [2009/10/26(月) 10:52:28 ] >>658 static link で作ればいいと思うよ。 リリース版を、マルチスレッド/DLL じゃなくて、マルチスレッド(/MT)にする。
677 名前:デフォルトの名無しさん mailto:sage [2009/10/26(月) 10:55:24 ] >>674 ESCでダイアログが閉じるのはWindowsの基本的な動作。 >>675 が言うとおり、キャンセルボタン(wxID_CANCEL だっけ?)があるとそうなる。 回避したいのであれば、ボタンを標準じゃなくて、自分でwxButtonで作って、 適当な ID を割り振ればいいんじゃないかな?
678 名前:デフォルトの名無しさん mailto:sage [2009/10/26(月) 11:27:10 ] なるほど、未確定中にESC押すと入力文字が消え、その後再度ESC押すとダイアログが閉じるのが 普通の動作だが、RapidSVNは未確定文字のキャンセルとダイアログのクローズが同時に起こるな。
679 名前:658 mailto:sage [2009/10/26(月) 14:56:45 ] >>676 返信ありがとうございます。 マルチスレッド(/MT)でコンパイルだと一筋縄でいかないようで、 LIBCMT.libを無視するように設定したりしたら、エラーが減ったんですが、最後、 1>リンクしています... 1>xxx.obj : error LNK2001: 外部シンボル ""public: void __thiscall wxStringData::Free(void)" (?Free@wxStringData@@QAEXXZ)" は未解決です。 1>E:\Documents and Settings\xxx\My Documents\Visual Studio 2008\Projects\morphingpot_v1a\Release\xxx.exe : fatal error LNK1120: 外部参照 1 が未解決です。 1>ビルドログは "file://e:\Documents and Settings\xxx\My Documents\Visual Studio 2008\Projects\xxx\xxx\Release\BuildLog.htm" に保存されました。 1>xxx - エラー 2、警告 0 のエラーが対処できません。 コンパイルしているのは、サンプルでOpenGLを使ってるプログラム、penginをベースに変更したものです。 しかし、一番簡単なサンプル、minimalでもこのエラーは発生するみたいです。
680 名前:デフォルトの名無しさん mailto:sage [2009/10/26(月) 15:39:40 ] >>679 string.cpp 150行目 #if defined(__VISUALC__) && defined(_MT) && !defined(_DLL) # pragma message (__FILE__ ": building with Multithreaded non DLL runtime has a performance impact on wxString!") void wxStringData::Free() { free(this); } #endif ってなってるから、DLLだとうまくいかないけどstaticリンクなら大丈夫なはず なんか間違ってない?
681 名前:658 mailto:sage [2009/10/26(月) 18:07:00 ] >>680 またも返信ありがとうございます。 あれからいろいろありました。 まず、レスについてですが、stringのソースはその通りでした。 それから、staticリンクというのがよくわからないので、 どうすれば良いかよくわからないです。 それと、一応解決しました。 マルチスレッドDLLでコンパイルしたものの、Releaseファイルの中で、 wx_dll.dspをビルドした時に出てきた、 C:\wxWidgets-2.8.10\lib\vc_dllにあるdllファイルを入れたら、 一応動きました。 なんかもう今はとりあえず動けば良いのでこれで良いです。
682 名前:667 mailto:sage [2009/10/27(火) 01:08:50 ] >675 >677 ESCでID_CANCEL,ENTERでID_OKの動作になるのはWindowsの仕様なんですね。 >678 samples/dialogsの[Entry dialogs][Text entry]で再現しました。(2.8.10 w/ VC2005) textctrl.cpp の OnKeyDown, OnChar, MSWShouldPreProcessMessage window.cpp の MSWProcessMessage, MSWShouldPreProcessMessage には ESC(IME on/off とも)の入力が飛んでこないようです。 どこなら引っ掛けられますかね?
683 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 10:37:38 ] >>681 それだと MSVCRT(のDLL) がない環境で動かないかも? /MT で使う場合は wxWidgets のライブラリも /MT でコンパイルしないと駄目だけどやった?
684 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 10:39:56 ] >>682 確かダイアログの場合は特殊で ESC を雄と WM_COMMAND の ID_CANCEL が 飛んでくるんじゃなかったっけ? wxWidgets の場合は…なんだっけ、EVT_? マクロを使うんだったかな?
685 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 12:42:25 ] >>682 IsDialogMessage()あたりだろうと探してたりしてみたけど、結局同じwindow.cppにある キーボードフックからESCを検出して独自にIDCANCEL送ってるわ。 フック周りをIMEを意識した作りに直さないと無理そう。
686 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 12:46:10 ] 一応送ってるとこ書いとくけど、dlgcmn.cppのwxDialogBase::OnCharHook()で呼んでる EmulateButtonClickIfPresent(wxID_CANCEL)ね。
687 名前:667 mailto:sage [2009/10/27(火) 13:17:31 ] みなさんありがとうございます。FEP の On/Off で SetEscapeId() を かけたら良さそうな気がした(まだ試してない)んですが、msw 以下の ソースでも wx のヘッダばかり include してますよね。 仮に Imm 系の API を呼ぶようなパッチが作れたとして、wx の本家には 受け入れられないものですか?
688 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 13:42:48 ] 各OS固有の部分はどうする?
689 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 14:54:57 ] あんまり場当たり的なことはよしたほうが・・・ とりあえず、実験的なコードだけどwindow.cppのwxKeyboardHook()の先頭で HWND hWnd = GetFocus(); HIMC hIMC = ImmGetContext(hWnd); BOOL immOpen = FALSE; if (hIMC) { if (ImmGetOpenStatus(hIMC)) { int size = ImmGetCompositionString(hIMC, GCS_COMPREADSTR, NULL, 0); immOpen = (size > 0); } ImmReleaseContext(hWnd, hIMC); } とやって、immOpenがTRUEなら既存のルーチン、FALSEならそのままCallNextHookEx() 呼んだら希望の動きはしたよ。 でもまあ、imm32.libのリンクがいるし、この部分もLoadLibrary()+GetProcAddress()にして リンク不要にしたらいいかもね。window.cppはWindows固有のコードみたいだしね。
690 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 15:05:00 ] おっとミス、TRUEとFALSE逆ね、まあわかると思うけど。
691 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 15:53:57 ] つまり EURT と ESLAF が正解。
692 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 16:59:38 ] >>691 暇人乙
693 名前:658 mailto:sage [2009/10/27(火) 18:17:38 ] >>683 一応やったけど、違うエラーがいっぱい出てきたので、 よくわかりませんでした。
694 名前:デフォルトの名無しさん mailto:sage [2009/10/28(水) 10:49:43 ] >>693 違うエラーってどんなのよ。 VC++使ってんだよね? 手順説明すると、Releaseの構成を使うとしたらwxのプロジェクト開いた状態で、 ビルドメニューの構成マネージャ開いてアクティブソリューション構成のとこから 新規作成を選択、名前をMT Release とかにして、設定のコピー元をReleaseにしてOK押して MT Releaseが選択されてる状態を確認したら、プロジェクトをシフトクリック等で全部選択して 右クリックでプロパティを出して、構成プロパティのC/C++のコード生成のランタイムライブラリを マルチスレッド(/MT)にしてOK その後ソリューションのビルドすりゃlibができるよ。
695 名前:デフォルトの名無しさん [2009/10/28(水) 14:28:15 ] Adobe Source Librariesって使ってる人いる? stlab.adobe.com/ ちゃんと見てないけど、これってwxWidgetsの代わりになるもんなのかどうだろう?
696 名前:658 mailto:sage [2009/10/29(木) 16:38:29 ] >>694 何処にも書いてなかった手順ありがとうございます。 しかしですが、 手順どおりやって、 サンプルプログラムminimalをマルチスレッドでコンパイルしたら、 1>wxbase28.lib(dir.obj) : error LNK2001: 外部シンボル ""void __cdecl operator delete(void *)" (??3@YAXPAX@Z)" は未解決です。 とか 1>wxbase28.lib(filefn.obj) : error LNK2019: 未解決の外部シンボル _strstr が関数 "public: __thiscall wxFile::~wxFile(void)" (??1wxFile@@QAE@XZ) で参照されました。 とかのエラーが 合計1740個出てきて、? でした。 前に色々いじったのが悪かった可能性がありますが・・・
697 名前:デフォルトの名無しさん mailto:sage [2009/10/29(木) 16:47:37 ] >>696 すべての規定ライブラリの無視(/NODEFAULTLIB)を「はい」にしてないか? いいえにしとけ
698 名前:デフォルトの名無しさん mailto:sage [2009/10/31(土) 23:35:03 ] C++で初めてWxWidgetsを使ってプログラム書いてみています。 複数行のwxTextCtrlに、複数行の文を書いた状態で、GetLineText(0)のようにして、 任意の1行を取り出して、それをそのまま、wxMessageDialogでダイアログ表示させているのですが、 この1行が、半角のアルファベットの時などはきちんと1行全体が表示されるのですが、 この1行が、4文字以上の日本語の場合は、最後の文字だけが欠けて表示されてしまいます。 (例:あいう→あいう、あいうえ→あいう、あいうえお→あいうえ) C++のほうも初心者ですのでどこか間違っているのかもしれませんが、 解決方法をご存知の方が居られましたら、教えていただけませんでしょうか。お願いします。
699 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 03:15:07 ] ソース貼れ
700 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 10:37:03 ] すみません。本当に質問そのままでしたのでソースを書きませんでした。失礼しました。 尚、開発環境は、Visual C++ 2008 Express Editionを使用しています。 wxWidgetsのバージョンは、2.8.10です。 以下、再現できるソースです。宜しくお願いします。 #include "wx/wx.h" #include "wx/msgdlg.h" class Test : public wxApp{ public: virtual bool OnInit(); }; IMPLEMENT_APP(Test) bool Test::OnInit(){ wxFrame *mainf = new wxFrame(NULL,-1,wxT("サンプル"),wxPoint(-1,-1),wxSize(300,250),wxCLOSE_BOX | wxSYSTEM_MENU | wxCAPTION); mainf->Show(TRUE); wxTextCtrl *inp = new wxTextCtrl(mainf,-1,wxT("あいうえお"),wxPoint(0,0),wxSize(-1,-1),wxTE_MULTILINE,wxValidator(),wxT("Form0")); wxMessageDialog *d = new wxMessageDialog(NULL,inp->GetLineText(0),wxT("サンプル"),wxOK,wxPoint(-1,-1)); d->ShowModal(); return TRUE; }
701 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 11:56:49 ] 見てみた。 EM_LINELENGTHがマルチバイトの文字でも文字数を返すのに バイト数で確保してるせいだね。 あいうえお→5にNULL文字1+長さ指定のための2バイト確保で8バイト分しか用意してないから 「あいうえ」になるみたい。
702 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 12:19:22 ] なんか状況によるみたい、ググってもデバッグ環境での違いとかよくわからん。 UNICODE文字セットだとうちでは問題でないけど、どうかな? manifest書けばいいのかもしれないが。
703 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 13:22:08 ] >>701 ありがとうございます。そういう原因でしたか。 素人なりに、EM_LINELENGTHまわりの処理をしているようなコードがないかと考え、 wxWidgetsのファイルを探したのですが、よくわかりませんでした・・・。 GetLineTextを使うのを諦めて、他に違う方法を考えるしか無いでしょうか?
704 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 14:31:27 ] ファイルの場所は、こないだ出たwindow.cppと同じくsrc/msw/にあるtextctrl.cppね。 XPの途中(SP2以降)から仕様変更ってほんまかいな。 うちで試したのはVista64で、たしかに文字数が返ってきてた。 そういやimm〜もLibのリンク不要版書いたけど、見たい人いるかなあ。
705 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 15:07:19 ] UNICODE版に汁
706 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 15:57:38 ] >>705 アドバイスありがとうございます。 setup.hで、wxUSE_UNICODEを1にしてビルドしたところ解決しました。 これでwxWidgetsの内部処理がUNICODEになったと考えて良いのでしょうか?
707 名前:デフォルトの名無しさん mailto:sage [2009/11/02(月) 08:42:01 ] zetcode.com/wxpython/
708 名前:デフォルトの名無しさん mailto:sage [2009/11/02(月) 11:31:25 ] zetcode.com/tutorials/pyqt4/
709 名前:デフォルトの名無しさん mailto:sage [2009/11/02(月) 13:55:43 ] >>706 そうだけどサロゲートペアには対応してないっぽい
710 名前:658 mailto:sage [2009/11/02(月) 15:10:21 ] >>697 久しぶりにプログラミング再開しました。 できました。ありがとうございます。 すべての規定ライブラリの無視(/NODEFAULTLIB)は いいえのままでしたが、 何かとごっちゃになって、無視するライブラリにLIBCMT.libとかがありました。 とりあえず、できた奴を他のパソで起動してみます。
711 名前:デフォルトの名無しさん mailto:sage [2009/11/03(火) 22:57:11 ] どうも。wxWidgets2.8.10、Unicnde Buildを使っているのですが、ShiftJIS->Unicode、Unicode->ShiftJISを一発でするにはどうするばいいですか? どうもEncodingConverterクラスはchar/wcharでの変換しか想定していないようなのです。(wxStringを返すことも出来るようなのですが、実際にやると実行時にエラーになりますorz)
712 名前:デフォルトの名無しさん mailto:sage [2009/11/03(火) 23:11:52 ] Linux版使ってるひと?
713 名前:デフォルトの名無しさん mailto:sage [2009/11/04(水) 00:06:11 ] >>712 実行時環境を書き忘れていました。実行時環境はWindowsXP SP3です。 具体的なエラー内容は、WXDEBUGをdefineしてビルドするとwxAssertが働いて、wxEncodeConverter::Init()を使用前に呼び出しているにも関わらず「Init()で初期化してください」と表示されるのです。(リリースビルドでも失敗します。)
714 名前:デフォルトの名無しさん mailto:sage [2009/11/04(水) 00:29:22 ] >>713 俺はWIN32 APIで変換してるよ。手順がチトややこしいので、無名名前空間内に変換用の関数を 書いたヘッダファイルを用意して使ってる。細かい方法は仕事場に行かないと書けないので、 明日にでも...
715 名前:デフォルトの名無しさん mailto:sage [2009/11/04(水) 01:47:45 ] WCHAR *SJIS2WCS(string sjis) { if(sjis == "") return NULL; int wlen = MultiByteToWideChar(CP_ACP, 0, sjis.c_str(), -1, NULL, 0); WCHAR *wbuf = new WCHAR[wlen + 1]; if(wbuf == NULL) return NULL; *wbuf = L'\0'; if(MultiByteToWideChar(CP_ACP, 0, sjis.c_str(), -1, wbuf, wlen) <= 0){ delete [] wbuf; return NULL; } return wbuf; } string WCS2SJIS(WCHAR *wbuf) { if(wbuf == NULL || wbuf[0] == L'\0') return ""; int slen = WideCharToMultiByte(CP_ACP, 0, wbuf, -1, NULL, 0, NULL, NULL); char *sbuf = (char *)_malloca((slen + 1) * sizeof(char)); if(sbuf == NULL) return ""; *sbuf = '\0'; if(WideCharToMultiByte(CP_ACP, 0, wbuf, -1, sbuf, slen, NULL, NULL) <= 0) return ""; sbuf[slen] = '\0'; return sbuf; }
716 名前:714 mailto:sage [2009/11/04(水) 09:51:54 ] おぉ,先に書いてくれましたね。私の使っているコードも殆ど同じ。 一旦,必要なバッファの長さを取得してからもう一度同じ関数で変換する必要があるのがミソ。 C++的には >>715 の関数をstaticな大域関数にするのではなく, namespace { WCHAR* SJIS2WCS(string sjis) { //中身 } } のように無名名前空間に入れたヘッダファイルを用意して,この関数を利用するソースモジュール からインクルードして使うのが良いようです(参考書なんかによく書いてある)。
717 名前:デフォルトの名無しさん mailto:sage [2009/11/04(水) 15:39:45 ] >>716 ありがとうございました。
718 名前:デフォルトの名無しさん mailto:sage [2009/11/04(水) 21:13:49 ] >>716 ヘッダファイルに関数の中身まで書くの抵抗あるんだけど C++だと書いて良いというかそういうもんなの?
719 名前:デフォルトの名無しさん mailto:sage [2009/11/04(水) 22:38:43 ] >718 翻訳単位毎に実体ができちゃうから抵抗があるというのは正しい感覚だと思われ。 ヘッダをインクルードしただけで使いたいってんなら自分なら inline にしておくかな。
720 名前:716 [2009/11/04(水) 23:38:45 ] >>719 > 翻訳単位毎に実体ができちゃうから抵抗があるというのは正しい感覚だと思われ。 > ヘッダをインクルードしただけで使いたいってんなら自分なら inline にしておくかな。 おっしゃる通りで... 無名名前空間でヘッダファイル内に定義して、それを異なる翻訳単位で複数使うと、 中身が同じオブジェクトファイルが複数できてしまうよね。 異なる翻訳単位でも共通に使えるようにするのなら、コード効率を考えなければinlineに するのが良いだろうし、コード効率を重視するのならシングルトンパターンでも使って、 実体が一つしかできないようにしてクラスにするのが良いと思われ。 昔のC流でグローバルな関数にするのが一番簡単だったりして...
721 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 05:33:21 ] inline にしておけば翻訳単位ごとに実体ができようが リンク時に1つにまとめられるぜ
722 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 06:16:24 ] 多分、最適化のこともインラインのことも勘違いしてるんだろうね。 インライン展開とは、関数を実行したのと同じ「意味」になる処理を呼び出し側に埋め込んで 関数呼び出しのコストを無くすことであって、 「意味」を変えないためには>>526 のようなことが必要になる。 これは最低限の自分の存在理由を満たしているだけであって、「最適化」などではない。 一方、彼の考えるインライン展開は、引数として渡した「記述」を切り貼りして コードの姿を組み立てて、それを呼び出し元に貼り付ける、というような物らしい。 でも、それはマクロがやってることだ。 マクロといえば、簡易的なLisp処理系を作って、強力と名高いLispのマクロを実装してみると、 このへん勉強になるかもね。 Lispの言葉でいうなら、C++の関数は「引数はすべて評価してから関数に渡される」。 つまり f(g(), h());の時、fが受け取る(そして扱う)のは「g()の戻り値」と「h()の戻り値」。 だからインライン展開するにあたって、>>526 のようにすることでそれを実現する。 それに対して、Lispのマクロは「引数を評価せずに渡し、戻り値で呼び出し側を置き換える」。 こっちが彼の考えるインライン展開に近い。
723 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 06:40:41 ] ??? 526 :デフォルトの名無しさん [sage] :2009/10/06(火) 21:04:39 no problem
724 名前:716 mailto:sage [2009/11/05(木) 08:30:56 ] >>722 そもそも誰に対するレス? アンカーも間違ってるので,言っていることがイマイチよくわからん。
725 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 10:30:25 ] >>721 > inline にしておけば翻訳単位ごとに実体ができようが > リンク時に1つにまとめられるぜ それはないだろう。 もうしそうだとすると、inline関数の呼び出し時に、通常関数の呼び出しと同じように 呼び出しアドレスや引数がスタックに積まれることになってオーバーヘッドが大きく なってしまうから、inline関数の意味がなくなってしまう。 そもそもその話の出典はどこ?
726 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 13:15:10 ] pc12.2ch.net/test/read.cgi/tech/1231640024/
727 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 14:20:58 ] >>721 , >>726 なぁんだ、>>722 はSTLスレのコピペだったのか。 (STLスレのinlineの話は長すぎて読みきれん!) で、>>721 だけど、inline関数の中から呼び出される関数の実体は一つにまとめられる と言いたいのかな?それともコンパイラがインライン展開できなかったときは一つに まとめられるという話かな? ANSI C++規格書の7.1.2の2と4にそのあたりのことが書いてあるけど、俺の英語力では 「inline関数への呼び出しはリンク時に一つにまとめられる」とは読めないなぁ。 仮にまとめられるとすると、スタックを使わないでどうやってその関数を呼び出すの? 「inline関数を使うと、スタックによる関数呼び出し手続きを省くことができるので、 オーバーヘッドを省くことが出来る」と、多くの参考書等にも書いてあると思うが。
728 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 15:23:16 ] レジスタ渡しで呼ばれてるんだろうなw
729 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 15:59:45 ] それは最早呼び出し規約(fastcall)の話であってinlineじゃないな…w つか、wxWidgetsのスレでやる話なんだろうか
730 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 16:03:57 ] >>728 wが付いてるから冗談だということで... >>729 んだね。スマソ
731 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 15:50:36 ] wxWidgets用のGUIビルダーやRADツールで、カスタムウィジット(例えばwxCodeに登録されているウィジット)を 登録して、ペタポトできるようにする仕組みを持ってるものってある? あったら具体的に教えてもらえると嬉しい。
732 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 18:14:35 ] XRCed
733 名前:731 mailto:sage [2009/11/08(日) 22:45:41 ] >>732 サンクス。XRCedリソースエディタとしてC++用にも使えるんですよね。 まだ試してないんですが、やってみます。
734 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 13:20:51 ] XRCed使ってみた。巷で言われる「癖のある使い勝手」はsizerベースであることを考えれば オレは気にならないけど,イベントハンドラの名前すら記述できないし,xrcしか出力できない。 wxrc使っても,これじゃ結局イベントハンドラそのものと,イベントとイベントハンドラを接続 するコードは手書きするしかないんじゃないの? オレには向いてないみたい。
735 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 18:27:47 ] すいません・・・ 今、wxStringの文字列を、C言語のchar型に変換する方法を探ってるのですが、 なかなか見つかりません・・・ static char *C文字列; で宣言したのを、 C文字列 = wx文字列(wxConvUTF8); とやったら、 1>xxx.cpp(562) : error C2440: '=' : 'const wxChar *' から 'char *' に変換できません。 1> 変換で修飾子が失われます。 と言われた所です。
736 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 18:56:13 ] そもそもconstを非constに暗黙の変換はできない C言語(C++ですらない)の教科書に当たるか const_castでググるべし
737 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 20:59:45 ] テキストボックスでRead Onlyなのに日本語入力だと普通に書き換えられるのは仕様なの?
738 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 23:36:34 ] >>735 c_str()
739 名前:デフォルトの名無しさん mailto:sage [2009/11/10(火) 00:11:36 ] >>735 Unicodeビルドか?Ansiビルドか? 話はそこからだ。
740 名前:デフォルトの名無しさん mailto:sage [2009/11/10(火) 04:25:02 ] overviewsの wxMBConv classes overview, Unicode support in wxWidgets, それから wx/strconv.h あたりを読むよろし。
741 名前:735 mailto:sage [2009/11/10(火) 17:11:59 ] const char 変換物; 変換物 = 変換元.c_str(); char *変換物 = const_cast<char*>(変換物); ってやれば、とりあえずコンパイルは通りました。 ありがとうございます。 const charでやっといて、const付きで変換して、 あとではずすって感じですね。 んで、今度は文字コードが上手くいってないんですが・・・ コンパイルはVC++で、文字セット「設定なし」です。 一体どうすれば・・・
742 名前:デフォルトの名無しさん mailto:sage [2009/11/10(火) 17:25:42 ] どういうコードでどういうデータを使ったらどううまくいかないのさ
743 名前:デフォルトの名無しさん mailto:sage [2009/11/10(火) 22:36:10 ] >>741 char *変換物 = const_cast<char*>(変換物); 変換元が無くなったら死ぬよね
744 名前:デフォルトの名無しさん mailto:sage [2009/11/11(水) 00:22:46 ] >>741 質問するならもっと詳しく書け。 そんな質問じゃエスパーが現れるまで誰も答えられん。
745 名前:デフォルトの名無しさん mailto:sage [2009/11/11(水) 03:23:39 ] ただの愚痴だな 質問ですらない
746 名前:デフォルトの名無しさん mailto:sage [2009/11/11(水) 10:37:13 ] >>741 コンパイル通ればいいてものじゃないでしょ。 char *p = strdup(unicode_string.c_str()); とでもすればいいのに。 あと、文字セットは Unicode か MBCS(マルチバイト文字) じゃなきゃ駄目だと思うよ。 wxWidgets 使うなら Unicode でがんばって。
747 名前:デフォルトの名無しさん mailto:sage [2009/11/11(水) 10:51:51 ] みんな wstring って使ってる?
748 名前:デフォルトの名無しさん [2009/11/11(水) 16:12:34 ] wxWidgetsは、どう発音するの? ダブリュ・エックス・ウィジッツ? 既出かもしれないけど教えて。
749 名前:デフォルトの名無しさん mailto:sage [2009/11/11(水) 16:36:55 ] 日本人相手なら普通はダブルエックス・ウィジェッツ でいいんじゃね?
750 名前:デフォルトの名無しさん [2009/11/11(水) 16:42:32 ] >>749 ありがとう もしかしたら、ウィックスウィジェッツとか発音するのかと思ってた。
751 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 12:45:23 ] >>748 www.youtube.com/watch?v=xiKoaXobwk8 この00:09の所でダブリュ・エックス・ウィジッツと発音してるね。
752 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 16:47:45 ] 2.9.0になって中身がだいぶ変わったな 今までのがビルド通らないし、動きもしない・・・ バグじゃなくて仕様変更だからしょうがないんだけど。
753 名前:735 mailto:sage [2009/11/16(月) 14:46:14 ] 解決しました。ありがとうございます。
754 名前:デフォルトの名無しさん mailto:sage [2009/11/25(水) 10:37:38 ] Visual C++ 2008 Express EditionでwxWidgets2.8.9を使用しているのですが、 wxURLを使おうとすると、リンクするときにどうしてもエラーになってしまいます。 (そもそも、wxURLを書いただけでエラーになります。 wxURL以外は幾つかしか使っていないのですが、普通にうまく動きます。) test.obj : error LNK2001: 外部シンボル ""public: virtual __thiscall wxURL::~wxURL(void)" (??1wxURL@@UAE@XZ)" は未解決です。 test.obj : error LNK2001: 外部シンボル ""public: __thiscall wxURL::wxURL(class wxString const &)" (??0wxURL@@QAE@ABVwxString@@@Z)" は未解決です。 ****\****.exe : fatal error LNK1120: 外部参照 2 が未解決です。 初心者で、解決しようにも原因さえわからないのですが、 アドバイスを宜しくお願いします。 以下、再現できるコードです: #include "wx/wx.h" #include "wx/url.h" class MyApp : public wxApp{ public: virtual bool OnInit(); }; IMPLEMENT_APP(MyApp) bool MyApp::OnInit(){ wxURL url(_("example.com/ ")); return TRUE; }
755 名前:デフォルトの名無しさん mailto:sage [2009/11/25(水) 11:40:44 ] >>754 普通に通るけど、、、ライブラリは自分でコンパイルしたやつ? バイナリ使ったのならどれかな?
756 名前:デフォルトの名無しさん mailto:sage [2009/11/25(水) 13:21:44 ] >>755 ありがとうございます。結構前に入れたものなのでよく覚えていないのですが、 wxMSW-2.8.9-Setup.exeをダウンロードしてインストールし、 build\msw\wx.dswを、VC++ 2008 Expressで開いて、「ソリューションのビルド」をしたものだと思います。
757 名前:デフォルトの名無しさん mailto:sage [2009/11/25(水) 13:35:02 ] >>755 すみません・・・。 freepg.fc2web.com/cpp/topic_wx_vc.html をなどを参考にして環境を構築していたのですが、 自分のPCにある、lib\vc_libを見て、「追加の依存ファイル」に無いファイルがあることに気づき、 とりあえずwxURLと関係のありそうな、wxbase28_net.libがありませんでしたので、 それを、プロジェクトのプロパティで、追加の依存ファイルに追加したところ、 エラーが出ずに、ビルドができました。とりあえずエラーは出ないようになったので先に進めます。 初心者の質問につきあっていただき、ありがとうございました。感謝しています。
758 名前:デフォルトの名無しさん mailto:sage [2009/11/25(水) 14:02:57 ] 関係ないけど 追加の依存ファイルの入力枠って なんであんなに使いづらいんだろう
759 名前:デフォルトの名無しさん mailto:sage [2009/11/25(水) 14:05:11 ] 使いづらいよねw #pragma comment使えってことなのかなあ。
760 名前:デフォルトの名無しさん mailto:sage [2009/11/25(水) 14:41:33 ] includeパスもlibパスも使えねー 嫌がらせだろあれはw
761 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 16:13:55 ] >wxDev-C++ をインスコしたら、 >C:\Program Files\Dev-Cpp フォルダに、 vcl60.bplとかrtl60.bplがあるみたいなんだけど、 これってC++ Buider か何か?
762 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 16:19:04 ] うん
763 名前:761 mailto:sage [2009/12/02(水) 16:28:52 ] 嬉しいけど、 C++ Builder を購入してる自分的には、 2種類のソフトと思ってたのが実は1種類みたいに思えて、 損した気分w
764 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 16:51:31 ] えっ
765 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 17:10:36 ] えっ
766 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 17:43:44 ] それはあれだぞ WindowsのゲームはDirectX使ってるから実は1種類だ!! って言ってるのとかわらんぞ・・・?
767 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 17:51:31 ] それじゃドズ1種類じゃね? 他に、ウィィとかP$3買えば3種類
768 名前:デフォルトの名無しさん [2009/12/03(木) 11:43:52 ] wxwidgetsのデザイナ入ってるIDE、codeblocksとかwxdevとかで デバッグ機能を使って、STLのvectorとかlist使った配列の中身見れるやつある?
769 名前:デフォルトの名無しさん mailto:sage [2010/01/02(土) 21:37:55 ] win32api と wxWidgets の違いって何? wxWidgets でクロスプラットフォーム GUIアプリを作ろう 0xcc.net/pub/uu-2004-08/ ↑を見るとwin32をラッパしているだけ、と書いてあるのだが windows限定で開発している俺には何もメリットない認識でおk?
770 名前:デフォルトの名無しさん mailto:sage [2010/01/02(土) 23:25:16 ] MFCで開発してる奴が少ない労力でLinuxやMacで動かせるようになる点がメリット。 ということは、どういうことか分かるよな?
771 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 22:27:34 ] 文字列扱いやすいし,windowsだと冗長になってしまうコードも 簡潔に書けるってのもいいんじゃない?
772 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 23:33:40 ] 文字列扱いやすいなんてのはSTLやMFC使えば一緒だよ
773 名前:デフォルトの名無しさん mailto:sage [2010/01/04(月) 00:10:00 ] そう?MFCは使ってないからなんとも言えないけど STLやQtとか他のライブラリと比べると操作関数が豊富だったと思う 所詮好みの問題だけどさ
774 名前:デフォルトの名無しさん mailto:sage [2010/01/04(月) 01:42:25 ] 詳しい文書があり、またPythonで使えるのも良い。 GUIの挙動とか確認したい時に一々コンパイルせずともPythonでトライアンドエラー出来るのは楽。
775 名前:デフォルトの名無しさん mailto:sage [2010/01/07(木) 01:10:00 ] SSLのソケットは簡単に作れないですかね。 クライアント・サーバどちらも使いたいんですが。
776 名前:デフォルトの名無しさん mailto:sage [2010/01/07(木) 02:46:55 ] wxssl.sourceforge.net/ ちなみに中身はまったくみていない
777 名前:デフォルトの名無しさん mailto:sage [2010/01/07(木) 04:43:06 ] 求)リードプログラマー か・・・
778 名前:デフォルトの名無しさん mailto:sage [2010/01/10(日) 07:28:10 ] >>769 Code::BocksのwxSmithやwxFormBuildeや、wxDev-C++みたいな ポトペタRADツールを使うと、MFCよりサクサク開発できる。 MFCは書かなきゃならないコードが多すぎる。
779 名前:デフォルトの名無しさん mailto:sage [2010/01/22(金) 02:33:04 ] >>769 何もメリットないってことはないけど、俺ならクロスプラットフォーム でもないのにあえてwxWidgetsを選ぶことはないな。
780 名前:デフォルトの名無しさん mailto:sage [2010/01/22(金) 03:26:04 ] Win32API とか MFC のダサさを回避したいときには 敢えて wxWidgets や Qt4 とか使うのは間違いではないよ
781 名前:デフォルトの名無しさん mailto:sage [2010/01/22(金) 12:43:16 ] 同感。C++ Builderは既に死に体だし。 > 敢えて wxWidgets や Qt4 とか使うのは間違いではないよ 最近の流れだと wxWidgets は Qt に比べて分が悪いね。 Qt より単純で好きだったんだけど。
782 名前:デフォルトの名無しさん mailto:sage [2010/01/22(金) 13:20:52 ] wxWidgetsは、気に入らない部分を書き換えてビルドできちゃうところがいい
783 名前:デフォルトの名無しさん mailto:sage [2010/01/22(金) 16:24:55 ] スタティックリンクも出来るし
784 名前:デフォルトの名無しさん mailto:sage [2010/01/23(土) 00:03:56 ] 3.0まだぁー?
785 名前:デフォルトの名無しさん mailto:sage [2010/01/23(土) 00:06:43 ] >>779 で、何選ぶの?
786 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 12:08:16 ] >>785 この流れでは言いにくいけど俺はC++Builder。
787 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 12:58:26 ] 俺は逆にC++ Builderから逃げようとしている。 Borland⇒CordGear⇒Embarcaderoと母体が変わるうちにどんどん品質低下。 バグを充分に修正しないまま次期バージョンを発売してしまう。 メチャクチャな翻訳やリンク切れ満載のヘルプの酷さは見るに耐えない。 以前は沢山カキコのあったMLも超閑古鳥。 問い合わせしても自分で答えずに一般人のHPのURLをメールに貼って 「ここに情報があります」と言うヒドいサポート。 最新バージョンへの優待バージョンアップも申し込みが少なかったらしく, 昨年末までだった予定を一ヶ月延長する情けなさ。 トライアル版使ってみれば,バージョンアップする気がなくなるw Windows限定なら使いやすくて仕事が速く出来る最高の製品だった はずなのに,こんな製品に誰がした! QtをNOKIAが買ったように,どこかの大きな会社が買ってくれんかな。 wxWidgetsもどこかがバックに付かんかな。
788 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 14:47:56 ] 同意
789 名前:質問 mailto:sage [2010/02/05(金) 12:50:49 ] wxPythonを使っているのですが、 wx.media.MediaCtrlでマウスクリックのイベントから関数をコールバックすることはできないのでしょうか? もしできないのでしたら、親ウィジェットでマウスクリックのイベントを受け取ることはできるのでしょうか?
790 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 15:54:21 ] >>787 どこもバックに付かないから良いんじゃまいか
791 名前:質問 mailto:sage [2010/02/06(土) 00:14:07 ] すみません、解決しました。
792 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 17:38:58 ] wxString strを cout << str << endl; という風に出力したいんだけど、コンソール入出力用のストリームってある?
793 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 17:42:12 ] ここには人はいませんよ。ばいばいさるさん。
794 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 18:35:55 ] よく分かってないけど自己解決
795 名前:デフォルトの名無しさん [2010/02/07(日) 00:44:24 ] VC++2008EE+wxに越してきたのですがUnicode Releaseってのがあるのですが やっぱりこっちの方がいいんですかね?
796 名前:デフォルトの名無しさん [2010/02/08(月) 00:21:46 ] あんまり人いないのかな?
797 名前:デフォルトの名無しさん mailto:sage [2010/02/08(月) 00:32:22 ] Qtに引越ししつつある
798 名前:デフォルトの名無しさん mailto:sage [2010/02/08(月) 00:35:47 ] >>796 枯れてきたから使用者が多くても質問者は少ないんだろ。
799 名前:デフォルトの名無しさん [2010/02/08(月) 00:39:46 ] >>797 >>798 そうなのか Qtの方ってOSが搭載してるブラウザコアを組み込んで使えたりするのかな? wxのHTML処理関連は素のHTMLは問題なさそうだけどcssが駄目そうだし
800 名前:デフォルトの名無しさん mailto:sage [2010/02/08(月) 01:02:14 ] QtにはWebKitが付いたんだっけ?
801 名前:デフォルトの名無しさん mailto:sage [2010/02/08(月) 01:05:52 ] wxの話では盛り上がらないけど Qtの話になると盛り上がるwxスレ
802 名前:デフォルトの名無しさん [2010/02/08(月) 01:07:42 ] Monoで作るというのもあるよ あれだとC#でかけるのでC++の糞構文に悩むこともない ただMSの動きとかもろももろでどうなるかなんだよね
803 名前:デフォルトの名無しさん mailto:sage [2010/02/08(月) 01:11:26 ] Qt で書かれたアプリはときどき見かけるけど wx で書かれたのってあまりお目にかからない どんなのがあるの?
804 名前:デフォルトの名無しさん mailto:sage [2010/02/08(月) 01:14:24 ] >>803 python製アプリ見ればほとんどwxだよ。
805 名前:デフォルトの名無しさん [2010/02/08(月) 01:25:36 ] 休みを利用してwx関連をいろいろ試したけどGUI関連のツールが微妙だな ネットで調べるとすぐにでてくるwxGladeとかもうね・・・
806 名前:デフォルトの名無しさん mailto:sage [2010/02/08(月) 01:35:40 ] まぁ、GUIなんて手で書けばいいし
807 名前:デフォルトの名無しさん mailto:sage [2010/02/08(月) 03:16:08 ] wx で GUI 独立設計したいなら XRCed がいいよ
808 名前:デフォルトの名無しさん mailto:sage [2010/02/08(月) 11:11:06 ] >>795 あんまり頻繁に見ていないんだ、ごめんよ。 で、Windows で使うなら UnicodeRelease/UnicodeDebug でいいよ。 むしろそれ以外は気にしてはいけない。 static か DLL かは好みで。