【GUI】wxWidgets(旧wxWindows) その4【サイザー】at TECH
【GUI】wxWidgets(旧wxWindows) その4【サイザー】 - 暇つぶし2ch302:デフォルトの名無しさん
09/01/12 21:10:54
New controls and other major GUI additions for all ports
全ての修正とマイナーチェンジを羅列できないので、GUIの変更の概要のみ。
・柔軟な表現が可能なwxDataViewCtrl/wxDataViewTreeCtrlを実装。wxListCtrl/wxTreeCtrlを一部代替。
・wxGridの表形式はwxHeaderCtrlに分離したネイティブなヘッダを実装。
・wxPropertyGridの追加。
   名前-値のペアを表現する一般的クラス。
   wxDataViewCtrlと同様、数値、テキスト、リスト、フォントなどの
   組み込みのエディタ(in-place, ポップアップ、コンボボックス等)を提供する。
・wxHyperlinkCtrlをGTKでネイティブに、他では一般的方法で実装。
・ファイルダイアログのカスタマイズのためwxFileCtrlを実装。
・wxRichTextCtrlに親・子スクリプトのサポートを始め高速化など色々改良。
・wxTreeCtrlに状態アイコン表示機能追加。チェックボックス的にも使える。
・wxCalendarCtrlを刷新しMSWとGTK+でネイティブに。その他改良。
・wxTextCtrlとwxComboBoxでオートコンプリート機能を実装。
・wxAUIのクラス群にwxAUIToolBarを追加。より柔軟で自然に。
・wxBitmapComboBoxを再実装、MSWとGTKではネイティブに。
・wxBitmapToggleButtonを全プラットフォームに。
・wxStaticTextは全プラットフォームで省略表現をサポート、GTK+でマークアップ書式をサポート。
・全プラットフォームでwxListBoxの選択イベントの発起方法を書き直し精確にした。
・GTKとOSXでwxCollapsiblePaneをネイティブ実装。
・複数行に渡ってwrap可能な新しいsizer、wxWrapSizerを追加。
・OpenGlキャンバスにマルチサンプル、アンチエイリアスサポート追加。
 wxGLCanvasとwxGLContext分離。
・wxTopLevelWindowをネイティブウィンドウハンドルから構築するため
 MSWとGTK+にwxNativeContainerWindowを追加。

303:デフォルトの名無しさん
09/01/12 21:11:29
wxMac specific changes (now called wxOSX)
・wxMacという呼称は廃止、wxOSXと呼称、iPhoneとiPodを一部サポート。
・Carbon, Cocoa, CocoaTouchの3つの一般コードに整理。
・OSXのCoreFoundationへのラッパでったり一般的なクラスへのラッパだったり。
・CarbonがwxMacのコアで安定していたが、iPhone対応にCocoa(Touch)が必要で、
 64bitのOSXでは非推奨となるため、現在はCarbonでも今後はCocoaにフォーカス。
・リストラクチャリングの一貫としてQuickDraw APIを使ったコードは削除。
 今後はCoreGraphicsを使用する。
・同様にOSX10.4にないCarbonの関数を使用したコードは削除。
 OSX10.4が最低動作環境になる。
・IconRefのサポート拡充。
・英語以外のロケールでのメニュー項目の重複を修正。
・ボタンにアクセラレータが使用可能に。
・CFLocaleを使用したwxLocal::GetInfo()の実装。

wxGTK specific changes
・GTK+のAPIが後方互換性がなくなって来たためGTK+2.4を最低環境とする。
・wxToolbarは新しいGTK+のツールバーAPIを使用。
・wxChoiceはGtkOptionMenuでなくGtkComboBoxを使用。
・wxComboBoxは非推奨のGtkCombでなく常にGtkComboBoxを使用。
・URLのドラッグはwxURLDataObjectで"text/x-moz-url"を使用。
・GtkPrintとCairoのダイアログを使用した新しいプリントバックエンド。
・アイドルイベントの生成コードを書き直し。
・タブの走査はGTK+でネイティブに。
・wxFrameのメニューバー、ツールバー、クライアントウィンドウとステータスバーは
 GtkVBoxを使用したレイアウトに書き直し。
・ウィンドウマネージャに帰属するウィンドウの装飾に係わらず
 トップレベルウィンドウSetSize()/GetSize()を正しく実装。
・wxYield()の呼び出しを避ける(リエントラント問題回避)ため
 wxClipboardの非同期APIを追加。
・Nokiaのタブレットで使われるMaemoプラットフォームの
 Hildonコントロールをいくつかサポート。

304:デフォルトの名無しさん
09/01/12 21:13:12
wxMSW specific changes
・後方互換性が確保されており、ユーザ数が多いため最も安定しており、
 他のプラットフォームに比べ大きな変更はない。
・wxCheckListBoxがよりネイティブな感じに。
・長いツールチップが可能に。
・wxCheckBoxとwxToggleButtonで複数行ラベルをサポート。
・より正確なプリントプレビュー。
・サイズ変更可能なダイアログでリサイズグリップを表示。

以上、>>294曰く「御託だけで何もしない無職」の大雑把な訳でした。

305:300
09/01/12 23:38:51
>>301-304
引き続きサンクス。wxOSXが結構面白そうに思えたんで、Mac Miniの中古でも
買ってみようかな。
あと、御託云々はあんまし気にしなくても良いと思うよ。

それよか、スタティックリンクでソース公開しなくてもいいwxWidgetsを使って
金儲けできると良いんだけど、クロスプラットフォームでお金になりそうなアプリって
どんなのだろ?どうにもイメージが沸かない。

306:デフォルトの名無しさん
09/01/13 07:22:12
2ちゃんでちょっと煽られたくらいでむきになるようだと
実社会で辛くないか

307:デフォルトの名無しさん
09/01/13 07:46:14
翻訳しただけでムキになってるとか決めつけるようだと
実社会ですぐ口論にならないか

308:デフォルトの名無しさん
09/01/13 18:05:10
まぁ、どう見ても煽られたのが原動力にはなってるがな

309:デフォルトの名無しさん
09/01/13 18:18:57
翻訳人は無能ではないことを証明したし
英語読めない人は3.0の改善項目がわかったし
みんな幸せってことでいいんじゃなかろか

310:デフォルトの名無しさん
09/01/14 00:58:01
英語読めるようになりたいな

311:デフォルトの名無しさん
09/01/14 01:40:22
これからはアラビア語の時代だけれどもね。

312:デフォルトの名無しさん
09/01/14 13:11:27
つまらん、次

313:デフォルトの名無しさん
09/01/14 13:56:31
これからはアラビアゴムの時代だけれどもね。

314:デフォルトの名無しさん
09/01/14 22:09:16
MinGWでコンパイルしたwxWidgetsを使って
minimal sampleを動かそうとしたんだが
意味不明なタイミングでSIGSEGVが出て起動すらしない

◆gdbのスタックのコピー
スレッド [1] (中断中 : シグナル 'SIGSEGV' を受け取りました。説明: Segmentation fault)   
    9 wxFontMapperBase::Get()  0x0044e816   
    8 wxFontMapperModule::OnInit()  0x00546e3b  
    7 wxModule::DoInitializeModule()  0x00478632    
    6 wxModule::InitializeModules()  0x0047878c 
    5 wxEntryStart()  0x004bb64a    
    4 wxEntryReal()  0x004bb879 
    3 wxEntry()  0x00430e9e 
    2 WinMain() KirbyClone.cpp:117 0x00401406   
    1 main()  0x005340d1    

ソースコードはほとんどそのままなんだけど、(少なくとも上に載っている関数は触ってない)
原因があるとしたらどこ?

315:デフォルトの名無しさん
09/01/14 22:13:06
それにしても、今日wxWidgetsの勉強を始めたばかりなんだが、
configureのオプションをいじると恐ろしいほどビルドに失敗するね
disable系を何個かつけると高確率でmakeが止まる

316:314
09/01/14 22:47:14
sample自体をそのままmakeすると成功するみたいだ

となると、俺が自力で書いたMakefileが悪いのかな…

317:デフォルトの名無しさん
09/01/15 10:31:46
>>316
MinGW はさわったことがないので山勘ですが。
メモリマップの方法がライブラリと本体で違うとか?


318:デフォルトの名無しさん
09/01/15 19:07:46
商用版とGPL版しかなかったQtにLGPL版が出たね。
static linkできないのはちょっとアレだけど、なんかで使ってみてもいいかなー

319:デフォルトの名無しさん
09/01/15 23:12:46
このままじゃ対抗できないからwxもWt(ワット)に改称してキャッチーな感じで攻めようよ。

320:デフォルトの名無しさん
09/01/16 22:44:34
wxWidgetsにスタティックリンクしたプログラムをgdbでデバッグする。

コンパイル時に-gでデバッグ情報をつけるわけだが、
この時にライブラリの方もデバッグバージョンを使わないといけないのか?

なんかリリースバージョンをリンクした状態でデバッグしようとしたら
gdbが異常終了するんだが…

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

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

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

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

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

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

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

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

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

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

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

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

327:デフォルトの名無しさん
09/01/17 21:07:43
>>326
なんで急にオカマ口調なの?

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

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



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

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

332:デフォルトの名無しさん
09/01/19 18:17:28
LGPLになったんだから、ライセンス簡単だろ?

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

334:デフォルトの名無しさん
09/01/19 18:45:40
LGPLだと無問題だお?

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

こりゃやばいなwx。。

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

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

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

338:デフォルトの名無しさん
09/01/19 19:38:40
俺はEmacs使うからIDEはいらんから、軽いRADツールがあるのが一番かな。

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

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

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


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

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

344:デフォルトの名無しさん
09/01/21 08:45:41
>code::blocks

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

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

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

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

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

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

348:344
09/01/22 11:37:56
そんなに沢山の選択肢示されても、無理。

349:デフォルトの名無しさん
09/01/22 15:51:12
>>346
環境バカはかえれ

350:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/01/22 19:59:10
>>350
日本語化して動作が不安定になるなら、英語版を使ったほうがいい
日本語版と英語版で使い勝手に差が有るなら、日本語化を行なっている作者に文句をつけるべきだ

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

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

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

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

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

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

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

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

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

356:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/01/28 12:10:51
WindowsだったらVisual Studioでやったらいいと思うんだけど

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

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

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

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

362:デフォルトの名無しさん
09/01/29 19:18:07
自己解決
CaptureMouse();
ReleaseMouse();

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

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

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

365:デフォルトの名無しさん
09/01/30 19:45:18
マウスの動きに連動して描画させると

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

367:デフォルトの名無しさん
09/01/30 23:23:21
>>363
マウスイベントハンドラで Refresh() を呼んでPaintイベント出してるとかいった状況?
もしそうなら、Refresh() 呼んだ直後に Update() 呼べば、同期的に画面更新できるよ。
(つまり、Update() から戻ってきたときにはPaintイベントが処理されて、画面更新が終わってる)

368:デフォルトの名無しさん
09/01/30 23:39:52
>>367
マニュアル見る限りではUpdate()呼ぶならRefresh()要らんと思う

369:デフォルトの名無しさん
09/01/30 23:49:37
>>368
マニュアルのUpdate()のとこに、
Use Refresh first if you want to immediately redraw the window unconditionally.
ってあるから、Refresh()いると思うよ。
無効領域がない状態でUpdate()しても何も起こらないと書いとる。

370:デフォルトの名無しさん
09/01/30 23:54:52
ごめんRefresh()のinsteadだけ見てた

371:デフォルトの名無しさん
09/01/31 09:11:40
質問があります。
ボタンの上での右クリックイベントを捕捉したいのですが、
button->Connect(ID_RIGHT_CLICK,
wxEVT_COMMAND_RIGHT_CLICK,
wxCommandEventHandler(MyFrame::OnRightClick),
NULL, button);
としてもうまくいきません。
どうすればよいでしょうか。

372:デフォルトの名無しさん
09/01/31 12:28:29
>>371
OSは何? wxEVT_COMMAND_RIGHT_CLICKは Windows 95 and NT のみサポートらしいよ。
wxEVT_RIGHT_UPあたりで妥協しとくのが無難かもしれん。


373:デフォルトの名無しさん
09/01/31 12:36:07
>>371
あ、Connect() の最後の引数はbuttonじゃなくて、thisとかじゃない?
eventSink引数には、イベント発生元オブジェクトじゃなくて、イベントハンドリングするオブジェクトを渡す。
だから、この場合はMyFrameオブジェクトを渡さないといかんです。

374:デフォルトの名無しさん
09/01/31 15:19:10
>>372
OSはWinXP Home Editonです。wxEVT_RIGHT_UPにするとイベントを捕捉できました。
ありがとうございました。
>>373
eventSinkにはMyFrameオブジェクトをわたせばいいのですね。
ありがとうございました。

375:デフォルトの名無しさん
09/01/31 18:50:14
タイマーイベントを使っていて反復実行している時
処理が混みだすとイベントがキューに溜まったような
状態になり他のイベントをリアルタイムに実行できなく
なります。
溜まったイベントを削除する方法はあるんでしょか。


376:デフォルトの名無しさん
09/02/01 11:48:39
>>375
タイマー間隔を少し長くするか、wxIdleEventでRequestMore() しまくるなんてのはどうかな?
たまったイベントの削除関数とかは見かけたことないなぁ(あるかもしれないけど)

377:375
09/02/01 17:54:01
回答有難うございます。
Win32APIにはイベントを削除する方法があった気がしたので
どうかなとおもったんですが。
時間管理を見直してみます。

378:デフォルトの名無しさん
09/02/06 14:12:47
一番良いIDEは?
ダイアログイパーイ作る場合ね。

379:デフォルトの名無しさん
09/02/06 14:34:46
Sizerの使い方を覚えたら、もうバカらしくてGUIで
ダイアログ作ろうだなんて思わないけどね

380:デフォルトの名無しさん
09/02/06 14:40:26
コードでGUIを設定するのがバカらしいというのが一般的だが。

381:デフォルトの名無しさん
09/02/06 16:11:56
RADどれ?って質問だったら万人に薦められるのはwxFormBuilderくらいなんだがな
RAD単体でPythonいらずってとこから
IDEとなると自分で全部試せとしか言えない

382:デフォルトの名無しさん
09/02/06 16:15:11
>wxFormBuilder

ラジャ
使ってみるお。

383:323
09/02/10 14:06:40
>>324
>>325
>>326

ありがとうございます!



384:デフォルトの名無しさん
09/02/11 15:15:05
wxFormBuilderって、コンストラクタでnewしたインスタンスを
デストラクタでdeleteしてくれないんだけど、これは自分で書くの?

385:デフォルトの名無しさん
09/02/11 17:37:33
自動でdeleteしてくれるライブラリ(スマートポインタとか)使わないなら
newした分だけdeleteするように書くしかないよ

386:デフォルトの名無しさん
09/02/11 17:58:47
公式つながんない。

387:デフォルトの名無しさん
09/02/11 23:24:55
wxDevC++!

ごめん嘘

388:デフォルトの名無しさん
09/02/12 11:42:37
 ↑
何がウソで何がホントかハッキリしる!

389:デフォルトの名無しさん
09/02/12 13:35:51
>>384
SizeにAddしたオブジェクトは勝手に削除される。
自分でdeleteしちゃだめ。

sizer.cpp の551行目

390:デフォルトの名無しさん
09/02/12 14:54:15
ひょっとして>>384はGenerate Codeで吐き出されたコードに追記しようとしてるのか?
Generate Inherited Classで継承したクラスに自分のコードを書くのが正しい使い方だぜ?
そうじゃないと細かい修正でGenerate Codeしたらまた書き直さなきゃならないだろ

391:384
09/02/12 23:12:05
>>390
いや、継承して書くのはわかってたけど、吐き出されるコードも
読んでおこうと見てみたらdeleteしてなかったので、
どうすんだろうなぁと。

で、>>389で納得しました。
ありがとうございました。

392:デフォルトの名無しさん
09/02/12 23:16:13
wxWidgetsはフレームワーク側で色々ゴニョゴニョしているから
正直、自分で組んでて不安になって来るんだよな。細かい挙動とか、特に。

393:デフォルトの名無しさん
09/02/14 00:44:18
Mac OS X 10.5にデフォルトで入ってるものを利用し、簡単なプログラムを組んだんだけど、
実行すると固まって操作できないのはそういうものでしょうか。
最新2.8.9のものをmakeして利用すれば問題ないのでしょうか。
っていうか、wxOSXっていつ頃になるの?

それからWindows上でwxFormBuilderを使ってみたのですが、
イベント部のコードを吐いてくれるのはいいけど、
マージしてくれないので、使いにくい。
そうゆうもんですか。
DialogBlocksは有償だけあって使いやすかったけど、レジストしてないから制限に引っかかる。
金ないからorz
なんかいいGUIのBuilderが欲しいと思った。


394:デフォルトの名無しさん
09/02/14 01:43:50
>>393
>Mac OS X 10.5にデフォルトで入ってるものを利用し、簡単なプログラムを組んだんだけど、
デフォルトでは wxPerl とか wxPython しか入ってないとおもったけど、どうやるの?
OS X は実行ファイルは .app パッケージに入れないとイベント受け取れないから
固まったように見えますよ。
URLリンク(wiki.wxwidgets.org)
とか参照。


395:デフォルトの名無しさん
09/02/14 07:52:22
>>394

あ、そうなんですか。
Makefile書いてメイクしたのですが、minimalサンプルみたらxcodeのファイルがありますね。
MacはMacの作法にのっとってオブジェクトを配置しないといけないんですね。
ちょっとやってみようと思います。

因に私がやったメイクは、LinuxのwxGTKを使うように、
wx-config でインクルードとライブラリをあててmakeしました。
wxMacを特別に入れた記憶はありません。


396:デフォルトの名無しさん
09/02/14 09:11:03
>>395
なるほど、wxPerl とかだけでなくて wxWidgets そのものが
デフォルトでインストールされてるんですね。そりゃそうか。

397:デフォルトの名無しさん
09/02/24 14:17:50
もうすぐ2月が終わる
2.9.0来るかなぁ

398:デフォルトの名無しさん
09/03/01 16:32:53
Eclipse CDTでwxしようとしてるんですが、ビルドとかは問題なくできるものの
補完のためのインデクサが

 Syntax error: DECLARE_EVENT_TABLE();

とかポップアップしてきて機能しません。

ビルド自体には影響してませんが、これだとエラーと非エラーが混ざって
使い勝手が悪いので、なんとか正常に処理させたいのですが、同じように
困ってる話は見つかっても解決方法が見当たりません。

どうすればいいでしょうか?

399:デフォルトの名無しさん
09/03/02 23:10:17
wxPython2.8のAnimationが返す値おかしくね?
DisposalMethodがどうも-1ずれてるみたいし
BackgroundColourもなんか変だ
俺のだけ?


400:デフォルトの名無しさん
09/03/03 13:38:10
ソースあるんだから自分で調べたらいいじゃんか

401:デフォルトの名無しさん
09/03/03 19:05:13
うんその言葉で読む気になったわ
、で-1ずれてんのはcoincideだってさ
BackgroundColourは最初のフレームから
背景色に初期化しなかった俺のミス

ここで聞くよりソース読んだほうが
確かに早いけど誰もその情報は共有できん
のだ
いい意見有難う

402:デフォルトの名無しさん
09/03/10 10:16:05
質問
レイアウト制御において

Sizer > Panel > Sizer
Sizer > Sizer

ってやっぱり違うんですか?( > は入れ子の関係を表してます)
コントロールをまとめる枠としての Panel の存在意義がイマイチわからないっす。

403:デフォルトの名無しさん
09/03/11 02:02:27
Panelは子コントロールの親になる
Sizerはあくまで下層要素のサイズを制御するだけ

404:デフォルトの名無しさん
09/03/11 07:05:48
>>403
ありがとうございます。
単にレイアウトを制御したいだけなら Sizer を直に入れ子にして、
コントロールを論理的にグループ化したい場合は Panel でまとめる、という感じですね。

405:デフォルトの名無しさん
09/03/11 08:02:25
いつも使ってて思うことなんだけど、Sizerというクラスをなくして
レイアウトの機能もWindowに含めてほしい(統合してほしい)
そうなっていないということは、そうすると何か問題があるのだろうか

406:405
09/03/11 08:03:13
ごめんageてしまった

407:デフォルトの名無しさん
09/03/11 08:19:10
>>405
コントロールのレイアウトのためだけにWindowを入れ子にするのは
メモリ効率が悪いからじゃないでしょうか

だからレイアウトアルゴリズムだけをクラスとして抜き出して Sizer なんてものを
作ったのでは

408:デフォルトの名無しさん
09/03/11 23:22:44
レイアウトアルゴリズム増やそうとする度に
wxWindowクラス書き換えて肥大化していくのは困るでしょ

409:デフォルトの名無しさん
09/03/12 10:16:25
GoF でいうところの Strategy パターンというやつだな

410:デフォルトの名無しさん
09/03/13 19:16:34
質問させて下さい。
wxRuby でちょっとした GUI ツールを書いているのですが、
ウィンドウを close してアプリを終了してもプロンプトが返ってきません。

ウィンドウを XRC から作るように変更したところでこのような
現象が発生するようになりました。

具体的には
Wx::XmlResource.get.load_frame_subclass(self, nil, "MyFrame")

があると上記の問題が発生します。
on_exit も呼ばれず、どうも何かが解放されずに残っていてアプリの終了を
邪魔しているような印象です。
どのような原因が考えられますか?

411:410
09/03/13 19:18:34
補足
ウィンドウはきちんと表示されており、イベントハンドラの設定もうまくいっています。

412:410
09/03/13 22:04:27
CloseEvent に対するデフォルトのハンドラが呼ばれなくなったと推測
XRC からリソースをロードした段階で CloseEvent をトラップする別のハンドラが
設定されたのか?

よくわからん。調査続行

どなたかヒントでもあればお願いします m(__)m

413:410
09/03/13 23:24:53
evt_close {|event| exit }

でとりあえずプロンプトは戻るようになった。

414:デフォルトの名無しさん
09/03/14 10:35:35
俺もその現象あった
XRCは使ってなかったけど、Frameのサブクラス作ったからそのせいかも

415:410
09/03/14 11:31:46
>>414
自分も Frame のサブクラス作ってますが、それだけでは上記の問題は
発生しませんでした。
GUI が複雑になってきたので XRC をロードするように変更したところ
close でプログラムが終了しなくなりました。

閉じられるウィンドウが最後の一枚だったら exit というハンドラを自分で
設定すれば元の動作に戻るはずですので、そうしようと思ってます。

416:デフォルトの名無しさん
09/03/19 19:09:19
なんで SetCellAttr はないんだ? セル単位で制御したいのに
まあ、自分で書いたらいいだけだけど

417:デフォルトの名無しさん
09/03/21 11:26:29
2.8.10安定版リリース

418:デフォルトの名無しさん
09/03/31 21:19:15
保守総一郎

419:デフォルトの名無しさん
09/03/31 21:23:43
Qtに流れ始めたかのぉ??

420:デフォルトの名無しさん
09/04/01 11:07:04
最近 wxWidgets 使い込み出したのに廃れてもらっては困るぜ!

421:デフォルトの名無しさん
09/04/01 11:58:06
廃れてるんじゃなくて、枯れてんだよ。
だから安心して使うがいい。

422:デフォルトの名無しさん
09/04/01 12:44:39
Qtとどっちがつおい?

423:デフォルトの名無しさん
09/04/01 13:21:00
字面でみると wxWidgets の圧勝w
Qt のクラス名って全部 Qなんたらで間抜け面

きゅうりのQちゃんかよw

424:デフォルトの名無しさん
09/04/01 14:09:34
その発想は全くナカタ

425:デフォルトの名無しさん
09/04/01 15:08:01
ガンダムだって WX はあるけど Q はないしなw

426:デフォルトの名無しさん
09/04/02 17:42:54
ここはデスクトップアクセサリを作る人も見ていいところですか??

427:デフォルトの名無しさん
09/04/02 17:44:11
と思ったけど、なんか違うみたいですね?
あのYahoo! Widgetとは別もんですか。

428:デフォルトの名無しさん
09/04/02 17:48:41
全然違うよ。
これはクロスプラットフォームなGUIライブラリ。
アプリケーション全般を作るためのライブラリ

429:デフォルトの名無しさん
09/04/04 19:59:33
素朴な疑問
wxWidgets ってウィンドウを座標(-1, -1)に配置できなくね?
というか、DEFAULT_POSITION と座標(-1, -1)を区別できないような……

実用上困ることはないけど、デフォルト値がなにかと -1 なのはどうかと思った。

430:デフォルトの名無しさん
09/04/05 10:56:39
最小値が -1 の GridCellNumberEditor も作れねえ
サブクラス作りなさいってことか

431:デフォルトの名無しさん
09/04/11 17:18:38
ブラウザコントロールって何かお勧めありますか?
Windows, Linux両方でまともに動くやつで。

432:デフォルトの名無しさん
09/04/11 20:31:04
>>431
使ったことないけどwxHtmlWindowってのがあるね

433:デフォルトの名無しさん
09/05/09 13:35:48
ライブラリビルドでwx.dswとwx_dll.dswの違いって何ですか?

434:デフォルトの名無しさん
09/05/09 16:15:04
static linkとdynamic linkの違い
前者は実行ファイルが巨大になる
後者は実行ファイルは省サイズだが配布時にdllを含める必要がある

435:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/05/09 21:54:40
glGetIntegervでGL_POINT_SIZE_RANGEの値を調べてみては?

437:デフォルトの名無しさん
09/05/19 11:58:21
TreeCtrl上でキー入力すると最初の文字がマッチした項目に移動するんだけど、この動作って無効にできない?
Keydownイベントとか設定しても、マッチしないキーを押すとポンポンエラー音みたいなのが鳴ってうっとうしいんだよね・・・


438:デフォルトの名無しさん
09/05/21 10:18:31
>>437
イベントを skip しなければいいのでは?

439:437
09/05/21 15:16:31
>>438
特にskipする記述はしていないのですが、上記の動作をしてしまうんです。
明示的にskipしないようにする記述がいるのでしょうか?

なんかkeydownイベントの前に動作している気がするんですが、他の箇所に書く必要があるんですかね?

まだあまりよくわかってないので質問ばかりになってしまい申し訳ありません。

440:デフォルトの名無しさん
09/05/22 07:08:10
wxではあまり細かいことは気にしないのが吉。
下のレイヤのデフォルト動作の違いによるプラットフォーム間での差異とか結構あるし。

441:437
09/05/22 12:46:37
>>440
なるほど、そうゆうものと割り切った方がいいんですかね。
なんか方法があるだろうと思ってはまってたんで、ちょっと気が晴れました。ありがとうございます。

結構細かいことをやりたかったんで、他のものも含めて考え直してみようと思います。

QTとかどうなんですかねぇ。似たような感じもしますが・・・

442:デフォルトの名無しさん
09/05/22 15:31:21
>>441
Qtはwxとは思想が逆。OSネイティブGUIアプリとの違いは出やすいが
自作クロスアプリでのOSごとの違いを少なくするのはやりやすい。


443:デフォルトの名無しさん
09/05/22 15:42:42
 ↑
分かるようで分からない文章だな

444:デフォルトの名無しさん
09/05/22 16:14:32
どこがわからない?

そのOSの他のソフトと同じような動作にしたい→wx
OSが何であろうと同じソフトなら同じように動作させたい→Qt

ならわかる?

445:デフォルトの名無しさん
09/05/22 16:48:57
文章は分かったが、実態は分からないw

446:デフォルトの名無しさん
09/05/22 16:58:15
少なくとも>>441の疑問には即してないな
俺はどうでもいいが

447:441
09/05/24 16:59:35
Qtいろいろ試してみました。
442さんのおっしゃるとおり思想の違いなのか結構細かいことまで設定できるようです。

キーイベントはデフォルトの動作を上書きできるみたいですね。
ポンポンエラー音みたいなのも鳴らないし、いい感じです。

Qt Creatorが使いやすくてレイアウトがとっても楽なのもうれしいですね。
ここにQtのことを書くのはあれなんでこれぐらいにしときますが、自分の要件には合ってる気がするんでこれでいってみようかと思います。

遅くなりましたが以上報告でした。お騒がせしました。

448:デフォルトの名無しさん
09/05/25 01:06:28
そうかそうか。おれはどっちも好きなんでガンバレ。

そういうわけで、俺と>>441の間では通じてたようなのでOKだな。

449:デフォルトの名無しさん
09/05/25 21:37:25
>>448
終わりよければすべて良しってやつか

450:デフォルトの名無しさん
09/06/04 14:26:51
ウックス

451:デフォルトの名無しさん
09/06/18 08:17:18
すみません、2.8.8をスタティクライブラリとしてコンパイルするにはどうすればいいのでしょう。
調べてはみたのですが、DLLにするやり方しかのっていないのです。


452:デフォルトの名無しさん
09/06/18 09:05:37
install.txtとかくらい読め

453:デフォルトの名無しさん
09/06/18 15:33:40
>>451
環境くらい書けよ。Macか?

454:デフォルトの名無しさん
09/06/18 18:21:01
>>452
すみません、なにしろ初心者なものでして…
>>453
申し訳ない、環境はWindowsXPでCode::Blocksで開発する予定です。

455:デフォルトの名無しさん
09/06/18 21:27:52
すみません、家帰って>>452さんのいっていたやつ読んだら解決しました。

ちょっと首吊ってきます・・・

456:デフォルトの名無しさん
09/06/19 15:25:04
ようやくスタートラインに立てたんだから
がんばれよー

457:デフォルトの名無しさん
09/06/19 21:37:23
みなさんシリアル化とかどうしてます?

458:デフォルトの名無しさん
09/06/21 09:29:42
wxWidgetsを使った日本発のオープンソースプロジェクトってありますか?
もしあれば参考にしたいので教えてください。

459:デフォルトの名無しさん
09/06/21 09:42:02
sourceforge.jpとかで検索してみるとか。

URLリンク(www.google.co.jp)

460:デフォルトの名無しさん
09/06/21 10:06:47
ありがとうございます。wxRubyやwxPythonじゃなくて
C++のを探していたのですが、あまり見つからないですね。
MalonNoteというのがあったので見てみます。

461:デフォルトの名無しさん
09/06/22 22:42:46
wxPython の wx.lib.floatcanvas と同等の機能を持った
wxWigets の C++ ライブラリってないでしょうか?

462:デフォルトの名無しさん
09/06/28 19:24:12
2.8.10を使っていますがJaneStyleのスレ覧タブみたいなものはなんていうコントロールなのでしょうか?

463:デフォルトの名無しさん
09/06/29 11:17:00
>>462
標準のだと wxNotebook
拡張されているのは wxFlatNotebook

464:デフォルトの名無しさん
09/06/29 16:48:09
>>463
thx!

465:デフォルトの名無しさん
09/07/02 22:00:06
wxMSW-2.8.10を使っています。

wxMessageBoxやwxAboutBoxを使うとビープ音が鳴りますが
これを鳴らさなくする方法はありますか?もしかしたら
wxWidgetsじゃなくてWindowsが出してるのかもしれませんが。

466:デフォルトの名無しさん
09/07/03 10:39:41
>>465
うん、出しているのはWindows。
それが嫌なら wxDialog あたりを継承して自作するのが楽だと思うよ。

467:デフォルトの名無しさん
09/07/03 17:31:34
>>466
ありがとうございます。自作することにします。

468:デフォルトの名無しさん
09/07/22 06:48:33
クロスプラットフォームなアウトライナーみたいなのを作ってます
wxRichTextCtrl使ってみようと思ってサンプル動かしてみたんですが
wxGtkではwxRichTextCtrlでインライン入力できないんですか?


469:デフォルトの名無しさん
09/07/24 10:53:48
>>468
wxGTK は触ったことないからなんとも言えないな~
wxWidgets は IME 関連の制御をしていないと思うから、
なんらかのメッセージを処理すればいいんだとは思うけど。

470:デフォルトの名無しさん
09/08/11 06:15:03
wxWidgets 3.0っていつごろリリースされそうですか?

471:デフォルトの名無しさん
09/08/11 07:28:49
>>470
ロードマップだと
URLリンク(trac.wxwidgets.org)

We hope to make 3.0 before the end of 2009.

年末じゃねえの。まあこういうのは早くなることはなく、大概おくれるもんだけどなw

472:デフォルトの名無しさん
09/08/11 07:57:52
>>471
thx

473:デフォルトの名無しさん
09/08/14 16:42:31
wxFormBulderって生成するコード変じゃね?
ダイアログにボタンが一個だけのプログラムを書いてみた。

ダミーのイベントハンドラをvritual宣言しておくから、
サブクラスを作って、そこにボタン処理などの本来のイベントハンドラを
まとめて書きなさい、という方針はすばらしい。
けど、登録するイベントハンドラのアドレスが、サブクラスのアドレスじゃなくて、
継承元のダミーのアドレスでは、飛ぶはずないじゃん。
作者、なにを勘違いしているんだろ。
さわり始めて2日目の俺のほうが勘違いしている?

474:デフォルトの名無しさん
09/08/15 12:28:24
>>473
つ Code::Blocks

475:473
09/08/15 17:39:20
Code::Blocks 調べました。ちゃんと動きました。
ubuntuだと日本語が入力ができないとか、
標準入出力を扱うウィンドウがないとか、
多少ありますが、素晴らしいと思いました。
進歩しているんすね。癖になりそうです
ありがとうスッ。

476:デフォルトの名無しさん
09/08/27 13:32:21
元となったデザインがMFC構造で古すぎるので消えるって、本当でつか?

477:デフォルトの名無しさん
09/08/28 15:34:59
yes

478:デフォルトの名無しさん
09/09/05 07:08:07
wxPythonのサイト大丈夫か?
URLリンク(www.wxpython.org)

<a target=_top href="URLリンク(accountin)から始まるカジノがどうって行は前は無かったと思うが。

479:デフォルトの名無しさん
09/09/05 09:20:35
Ou voyez vous?

480:デフォルトの名無しさん
09/09/08 00:37:02
wxCode の wxCurlって使ってる人いますか?

どうにもこうにもSetOptが効かなくて困ってます。

wxCurlHTTP http("URLリンク(hogefugamoge.jp)");
http.SetOpt( CURLOPT_USERAGENT, "MyUserAgent" );
http.Get( filepath );

って感じでやってるんですが、何事も起きなくて・・・・

SetOptのreturnはtrueなんで、wxCurl君は正常に処理してるつもりっぽいのですが・・・


ちなみにSSL通信がしたくてwxCurlを使ってるんですが、
他のライブラリでもSSLでPUTとかDELETEとかできればそっちでもOKです。


すみませんがよろしくお願いします。

481:480
09/09/08 00:40:33
すみません書き忘れです。
wxWidget本体は wxMSW 2.8.10
wxCurlはsvn版 ( 2009-09-01にsvnリポジトリからダウンロード )
開発環境は Code::Blocks 8.02 mingw同封版
です

482:480
09/09/08 05:44:40
すみません
やっとこさ自己解決しました。

どうやらどのHTTPメソッドを発行する関数でも、
SetCurlHandleToDefaults という関数でヘッダー諸々の初期化を行っており、
wxCurlHTTPクラスを継承したクラスを作り、
この関数をオーバーライドしてやらないとダメみたいです。

似たようなことをwxCurlBaseを継承したwxCurlHTTPで行っているので、
それを参考にすればOKかと。


お騒がせしましたー

483:デフォルトの名無しさん
09/09/08 09:26:06
すみません
すみません
すみません
omedeto-

484:デフォルトの名無しさん
09/09/09 12:49:07
wxWidgets 2.9.0 がリリースされたね。
URLリンク(www.wxwidgets.org)

485:デフォルトの名無しさん
09/09/09 22:11:21
VC6だけじゃなく、VC7からVC9までのプロジェクトファイルがある!
こいつは嬉しい。


486:デフォルトの名無しさん
09/09/14 00:02:34
初心者なのでつまらない質問でスマンけど...

wxWidgetsをビルドする時、makeのオプションでBUILD=debugにすると、デバッグバージョンの
ライブラリがビルドされるけど、これってwxWidgets自体をデバッグしたい時だけに必要で、
wxWidgetsを利用するアプリ側だけデバッグしたいときはreleaseバージョンのライブラリ
使ってもいいの?

それともアプリをデバッグする場合(Step inでwxWidgetsのコードに入っていかなくても良い場合)でも、
ライブラリはdebugバージョンじゃないとダメなの?


487:デフォルトの名無しさん
09/09/14 00:50:49
yes

488:デフォルトの名無しさん
09/09/14 00:51:31
no

489:デフォルトの名無しさん
09/09/14 01:19:57
wxWidgetsというよりコンパイラやライブラリの仕様によると思うけど

MSVCみたいにデバッグ用のランライムライブラリがある場合
アプリとライブラリでdebug/releaseを別にしちゃうと
リンクするランタイムライブラリが別になるから
スレッド関連とか例外の取り扱い、スタックフレーム、
その他リソースを確保するコード等でおかしなことになるかもしれない

例えば、メモリリークを検出するようなデバッグ機能がある場合
ライブラリで確保したメモリをアプリで解放したりすると
管理情報の整合性が取れなくなるかもしれない

490:デフォルトの名無しさん
09/09/14 09:53:45
リリースバージョンじゃないとwxASSERTとかそのへんも効かなくなるから
デバッグやるならデバッグバージョンの方がいいんじゃない

491:486
09/09/14 13:50:52
皆さんレスサンクス。素直にdebugバージョンとreleaseバージョンをbuildして使い分けることにします。

492:デフォルトの名無しさん
09/09/14 14:30:19
そこらへんCodeBlocksとかwxDevC++とか使ってみると参考になるかもよ

493:デフォルトの名無しさん
09/09/14 17:32:34
ダイアログ上に置いたwxStaticTextの表示/非表示をボタンで切り替えるようなことを
やろうと思って,wxBoxSizer(wxVertival)をダイアログ上に縦に並べて,上のサイザーに
表示/非表示するwxStaticTextを入れ,下のサイザーに切り替えボタンを入れたんだけど,
wxStaticTextのスタイルをwxST_NO_AUTORESIZEにしておいても,Hide()とかShow(false)を
呼ぶとStaticTextそのものが消滅してしまうようで,配置が狂ってしまう。

非表示の場合はSetLabel()で空文字を設定し,表示する場合は表示したい文字を設定すれば
一応できることはわかったんだけど,もっとスマートなやり方ありませんか?

494:493
09/09/14 18:03:47
>>493
自己レス。StaticTextの入っているBoxSizerにSetMinSize()で最小サイズを設定してみたけど
やっぱりダメ。

StaticTextのHide()をダイアログのコンストラクタからOnInit()移動してみたけどやっぱりダメだ。
どうすればいいだろ?

495:デフォルトの名無しさん
09/09/14 21:20:53
とりあえず俺はLayout()呼んで一応うまくいってる

496:493
09/09/15 10:45:08
>>495
Layout()でうまく行った。よく読むとヘルプにも書いてあるね。サンクス。
しかし,サイザーを使いこなすのは難しいなぁ...


497:デフォルトの名無しさん
09/09/15 13:34:05
またまた質問させてください。

sizerを使って,DialogやFrameのサイズを中身にあわせるというのはわかったけど,
逆にDialogやFrameのサイズを固定にしておいて中身を配置したい場合もあるでしょう?

wxWidgetsの設計思想に反するのかもしれないが,うまいやり方はありませんか?
Code::BlocksやwxDev-C++でいろいろ試してみてるけど,うまく行かない。
Frameの中にBoxSiserを貼って,その中にPanelを貼ってパネルのサイズを設定し,
さらにその中にBoxSizerを貼ってみたけどやっぱりダメだった。

LaTexの\vssや\hssみたいに,自由に伸び縮みできる要素があれば出来そうなんだけど...

498:デフォルトの名無しさん
09/09/15 13:39:58
sizerを使う

499:497
09/09/15 13:45:53
>>498
いや,sizerを普通に使うと,DialogやFrame全体のサイズが中身に合わせて変わってしまうでしょう。
sizerをどう使えば全体のサイズを固定に出来るのか教えてください。

見えない色にしたStaticLineをつっかえ棒みたいに入れるとか,いろいろ考えてはいるんだけど,一般的には
皆さんどうやってるのか知りたい。

500:デフォルトの名無しさん
09/09/15 13:51:39
expand

501:デフォルトの名無しさん
09/09/15 18:20:11
>>499
Sizerを使わない
ウロだけどCodeBlocksのwxSmithならSizer置かなくてもポトペタできるはず
あと最近はCodeBlocksに移っちゃったからこっちもウロだけど、wxDevC++もSizerなしでポトペタできるはず

502:497
09/09/15 18:59:43
>>500, >>501

サンクス。やってみます。
あと,C::BだとFrameのコンストラクタ内に生成されるコードの後で,SetClientSize()を呼ぶ手も
あるみたい。つーか,Frame内にsizerを追加するコードの前にSetClientSize()が自動で記述
されてしまうのが,原因のような気もする。


503:デフォルトの名無しさん
09/09/16 11:56:43
>>502
ちと手元に資料がないんだけど、幅と高さだけを指定する
空の Sizer がなかったっけ?

504:デフォルトの名無しさん
09/09/16 13:44:56
そいやCodeBlocksのwxSmithで、
メニューに項目追加って出来無くない?

いくらやってもメニューバーと同じ階層に子メニューついかされちゃうんだけど・・・

505:デフォルトの名無しさん
09/09/21 23:50:32
>>504
亀レスだけど,MenuBar editorで同じ階層に新しい項目を追加し,それを選択しておいて > ボタン
を押すと一つ下の階層に移動するよ。

質問の意味がイマイチはっきりしないけど,メニュー項目の下の階層に子のメニュー項目を
追加したいって意味だよね? File->Open みたいに。

506:デフォルトの名無しさん
09/09/21 23:55:31
>>484
2.9.0のsetup.hを読むと,wxUSE_UNICODE のところに「ANSIモードはobsoleteで,将来
なくなるぞ」って脅しが書いてあるな。

3.0ではANSIモードは削除されてUNICODEだけになるんじゃないか?

507:デフォルトの名無しさん
09/09/22 03:38:41
wxWidgetsが依存しているlibsdlがx86_64でようやくコンパイル通るようになったと思ったら
libsdl_mixerで死んだ。

508:デフォルトの名無しさん
09/09/23 00:23:15
2.8.10なんだけど、外部アプリケーションを実行するクラスってある?

509:デフォルトの名無しさん
09/09/23 03:34:22
wxExecute
wxShell

510:デフォルトの名無しさん
09/09/23 10:33:19
>>509
サンクスでございます。

511:デフォルトの名無しさん
09/09/24 12:06:53
wxWidgetsのunicode対応ってサロゲートペアに対応してる?

512:デフォルトの名無しさん
09/09/24 12:47:47
>>505
ほあああ!!
THX!!
メニューバーエディタなるものの存在を知りました。

513:デフォルトの名無しさん
09/09/26 00:20:56
wxwigets2.8.1ってtdm版gcc4.4.1でコンパイルできる?

514:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/09/27 19:42:11
自分のアプリケーションがいまどこのディレクトリに存在するかを取得する関数って何?

516:デフォルトの名無しさん
09/09/28 09:57:00
_argv[0]から実行ファイルのフルパスを取得して,最後のファイル名部分(なんたら.exe)だけ
削除すれば得られるでしょ?
別にwxWidgetsに限った話じゃないと思うが...

それともwxWidgetsにそういうユーティリティ関数がないか?って話?
wxAppにargvってメンバ変数があるし,GetAppNameってメンバ関数が
あるから使えるんじゃないか? 試してないけど。


517:デフォルトの名無しさん
09/09/28 11:41:06
wxStandardPaths

518:デフォルトの名無しさん
09/09/28 17:30:33
>>515
URLリンク(docs.wxwidgets.org)
これのことか?

519:515
09/09/28 21:01:42
>>516-518
thx!

>>516
そういやそういう手もあった。

>>517
求めてたのはこれ。

520:デフォルトの名無しさん
09/09/29 02:13:10
pwd()

521:デフォルトの名無しさん
09/10/03 07:59:29
カレントディレクトリと勘違いしてるヤツが多いな。

522:デフォルトの名無しさん
09/10/03 22:20:12
__file__

523:デフォルトの名無しさん
09/10/04 23:45:46
それはプリプロセッサが現在処理中のファイル名に置き換えてくれる
定義済みマクロじゃないのか? __file__ じゃなくて __FILE__ だと
思うけど。

524:デフォルトの名無しさん
09/10/05 03:01:27
os.path.fullpath(__FILE__)

525:デフォルトの名無しさん
09/10/06 20:53:30
コンパイル後、実行形式ファイルを他ディレクトリに移動したらアウツじゃねーの?


526:デフォルトの名無しさん
09/10/06 21:04:39
no problem

527:デフォルトの名無しさん
09/10/07 10:33:07
WINDOWSで,wxWidgetsを使ってアプリをタスクトレイに入れる方法はありませんか?

528:デフォルトの名無しさん
09/10/07 10:49:22
あります

529:デフォルトの名無しさん
09/10/07 20:10:45
具体的に教えてください。

530:デフォルトの名無しさん
09/10/07 21:03:20
調べたらわかりました。

531:デフォルトの名無しさん
09/10/07 22:24:07
なんか変なのが住みついたな。>>520から偶数番号のレスしてるやつ。

532:デフォルトの名無しさん
09/10/07 23:54:35
お、俺じゃないぞ!

533:527
09/10/08 08:04:46
自己解決しました。
wxTaskBarIconから派生させたクラスを作って使うんですね。
サンプルの taskBar にありました。

534:デフォルトの名無しさん
09/10/11 13:58:57
>>528のおかげじゃないか

535:デフォルトの名無しさん
09/10/12 18:12:37
えーっと、軽く質問なんですが・・・

wxWidgetでは、二つ以上ウィンドウを表示するソフトを作ることはできますか?

536:デフォルトの名無しさん
09/10/12 22:17:14
できます。

537:デフォルトの名無しさん
09/10/12 23:52:19
楽勝です

538:デフォルトの名無しさん
09/10/13 00:14:18
もしかしてMDIのことを言ってるの?

539:デフォルトの名無しさん
09/10/13 15:15:51
wxPerlの話題・質問はここでいいんでしょうか?
ここはC++限定?

540:デフォルトの名無しさん
09/10/13 15:19:49
内容によるんじゃなかろか
とりあえず書いてみたらいかが

541:デフォルトの名無しさん
09/10/13 17:01:45
>>539
ああ、それなら wxPython の方が簡単に出来るよ。



542:デフォルトの名無しさん
09/10/13 17:04:21
C++限定じゃないと思うけど、C++とPython以外のことは
俺には答えられないぜ!

543:デフォルトの名無しさん
09/10/13 19:23:06
頭のいかれたとても恥ずかしい人は放置した方がいいぞ

544:デフォルトの名無しさん
09/10/14 07:48:05
どうせ大半の話題は共通するんだから
wxPerlだろうとwxRubyだろうとwxBrainf**kだろうとここで問題なし

ただし言語に由来する質問は答えられる人が居ない可能性あり

545:535
09/10/14 23:22:35
Show(frame)を二つ作ったら楽勝でした。ありがとうございます。

546:デフォルトの名無しさん
09/10/15 16:22:53
wxPython でのサンプルを読んでまず適当にフレームを
表示させて描画してみているんですが,いくつかのサンプルにて
wx.Frame や wx.Panel の __init__ への引数として

1)親ウィンドウがNoneというのはどういう意味でしょうか
2)id = -1となっているのはどういう意味でしょうか

意味もわからずとりあえずそうするとフレームは表示されますが・・

547:デフォルトの名無しさん
09/10/15 16:37:04
Frameの中にPanelを置いてPanelの親をFrameにしたときと
しなかったときを比べてみれば分かる
idはアクセスする必要がなければとりあえず-1


548:デフォルトの名無しさん
09/10/15 16:43:16
>>547
ありがとうございます
あれこれいじりつつあるんですが
wxPython では stdout と stderr がコンソールではなく
何か特別なウィンドウに奪われてしまうみたいです。
すぐに消えてしまって例外のメッセージが見えないのですが
普通にコンソールに表示するようにはできるのでしょうか?

ちなみに環境は Windows 上の Eclipse + PyDev でやっています

549:デフォルトの名無しさん
09/10/15 16:44:28
一番手っ取り早いのはcmdの中でhoge.pyを実行

550:デフォルトの名無しさん
09/10/15 16:50:40
Panel の parent を None にすることはできないんですよね?
Panel つーのはかならず親に Frame を指定しないとだめみたい

551:デフォルトの名無しさん
09/10/15 16:54:11
実は Panel が理解できていない・・その存在意義が。
フレームの中にサイザーでくるんでコントロールを配置する。
という基本は理解したつもりなのですが、
パネルってなんだよ・・・と。

パネル・・・・・パネ・・・

552:デフォルトの名無しさん
09/10/15 17:10:01
単に固定サイズの領域を作るだけのもの・・なのか?
少しずつ画面がにぎやかになってきてうれしいのですが
次々と文字列が出力されるログウィンドウのようなものを
複数開きたいと思っています。

こういう用途には wx.TextCtrl で作ったテキストコントロールに
次々とAppendTextしまくればいいということなんでしょうか?
ほかに何書こう便利なコントロールが用意されていたりします?

今まで matplotlib で数値計算結果をプロットしてたのですが
計算経過を表示しつつアニメーションも表示しつつという
アプリケーションを書いてみようとしています。

553:デフォルトの名無しさん
09/10/15 17:29:22
demoみた?

554:デフォルトの名無しさん
09/10/15 17:31:14
URLリンク(www.manning.com)

555:デフォルトの名無しさん
09/10/15 17:34:07
で、Qtとwxの使い分けはどうすればいいの。

いまwx使うのって、ネイティブな見た目にしたい時ぐらいしか利点ないのかな。

556:デフォルトの名無しさん
09/10/15 17:43:56
Qtもwxと同程度に同じ見た目にできるよ。
LGPLで高品質なQtか、自由に利用できるけど品質に難があるwxWidgetsか。

557:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/10/15 18:30:11
> Qt Creatorだとコードを書かなくても
> シグナルとスロットの指定だけで動作するようなものが出来てしまうので

コード書かない方法での指定方法じゃ、
何もつくれんだろ。

ボタン押したら終了するぐらいで
自作のスロットは、コード書かないとしていできない。

559:デフォルトの名無しさん
09/10/15 19:22:41
言語によっても差があるよね
RubyならほぼWxRuby一択

560:デフォルトの名無しさん
09/10/15 19:58:23
Python で GUI なネットワークアプリを作ろうとすると
twisted のリアクタと wxPython のイベントループが
相性がいいみたいなので wxPython 使ってます。

Qt 先に覚えたら Qt マンセーになってたのかもしれないけど
先に wxPython 使い始めちゃったからなぁ。

各OSの標準的なコントロールを出来るだけ使うようにしているのはどっち?

561:デフォルトの名無しさん
09/10/15 20:25:03
標準的なコントロールを使っているのかは知らないが
ネイティブに見えるのはwxだと思う。

俺もwxの方がシンプルだと思うから好きだけど、
シンプルというより古いのかなって気はする。

562:デフォルトの名無しさん
09/10/15 23:41:59
URLリンク(japan.internet.com)
「Qt 4.3 では対応をさらに進め、Vista スタイルに合わせるために
別途『QwindowsVistaStyle』クラスを実装した。そのため、
Qt ベースのアプリケーションは、Vista 環境でネイティブなルック&フィールを持つことになった」


さて、ネイティブに見えるのはQtの方かもしれんぞ。

563:デフォルトの名無しさん
09/10/16 00:01:30
wxWindows使ったときないけど、Qtいいお(´・ω・`)
ここのみんなも使ってみてね。

564:デフォルトの名無しさん
09/10/16 00:12:07
>>557
確かにQt Creatorはちょっと...俺のPCだとよく落ちる。
斜向かいのヤツなんか、一度起動しなくなったと思ったら再インストールしても
二度と起動できなくなった。

コンパイル/リンカオプションをマニュアルでテキストファイルに書いとかなきゃ
ならないのも、完成度まだまだだと思う。Code::Blocksなんか、多種類のコンパイラ
に対応してるのに、オプションの指定は使用するコンパイラに合わせて細かく
GUIから指定できるもんね。

>>558
Qtそんなに触ってないけど、スライドバー動かすと数字が変わる程度のことは
コード書かなくても出来るtのをとなりのヤツがやってるの見たよ。

>>561
その古さがかえって都合いいこともある。
大型装置制御のアプリ作ってるんだけど、Windowsの進化に従ってlook & feelが
変わったらオペレーターが戸惑う。

それならLinux使えって言われそうだが、デバイスドライバがWindows用しかない
拡張ボードとか一杯使ってるからそうもいかない。

565:デフォルトの名無しさん
09/10/16 23:53:49
>>556

> LGPLで高品質なQtか、自由に利用できるけど品質に難があるwxWidgetsか。

LGPLだって事実上ほぼ自由に利用できるよ。
で,wxWidgetsの品質の難点って具体的にどんなところ?

566:デフォルトの名無しさん
09/10/17 01:23:46
>>565
wxGTKがgtkのim周りをきちんと実装してないから、ダイアログボックスの
テキストフィールドで変換を確定しようとしたらOKボタンを押した扱いになって
入力が消える。
WindowsでwxGridでIME ONのまま入力を開始しても、フォーカスが当たってる
セルが編集モードにならない。
こんな感じで、特に日本語環境であちこち穴が開きっぱなし。

567:デフォルトの名無しさん
09/10/17 02:23:53
URLリンク(www.wxwidgets.org)
The wxWindows Licence is essentially the L-GPL (Library General Public Licence)
wxWindows ライセンスは 本質的にはLGPL

QtがLGPLになって企業サポートがついたいま
wxWindowsに利点があるのだろうか?

568:デフォルトの名無しさん
09/10/17 05:10:37
LinuxではGTK使ってくれてた方が好き。
あと開発コミュニティがオープンソースっぽくていい。

あまり大した利点じゃないな…。

569:564
09/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:デフォルトの名無しさん
09/10/17 09:22:29
お前さんは隣の席のやつに絶大な信頼を置いてるのかもしれないけど
俺らにとってはどうでもいいわけで・・・
煽ってるわけじゃなくてな

571:デフォルトの名無しさん
09/10/17 09:31:54
つーか、C++Builder並のRADはありえんだろ。要求高すぎw
LazarusのC++実装とか?


572:デフォルトの名無しさん
09/10/17 11:12:33
↑wxWidgetsなら,Code::Blocks,DialogBlocks,wxDev-C++あたりが
かなり近い線まで行ってる。

573:デフォルトの名無しさん
09/10/17 11:33:20
昔は、

wx はネイティブのラッパーだから OS の変化に追随してくれる
Qt は独自実装だから OS のルック&フィールが必ずしも反映されない

って感じがしてたけど、今でもそうなのかな。
あと Qt は moc がね…

574:デフォルトの名無しさん
09/10/17 11:39:54
オライリーのqt4の本には、
Windowルック&フィールはWindowsでしか使えません。
なぜならWindowsコンポーネント使っているから(MacOSXも同様)
みたいなこと書いてあったと思うんだが・・・

昔の話じゃね?独自実装なのは。
もちろんMotifとかは独自実装だけど。

575:デフォルトの名無しさん
09/10/17 11:43:25
独自実装なのもあるし、そうじゃないのもある(´・ω・`)

576:デフォルトの名無しさん
09/10/17 11:49:58
今のQtはWindows上ではWindowsの部品使うし、なんとGnome上では
GTKの部品を使って描画するので、ルックアンドフィールの統一感はあるよ。

577:デフォルトの名無しさん
09/10/17 11:51:51
逆にGTK+がQtの部品使って描画するのってある?

578:デフォルトの名無しさん
09/10/17 11:52:34
Qtって独自の文法なかったか?あれは躊躇する。

579:デフォルトの名無しさん
09/10/17 11:57:48
独自の文法は無い。
ただのマクロ

580:デフォルトの名無しさん
09/10/17 12:05:23
独自のマクロはデバッグが面倒くさそうだ

581:デフォルトの名無しさん
09/10/17 12:31:31
>>572
そのレベルならQt Creatorと大差ないじゃん。まぁバギーなのはあるが。

582:デフォルトの名無しさん
09/10/17 12:46:45
Windows上でQt Creator使っているけど、
まぁ、試用レベルなんだけど落ちたことは無いなぁ。

Qt Creatorに後何が加われば、C++ Builder/Delphiなみと
いえるのだろうか? 個人的にはGo to Slotがわかりにくかった。

プロパティリストの欄のタブを変更すると
イベントハンドラ(Slot)リストがあるべきだろw
オブジェクト名が変更されると、Slot名も追尾してくれると嬉しい。

リファクタリングブラウザ機能は最近の先進的なIDEならついているけど、
昔からIDE使ってきている俺としては、あればラッキー無いほうが普通だと思ってるw

そんくらいだなぁ。

583:デフォルトの名無しさん
09/10/17 13:14:35
Qt Creatorが良い線いってると思って使ってる僕は異端児なの?

584:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/10/17 13:44:20
仕事でQt Creatorつこうてる僕は何(´・ω・`)

587:デフォルトの名無しさん
09/10/17 13:55:51
>>584
> 使ってみて言ってる?
> 俺は全部評価したが、Qt Creatorは今のレベルじゃ使う気にならない。

お前の方こそ、使ってみていっているとは思えない。
つまり、中身が何も無い。

使ってみたという証拠を出せ。

588:デフォルトの名無しさん
09/10/17 13:58:34
Qtの宣伝うぜえな
スレ違いだからよそでやれ

589:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/10/17 16:16:41
エディタでゴリゴリ書くのが好きだから…

591:デフォルトの名無しさん
09/10/17 16:20:47
俺もエディタ派

592:デフォルトの名無しさん
09/10/17 17:55:59
エディタ派って単に慣れているからってだけじゃ・・・
キーバインドだけのために、新しい優れたものを使えない体に
なってしまっただけじゃ・・・

593:デフォルトの名無しさん
09/10/17 17:58:48
何でそういう難癖を付けたくなったのかは知らんけど、それは間違いだぜ。
昔からツールボックスアプローチとキッチンシンクアプローチという概念があるんだ。
この世界で『真に新しくて優れたもの』なんてそうそう無いよ。

594:デフォルトの名無しさん
09/10/17 18:58:29
IDEはツールボックスだけのものじゃないし。
開発するとき、ヘルプ見ない?
ヘルプ見るのならIDEは便利だよ。

595:デフォルトの名無しさん
09/10/17 19:02:38
俺はヘルプを見るときはウェブブラウザってのを使ってる。
分からないメソッドを右クリックするとグーグルというので情報を探してきてくれる。
これ結構便利だよ。

596:デフォルトの名無しさん
09/10/17 19:19:18
>>594
まぁ冗談はさておき、エディタ派の人は最新の IDE がどういう物かは
知った上でエディタでコーディングする事を選んでるんだよ。
君がウェブブラウザやグーグルを知ってるのと同じくらいね。

それと当然だけどエディタだけを使って開発している訳じゃないよ。
エディタを補助するツール群を揃えているから、ソースを書く時には
エディタだけで十分という作業スタイルなだけで。
IDE にプラグインを入れまくる人って居るでしょ。その逆だと思えば良い。
IDE から機能を削ぎ落として、テキスト入力以外の機能は別のツールを
組み合わせて使っているんだよ。だからいわゆる IDE は必要ないのです。

597:デフォルトの名無しさん
09/10/17 19:26:35
エディタを使うメリットは、ネットブックでも動作が軽快な事、
他の環境に移行し易い事、問題があっても自分で直し易い事かな。
他にもあると思うけど、今思いつくのはこれくらい。

598:デフォルトの名無しさん
09/10/17 20:11:21
うーん。
やっぱりコード書いている途中にピリオドを押したら
すぐにヘルプ見るのと同じ効果があるってことは
思いついていないみたいだ。エディタ使っている人は。
なんかギャップを感じるね。

599:デフォルトの名無しさん
09/10/17 20:12:44
シェルの補間機能があるのと
ないぐらい以上の差があるのにね。

600:デフォルトの名無しさん
09/10/17 20:16:20
全てを記憶しているから問題無い

601:デフォルトの名無しさん
09/10/17 20:23:59
>>598
Qt のスレでもピリオドに拘ってる人が居たけど、要らない物は
要らないとしか言いようが無い。それが便利だと思ったら
愛用のエディタに手を入れるか IDE に転ぶかするだろうけど、
今のところは必要ないよ。引き算ができない人は機能一覧を埋める
事ばかり考えるけど、そういう人ばかりじゃないという事です。

人によって考え方や作業フローが違うという事を受け入れられない内は
理解するのは難しいと思われ。

602:デフォルトの名無しさん
09/10/17 20:30:09
シェルの補完機能でも zsh の最新版の高度な機能を欲する人も居れば
csh レベルで良いから軽い方が嬉しい人も居る訳で。

まさかその違いが分からない訳じゃないよね?

603:デフォルトの名無しさん
09/10/17 20:42:47
まぁ、自分が欲しい物を他人も必ず欲しがると思うのがナンセンスなんだよな。
世界に価値基準が一つしか無いと思ってると大人になって苦労するぞ。

604:デフォルトの名無しさん
09/10/17 20:46:04
欲しいか欲しくないかは個人の趣味だけど、
便利か便利じゃないかといえば、
IDEの方が便利だよな。

605:デフォルトの名無しさん
09/10/17 20:49:34
便利かどうかを判断する価値基準は無数にあるんだよ

606:デフォルトの名無しさん
09/10/17 20:54:34
>>604
俺にとってはIDEじゃない方が便利
そういう話だ

607:デフォルトの名無しさん
09/10/17 20:56:12
>>604
扇風機と団扇はどっちが便利?
掃除機と箒は?

608:デフォルトの名無しさん
09/10/17 20:59:42
>>604
自動車があるのに自転車に乗るのは馬鹿な事なの?
それとも自動車と自転車を一緒くたに考える人が馬鹿なの?

609:デフォルトの名無しさん
09/10/17 21:25:54
吊りだとわかってても反応したくなるな
箒や扇子は電気の無い家の外で使えるから便利だし
自転車は狭い路でも走れるから便利っつー話なんだが


610:デフォルトの名無しさん
09/10/17 21:37:53
要らん時までパカパカ補間ウインドウひらくわりに肝心なときには補間できないという難点がある品。
調べたいことがあったらその時バッファにカーソル下の該当ワード拾ってヘルプウィンドウ開くさ。
Windows流の窓最大化文化ばかりが全てじゃないって話。

611:デフォルトの名無しさん
09/10/17 21:53:39
一つ気になるのは、PyQtを動かすためにQtが必要であること。
まぁQtへのバインディングと考えれば必要なのは理解できるんですが、
これを各マシンにインストールするのは面倒すぎます。
もし可能であればネットワークにQtを置いて、環境変数でそこを指すようにして、
ネットワークで共有、ってことをやりたい。
それが出来るんならまぁ使ってもいいかな、って気がします。

ところで、wxPythonと比較してPyQtは何に優れてるんですかね。
AutodeskがPyQtを推す意味って何なんだろうか。



612:デフォルトの名無しさん
09/10/17 21:53:54
>>609
電気があれば扇風機の方が涼しいし、ウチのオフィスの清掃業者は掃除機を使ってるよ。
ちょっと遠くへ行く時や、同じ距離でも雨の日や荷物がある時は自動車が便利。
便利という指標は考え方や使う人、使う状況によって変わるものだよ。清掃業者が
箒を使わない事を批判している人が居たら、それはちょっとまずい人に見えるよね?

コーディングを行う際にエディタが便利か IDE が便利かも同じ事。
IDE が生まれたのは Smalltalk や Lisp Machine まで遡れる訳だから 30 年以上は
経っている訳だよね。IDE は素晴らしく見えるかもしれないけど、別段新しい物でも
ないんだぜ。この手の論争は少なくとも 10 年以上前からあるし、多分もっと昔から
宗派に分かれて戦ってきたんだろうけど、結論は変わらず『好きな物を使え、他人の
主義にケチをつけるな』だよ。結局、どっちが便利かなんて使う人次第なんだから。

613:デフォルトの名無しさん
09/10/17 22:32:31
> これを各マシンにインストールするのは面倒すぎます。
なぜ?

> もし可能であればネットワークにQtを置いて、環境変数でそこを指すようにして、
> ネットワークで共有、ってことをやりたい。
そっちの方が面倒すぎます。

現にあなたやり方すらわかって無いでしょ?

614:デフォルトの名無しさん
09/10/17 22:38:41
スレタイ見てくれw

615:デフォルトの名無しさん
09/10/17 22:47:18
wxPython+py2exeで造ったプログラムって
wxWidgetsが入っていないPCでも動くよなぁ

>PyQtを動かすためにQtが必要であること
必要なの?

616:デフォルトの名無しさん
09/10/17 23:01:45
py2exeがwxWidgetsライブラリを含めた実行ファイルを作るから。

617:デフォルトの名無しさん
09/10/17 23:03:07
それってQtも同じじゃね?

618:デフォルトの名無しさん
09/10/17 23:41:36
う、うん……(´・ω・`)

619:デフォルトの名無しさん
09/10/18 00:02:50
なんかIDE論議になってるけど,IDEの一番のメリットはデバッガーだと思うんだが。
そりゃコマンドライン派はgdbやcdbでもソースレベルデバッグできると言うだろうが...

IDEのエディタ上で,デバッグ中に変数にマウスカーソル当てると,中身がツール
チップヘルプで表示されるなんて,この上ない便利さだと思わない?

少数のエキスパートを除いて,最大公約数的どちらが仕事が速く出来るか?
と言われれば,やはりIDEの優位性は揺るがないだろう。

620:デフォルトの名無しさん
09/10/18 00:05:12
そういう細かい点を日ごろ使って無い人は
わからないんだろうね。

621:デフォルトの名無しさん
09/10/18 00:05:38
>>611
>一つ気になるのは、PyQtを動かすためにQtが必要であること。

wxPythonを動かすためにwxWidgetsが必要なのは気にならないの?

622:デフォルトの名無しさん
09/10/18 00:17:45
スレが伸びてたからwktkして開いたのに何これ?

623:デフォルトの名無しさん
09/10/18 00:30:51
>>619
論点がずれてる。
元々は >>592 にある様に IDE を使えないのは能力の衰えた人という話だった。
君が言う様に IDE を使わないのは少数のエキスパートという事だと、話が真逆。
議論に乗り遅れたのはかわいそうだけど、元々の話と内容が変わってるから、
続けたいなら別スレ立てた方が良いんじゃない?

これだけやっておいてなんだけど完全にスレ違いだしさw

624:デフォルトの名無しさん
09/10/18 00:44:47
ではIDE対エディタの続きはこちらでどうぞ
スレリンク(prog板)

625:デフォルトの名無しさん
09/10/18 02:11:59
>621
URLリンク(blog.taikomatsu.com)メモ/

626:デフォルトの名無しさん
09/10/18 07:17:41
>>623
もうやめとくけど,>>619 に書いた「エキスパート」は皮肉だよ。真に受けないで欲しかった。


627:デフォルトの名無しさん
09/10/18 07:24:49
もうやめとくと言いながら未練がましく最後っ屁をかますとは人間ができてますなあ

↑皮肉ってこういう事だよ

628:デフォルトの名無しさん
09/10/18 07:26:08
あ、真に受けないでね

↑これも皮肉

629:デフォルトの名無しさん
09/10/18 07:50:53
>>619 が皮肉になっていないのは捻っているようで全く捻ってないから。
『エキスパートは IDE を使わないでも仕事が速く出来る』という命題は
文字通り解釈出来てしまうから皮肉にならない。

むしろ『中身がツールチップヘルプで表示されるなんて,この上ない
便利さだと思わない?』という表現の方が皮肉っぽいよ。例えば
『中身がツールチップヘルプで表示されるなんて,この上ない便利さ
だと思わない?(見た目に騙される初心者め)』みたいな感じで
解釈可能だからね。『ツールチップヘルプ? ログに残したい時は
どうするのさ。デバッガの使い方くらい覚えた方が良いぜ』みたいに
続けると良い感じかもね。

もしまだ続きがしたいなら >>625 のスレへどうぞ。

630:デフォルトの名無しさん
09/10/18 07:51:40
あ、スマソ。>>624 のスレでした。

631:デフォルトの名無しさん
09/10/18 07:54:03
Python書くときはvim、C書くときはEmacsだけど
JavaはEclipse、趣味はDelphiな俺が通りますよ~。

ぶっちゃけどれもそれぞれ使い安いよ。最高!

632:デフォルトの名無しさん
09/10/18 08:37:43
Java/Python/LaTeX → Eclipse
C/C++ → Visual C++
その他 → Emacs

633:デフォルトの名無しさん
09/10/18 09:47:11
ログに残したいときはそうすれば良いし、
ツールチップでも見れること何が悪いのか
さっぱりわからんw

ツールチップという見た目に対して文句つけてるの?

634:デフォルトの名無しさん
09/10/18 10:07:37
>>633
ツールチップで見られるならそれは便利だろう
でもだからといって、他の難点に目をつぶってIDEを使う気にはなれない
エディタ全体・IDE全体としてどうかという話

635:デフォルトの名無しさん
09/10/18 14:15:37
このスレ、スレタイ間違ってる?
IDEのスレなのになんでwxナントカって書いてあるけど…

636:デフォルトの名無しさん
09/10/18 14:24:25
wxナントカはもう死にました。

637:デフォルトの名無しさん
09/10/18 14:34:12
そっか。じゃあIDEの話で盛り上がっていいんだね?!

638:デフォルトの名無しさん
09/10/18 15:13:18
まずIDEの議論をして、その結果の良いIDEをwxで実現する予定です

639:デフォルトの名無しさん
09/10/18 15:15:18
すみません
wxPython-src-2.8.10.1をインストール死ようとすると
wxWidgetsのコンパイルは性交したらしいのですが
build途中で死ぬんです


640:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/10/18 15:24:22
環境は?
環境設定ミスってないか?

642:デフォルトの名無しさん
09/10/18 16:23:13
パッチが出てるみたい

URLリンク(code.google.com)

--- 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
+    // URLリンク(groups.google.com)
+    wxGraphicsBitmap CreateBitmap( const wxBitmap &bitmap ) const { return wxNullGraphicsBitmap; }
 };


643:デフォルトの名無しさん
09/10/18 17:59:42
>>642
出来ました
ありがとうございました


644:デフォルトの名無しさん
09/10/18 22:28:11
ライブラリAPI使いまくりの部分はIDEが断然楽だけど、
自前コードが多いとこは、なれたエディタのほうが軽快かな

645:デフォルトの名無しさん
09/10/19 00:09:56
wxWidgetsってネイティブ以外にonGTKとかonX11とか
あるんだからonQtっつーのも有っても良いような気がする


646:デフォルトの名無しさん
09/10/19 01:01:32
>>645
同意。

647:デフォルトの名無しさん
09/10/19 05:43:27
>>644
なんでIDE vs エディタ論争になるのかぜんぜんわからん。
俺は両方使い分けてる。IDEの外部ツールに使い慣れたエディタ登録
して,エディタ編集したくなった時は起動すれば,現在編集中の行・列
にカーソルがある状態で編集開始できる。
排他制御問題も,IDE側/エディタ側の双方の設定で解決できるし。

...ってそういう話じゃないのか?

648:デフォルトの名無しさん
09/10/19 06:10:25
>>647
話の腰を折るな!

649:デフォルトの名無しさん
09/10/19 07:34:16
はぁ?
オマエ見当違いすぎ

650:デフォルトの名無しさん
09/10/19 08:35:32
いいからどっちも他のスレでやれ

651:デフォルトの名無しさん
09/10/19 23:15:17
ケンカはやめて(><)

652:デフォルトの名無しさん
09/10/20 03:38:19
私のために…

653:デフォルトの名無しさん
09/10/20 03:39:02
「赤いきつね」と「緑のたぬき」の具材を強化した新商品が、
コンビニ限定商品として10月19日から販売が始まった。

654:デフォルトの名無しさん
09/10/20 09:24:18
私のために?

655:デフォルトの名無しさん
09/10/20 11:13:38
争わないで!

656:デフォルトの名無しさん
09/10/20 12:05:33
もうこれ以上

657:デフォルトの名無しさん
09/10/20 13:15:41
すれ違いの話を

658:デフォルトの名無しさん
09/10/22 07:52:30
今、VC++2008でwxWedgetsプログラミングしてるんですけど、
他のパソコンでも実行できるようにしたいんですけど、
どのdllをリンクさせる必要がありますか?
何か教えてください(> <)

659:デフォルトの名無しさん
09/10/22 08:17:27
それは使ってるもジールによって変わるから
別のPCでエラーが出なくなるまで
必要なファイルを順番に追加(ry

660:デフォルトの名無しさん
09/10/22 08:19:14
これのことじゃね?
Microsoft Visual C++ 2008 再頒布可能パッケージ (x86)
URLリンク(www.microsoft.com)

661:デフォルトの名無しさん
09/10/22 18:15:10
wxCodeのwxThingsに含まれるwxSpinCtrlDblが使いたくて,SourceForgeからダウンロードしたら,
やたら古くてコンパイルエラーが出るので,SVNでチェックアウトしたらwxCodeからwxThingsが削除
されてた。でもCVSリポジトリを下記のURLでブラウズすると含まれている。

URLリンク(wxcode.cvs.sourceforge.net)

なのでSourceForge.jpにユーザー登録してCVSでチェックアウトしようとして,SSHの公開鍵を
登録しようとしたら,シェルアカウント情報:に「どのプロジェクトにも所属していないため、
UNIX シェルアカウントはありません。」と書かれていて登録できない。
SourceForge.netの方にもユーザー登録したけど,やっぱり公開鍵の登録ができない。

CVSからwxThigsをチェックアウトする方法があったら教えてください。

662:661
09/10/22 18:20:59

ちなみにpserver経由のAnonymoousログインではパスワードを求められたのでパスワードなし
でログインしようとしたらはじかれた。

663:デフォルトの名無しさん
09/10/23 01:37:08
>>661
pserverでちゃんと取得できたぜ
やり方間違ってたんじゃないの?
URLリンク(sourceforge.net)
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
09/10/23 10:16:54
>>663
そのサイトにからコマンドラインをその通りにコピペして実行したんだけど,ログインの段階で
でパスワードを求められて,何も入れずにEnter押すとはじかれる。

Windows XPのコマンドプロンプトでTortoiseCVSに含まれてるcvs.exeでやったんだけど
(PATHを通しておいて),何かまずいのかな?

わざわざ試してくれてありがとう。
「出来た」と言う情報だけでも助かる。昨日はサーバー側に何かあったとか言う可能性もあるし,
コマンドライン版のCVSだけダウンロードしてやってみるとか,幾つか試してみます。

665:661
09/10/23 11:24:28
>>663
原因判明。会社のFirewallでCVSのポート(2401)が閉じられてた。
恒久的に開けるには手続が必要で数日かかるとのことなので,一時的にあけてもらって
無事チェックアウト成功。

アリガト。

666:デフォルトの名無しさん
09/10/24 00:08:53
wxDev-C++は現在のVer.7.xを最後にDelphiでの開発をやめて、wxWidgets+C++に移植して
新たにwxDevIDEと言う名前で再スタートするらしい。

URLリンク(wxforum.shadonet.com)

まだ中身はないけど、既にHPも作成されているし、SourceForgeにも登録されてる。

URLリンク(wxdevide.sourceforge.net)
URLリンク(sourceforge.net)

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:デフォルトの名無しさん
09/10/25 13:41:10
既出かもしれませんが、wxTextCtrlで日本語入力(ATOK)中にESCを押すとIME
ではなくダイアログを抜けるので、それまで確定した内容が消えてしまいます。
入力中だった文字はそのままの状態で消えたダイアログの親に行きます。

IME入力中のESCキーがIMEのウィンドウ?に飛ばず下のDialog or TextCtrlに
飛んでいるように見えますがが、回避するにはどこを見たらいいでしょうか。

668:デフォルトの名無しさん
09/10/25 14:49:33
うちはそんなことないよ

669:デフォルトの名無しさん
09/10/25 15:04:00
>>667
環境を書かないと。OSもコンパイラもバージョンも何も書いてないんじゃ...


670:667
09/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:デフォルトの名無しさん
09/10/25 15:43:14
ATOK2008

672:デフォルトの名無しさん
09/10/25 16:04:43
>>667
IME関係なくESCだけ押してみたけどDialog閉じないよ
自分で書いたコードでなんか拾ってるんじゃないの?

673:デフォルトの名無しさん
09/10/25 17:06:11
・何がしたいのか
・現状どうなっているのか
・それに対する自分の意見
・自分の環境は何なのか(OS,CPU,GPU)
・IMEを他のものにして同じ症状があるのかどうか、ないならそのIMEは何なのか。

・可能ならサンプルをアップローダーに。

このくらいは質問するなら情報として欲しいわ。

674:667
09/10/25 19:02:54
>671
MS IME 2002 でも同じでした。
Off の状態でも同じ動作をしますが、これは開発者が意図したものだと思います。
>672
ESC キーでダイアログが閉じるのは wxDialog の標準的な動きではないという
ことですか?
このへんを追っかけてみるとCommitDlgがキーボードのイベントを拾っている所は
見つけられなかったんですが、どうでしょうか。
URLリンク(rapidsvn.tigris.org)
URLリンク(rapidsvn.tigris.org)
>673
>何がしたいのか
コミッターでも何でもないですが、RapidSVN で上述のような現象が起きて不便
なので、パッチを投げたいです。

675:デフォルトの名無しさん
09/10/25 19:39:58
キャンセルボタンを貼り付けてなければ閉じなかった
デフォルトボタンが拾ってると思う

676:デフォルトの名無しさん
09/10/26 10:52:28
>>658
static link で作ればいいと思うよ。
リリース版を、マルチスレッド/DLL じゃなくて、マルチスレッド(/MT)にする。

677:デフォルトの名無しさん
09/10/26 10:55:24
>>674
ESCでダイアログが閉じるのはWindowsの基本的な動作。
>>675 が言うとおり、キャンセルボタン(wxID_CANCEL だっけ?)があるとそうなる。
回避したいのであれば、ボタンを標準じゃなくて、自分でwxButtonで作って、
適当な ID を割り振ればいいんじゃないかな?

678:デフォルトの名無しさん
09/10/26 11:27:10
なるほど、未確定中にESC押すと入力文字が消え、その後再度ESC押すとダイアログが閉じるのが
普通の動作だが、RapidSVNは未確定文字のキャンセルとダイアログのクローズが同時に起こるな。

679:658
09/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でもこのエラーは発生するみたいです。


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch