[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 12/23 01:20 / Filesize : 236 KB / Number-of Response : 809
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【GUI】wxWidgets(旧wxWindows) その4【サイザー】



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/


321 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 23:46:48 ]
>>320
俺の環境ではデバッグ無しでビルドしたwxをスタティックリンクしてもgdbは問題なく機能したよ
もちろん自分で書いたソースの範囲内でね
gcc3.4.5 gdb6.8と、あとは大体新しいやつ

322 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 00:16:34 ]
>>321
gdbを6.8に変えたらちゃんとエラーメッセージが出るようになった!

んで、開発にEclipse使ってるんだが、「共用ライブラリーシンボルを自動的にロード」
のオプションを外したら何もエラーが出ずにデバッグできるようになった

gdbのバージョンが古いと勝手に落ちる、「共有〜」にチェックつけてるとgdbが落ちる、
っていう前例も見つかったわ。
両方とも結構問題になってるみたいだ。

結果的にwxWidgetsは関係なかったな…でも解決したからいいや、ありがとう。

323 名前:220 mailto:sage [2009/01/17(土) 00:26:59 ]
すいませんお礼忘れてました汗
レスくださった方々ありがとうございましたm(_ _)m
結局ディスクがおかしかったみたいでchdiskで直りました。

ところで・・QTがLGPLで使えるようになるようですね。。
正直乗り換えるかもしれない(爆

324 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 00:55:18 ]
>>323
いますぐ全部ファイルをバックアップして
HDD とりかえたほうがいいと思う

ハードディスクは消耗品だからいちど壊れはじめるとはやいよ。

325 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 06:58:04 ]
不治痛のHDDは壊れやすい
凍死場に九州されるみたいで不安

326 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 15:13:35 ]
挙動が怪しいHDDはマジやばい
ファイルシステムが壊れてるだけならいいけど
物理的にエラーがでてて代替セクタとか使い出すと
見た目普通のままコロっと逝く時があるよ

初心者でも使いやすくてHDDの状態が大体わかる
CrystalDiskInfoを勧めちゃう

327 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 21:07:43 ]
>>326
なんで急にオカマ口調なの?

328 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 22:29:44 ]
CrystalDiskInfoって確かMFCで作られてるから
wxWidgetsでクロスプラットフォーム化するのってそんな手間じゃないのかな。

329 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 01:27:50 ]
ここのところ wxpython-usersに
Subject: will Qt mean the end of wxPython ?
っていうメールがめちゃめちゃ流れててワロタ





330 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 05:56:41 ]
APIはQTのほうがすっきりしているからな。
モッサリだけど。

331 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 18:12:19 ]
少くともQtでOS毎に自然な外観提供できて
複雑なライセンス体系が無くならない限り移行はできないなあ。。

332 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 18:17:28 ]
LGPLになったんだから、ライセンス簡単だろ?

333 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 18:36:23 ]
>>332
結局商用アプリ作るとかになったら、どうせ金クレクレモードに突入するじゃん。

334 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 18:45:40 ]
LGPLだと無問題だお?

335 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 18:53:39 ]
>>334
すまん、よく調べたらそうだった。
商用版も継続するってことは結局商用には使用料とるのかと思ってたよ。

こりゃやばいなwx。。

C++でクロスプラットフォームGUIライブラリが充実する
って流れは大歓迎だけどね。

336 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 18:56:53 ]
wx使う前はイメージヨカタんだが、IDEが悪いせいかMFCっぽくコントロールに連番ふってて、ダメだこりゃとオモタ。
この辺、Qtで解消すんのかなぁ?

337 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 19:11:28 ]
統合開発環境が簡単にインストールできれば、wxも生き残れるだろうが、
今のところ、qt 優勢。

338 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 19:38:40 ]
俺はEmacs使うからIDEはいらんから、軽いRADツールがあるのが一番かな。

339 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 21:24:28 ]
良RADさえあれば一気に巻き返せそうな気はするんだが



340 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 21:31:41 ]
wxのRADって有力なのはDialogBlocksとwxFormBuilderぐらい?
俺はここ来るまでwxGladeとXRCedしか知らなかった。
ウェブ検索してもこれ以外あんまり引っかからなかったし。

341 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 23:39:01 ]
あー,そういえば最新のDialogBlocks(4.29)で
プロジェクト開ける人いる?
linuxで引数としてプロジェクトを指定すると
can't open /hoge/moge/"hage.pjd"
的な事を言われる.
ダブルクォーテーションのせいかしら.


342 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 07:37:07 ]
IDEとしての方が意味が大きいけどCode::Blocksも入るんじゃない?
ただし作業自体はRAD的でもXRCじゃなくコードが挿入される形だけどね
あのコード見るとJavaでGUI作るときの苦々しさを思い出す・・・

343 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 03:00:39 ]
code::blocksはQtのプロジェクトも組める。あれでRADに
dialogblocks程度の操作性があれば良かったんだけど。
吐くソースはcode::blocks(wxSmith?)の方が親切な気がするし。

344 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 08:45:41 ]
>code::blocks

操作感が気に入らない゚听

wx-devcppの操作感が好き。
吐き出すコードは?だけど。

345 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 03:48:17 ]
>>344
wxSmithが我慢出来ない人はwxFormBuilder使うといいよ。
イベントもconnectとEVENT_TABLE選べるみたいだし、
とりあえずSizerの領域を均等に割り振る様な事もない。
wxGlade、DialogBlocks、wxSmith、wxFormBuilderと触ってみたけど、
操作性はDialogBlocks、ソースはwxSmithがいいと思った。
ソースはユーザーの弄り易さだけで、質はまだよく判らないんだけど。

それよりcode::blocksはnightyなんて出してないで、判りやすいバグを
放置したリリース版をリプレースするべきだ。
30分も触ると落ちるのは、どうかしてる@win32

346 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 08:35:21 ]
30分さわって強制終了なんて一回も経験したことないな
特定の使い方をして落ちてるか、環境が悪いかのどちらかじゃないか?

347 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 10:44:42 ]
DialogBlocks人気っぽいから入れてみたけど
軽快だし操作感がやたらいいな。

348 名前:344 mailto:sage [2009/01/22(木) 11:37:56 ]
そんなに沢山の選択肢示されても、無理。

349 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 15:51:12 ]
>>346
環境バカはかえれ



350 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 17:09:59 ]
>>346
Thread searchタブを右クリックしてThread searchのチェックを外すと
マウスオーバーでThread searchの部品が浮かび上がる。
あるいはScript consoleタブにThread searchのレイアウト(のみ)が表示される。
その後view menuからThread searchのonoffを行えば1分も経たずに落ちる。
他にも2byte圏のlocaleを使用するとhelp pluginが動かなかったり。
30分はwxSmithとbuildのみを使用して落ちる時間。
日本語化すると少し挙動が変わるから、その辺も不完全みたいだ。
以上は自宅のwindows xp sp3及び2000sp4での話。
落ちた事が無い=ほとんどまともに使ってない、と理解する。

>>347
動作自体はかっちりしてる。editorはscintilla使ったcode::blocksの方が高機能だけど。

351 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 19:59:10 ]
>>350
日本語化して動作が不安定になるなら、英語版を使ったほうがいい
日本語版と英語版で使い勝手に差が有るなら、日本語化を行なっている作者に文句をつけるべきだ

どうやら話し口調からして、いくつか特定の「落とし方」を知っているようだから、
それらをまとめて公式のフォーラムで報告することをおすすめする
オープンソース系のソフトを「まともに使っている」と自負できる人間なら、自分で修正してビルドするのもいい

一ついえることは、ここで文句を言っても、お前を含めて誰も得をしないということだ

352 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 20:29:17 ]
>>351
トラブルは全て英語の話で、日本語化もgettextを使った物だからbuildは一緒だ。
そもそも初めて使って5分で出る症状を、1年近く経ってから一々報告してどうする。
30分じゃ落ちた事がないと、使ったこともない奴が宣ってるから、実例を上げただけで、
ある情報に対しての損得は、その人次第だろう。

353 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 22:15:44 ]
ひさしぶりにwx-Devcppのサイト覗いたらバージョン上がってるんだけど、
使っってる人いたら教えてください。正常にデバッグができますか?

354 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 23:59:37 ]
>>352
何か勝手に「使用経験なし」だと思っているようだが、
俺はCodeBlocksを使って何本かソフト作ったことがあるぞ?
それこそ強制終了など一度も経験せずに。(むしろgdbがよく落ちた記憶がある)

報告してどうするって、バグフィクスを期待するに決まっているだろう
ユーザーがバグ報告するというのはソフト制作の大事な一環じゃないか。
修正とまでは行かなくとも、バグ回避の方法が製作者から聞けることだってある。

「文句を言うという行動は生産的ではないから、自分で何かしら行動したほうがいい」
ということがいいたいのだ。

とはいっても、こんなことは2chで言うべき言葉ではなかったかもしれないな

355 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 02:38:38 ]
俺もcode::blocksが落ちたことはないな
特定のペインが表示されなくなって困ったことはあるが

356 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 20:14:55 ]
WindowsのMinGW-5.1.4とMSYS-1.0.10を入れた環境で、wxWidgets-2.8.9をconfigureした後makeしたんですが、下記のようなエラーが出て先に進まなくて困っています。

0 [main] sh 2996 open_stackdumpfile: Dumping stack trace to sh.exe.stackdump

ご助言を頂けないでしょうか。

357 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 12:10:51 ]
WindowsだったらVisual Studioでやったらいいと思うんだけど

358 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 14:05:13 ]
せっかくフリーで可搬的なライブラリ使ってるのに
Windows上でだけ特別にVSなんか使いたくないわな。

359 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 16:14:06 ]
とりあえず>>356のエラーメッセージは糞の役にも立たないわな。
役に立たないレベルでは50歩100歩だが、同様の環境でwxWidgets-2.8.7はビルド成功してるんで参考までに。



360 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 17:15:08 ]
configureやdumpの内容も書いてない状況でした。
失礼しました。
同様の環境で出来たとのお話もあったので、
ライブラリ周りを見直してみたら上手くいきました。
助かりました。ありがとうございます。

361 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 19:14:42 ]
マウスイベントでWindowsAPIのSetCaptureに相当するものってあったっけ?

362 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 19:18:07 ]
自己解決
CaptureMouse();
ReleaseMouse();

363 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 17:32:00 ]
マウスの動きに連動して描画させると
非同期に描画命令が発行されるんだけど
つまりマウスの動きに合わせてPaintイベントが何度も呼ばれる
全部処理してから最後の描画が終わるまで画面が更新されない
そのせいでマウス移動中に画面がぐちゃぐちゃになるんだが
完全に表示が終わるまでマウスを動かなくするとか
他の描画が来たらそれ以前のはすべてキャンセルさせるとか出来ないの?

364 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 18:17:32 ]
>>363
他からPaintイベントが出るなら
マウス操作中は自分だけが処理するように
OnPaintを自前で用意すればいい。

マウスの移動だけではPaintイベント出ないとは
思うんだけど…

365 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 19:45:18 ]
マウスの動きに連動して描画させると

366 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 23:14:50 ]
描画(が何してるかわからんけど)でOnPaint出たっけ?

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 ]
廃れてるんじゃなくて、枯れてんだよ。
だから安心して使うがいい。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<236KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef