【GUI】wxWidgets(旧wxWindows) その5【サイザー】 (960レス)
上下前次1-新
157: 2011/02/11(金)06:24 AAS
前スレがやっと埋まったぽい。埋めた人お疲れさま。
158: 2011/02/11(金)23:54 AAS
つうか次スレ立てるの早過ぎだろ
159: 2011/02/13(日)21:55 AAS
このライブラリタダ?
160(1): 2011/02/18(金)08:33 AAS
EVT_LEFT_DCLICK で bind して処理しようとすると
EVT_LEFT_UP EVT_LEFT_DCLICK が同時に来るみたいなのですが
EVT_LEFT_DCLICK だけ受け取るにはどうすれば良いでしょうか?
161: 2011/02/18(金)20:45 AAS
>>160
wxMouseEventのLeftDClickで判別すればいいんじゃないの?
162(1): 2011/02/18(金)21:35 AAS
GoogleIME使ってるんだが、TextCtrlで未変換文字列とか変換候補とかが表示されないのは仕様か?
MSIMEならちゃんと表示された
163: 2011/02/18(金)22:05 AAS
>>162
ありがとうございます
試してみましたが
結局 EVT_LEFT_DCLICK に bind された handler 内では LeftDClick なのですが
同時に EVT_LEFT_UP に bind された handler も呼ばれてしまっていて
そっちでは LeftDClick じゃないとみなされるので区別出来ないんです ><
164(2): 2011/02/27(日)19:42 AAS
wxApp の OnInit で wxFrame *frame = new wxFrame(hogehoge);
としたとき wxFrame を delete しないようですが
勝手に GC してくれるんでしょうか?
SetTopWindow(frame);
を実行したときとしないときでは違いますか?
165: 2011/02/27(日)20:07 AAS
メモリ以外の資源の解放をGC任せにする男の人って
166: 2011/02/28(月)14:53 AAS
>>164
wxWidgetsでは自分で解放すると返って二重解放になる。
外部リンク[htm]:www.wxwidgets.org
FAQに書いてあるから今後はよく読もうな。
167(1): 2011/03/04(金)16:28 AAS
主にwindowsで使っていますがlinuxでも同じソースで動くようにしたいです
wxStringで与えられたあるパス名がフルパスか相対パスかをwxWidgetsのクラス
(例えばwxFileName等)を使って判断出来ますか?
168(1): 2011/03/04(金)20:23 AAS
>>167
wxFileNameにIsAbsoluteというのがあるけども。
それすら調べられないようだとwxに限らずプログラミングは厳しいと思う。
169: 2011/03/04(金)20:25 AAS
ポインタ置いときますね。皆さん先刻ご存知かもしれませんが。
wxWidgets(wxstd.moの日本語版, ja.po)をお使いの皆様へ
外部リンク[html]:suzumizaki.blog6.fc2.com
170: 2011/03/04(金)20:34 AAS
>>164
こっちも読んでおくといいよ。
二重開放以外にもdeleteがまずい理由があるようだから。
外部リンク[html]:docs.wxwidgets.org
171: 2011/03/04(金)21:31 AAS
>>168
出来ました!!
ありがとうございました!!!
172: 2011/03/07(月)03:32 AAS
wxListCtrl の
SetItem - GetItemText とか
SetItemText - GetItem とか
なんか変な対応してるみたいなんですけど
こんなもんなんですか?
他にも IsIconized とか IsShown とか
ドキュメント通りじゃなくて
省2
173(1): 2011/03/07(月)04:30 AAS
馬鹿には無理
つ 外部リンク:wiki.wxwidgets.org
Get the String Contents of a "cell" in a LC_REPORT wxListCtrl
174: 2011/03/07(月)07:16 AAS
>>173
出来ました!!
ありがとうございました!!!
175(1): 2011/03/07(月)11:00 AAS
質問です
wxWidgetsにはMD5やSHAを計算してくれる関数はありますか?
176: 2011/03/07(月)11:32 AAS
つ外部リンク:wxwidgets-hash-md5.fyxm.net
177: 2011/03/07(月)22:35 AAS
>>175
176じゃないけど、MD5単品ならこういうのとか。
外部リンク[aspx]:www.koders.com
178(1): 2011/03/08(火)09:26 AAS
>>178
ありがとうございます
とりあえず別のMD5ライブラリが見つかったのでそちらで間に合わせたのですが
ライセンスの問題とか考えると教えて頂いたもので置き換えた方が良いかも知れません
余力があったら後でご報告します
179: 2011/03/09(水)04:31 AAS
wxHTTP::GetResponse が 200 とか 403 とかじゃなくて 0 を返すんですけどバグですか?
180(1): 2011/03/09(水)04:46 AAS
つ 外部リンク:wiki.wxwidgets.org
181: 2011/03/09(水)05:29 AAS
>>180
出来ました!!
ありがとうございました!!!
182(2): 2011/03/09(水)17:04 AAS
文字コードの変換というか
変換出来ない文字が含まれているかどうかのチェック方法について質問です。
UTF8 の文字列を SJIS に変換しようとしています。
static wxString wxString::FromUTF8(const char *s);
の注意書きに、
Note that this method assumes that s is a valid UTF-8 sequence
and doesn't do any validation in release builds,
省15
183: 2011/03/09(水)17:16 AAS
むしろUTF-8のまま扱うかUNICODEにしてしまった方が良いのでは?
184(2): 2011/03/09(水)20:02 AAS
>>182
wxStringOperations::IsValidUtf8String
185(1): 2011/03/10(木)08:17 AAS
>>184
ありがとうございます。
今レス見たばかりなのでまだ試していませんが、
外部リンク[html]:docs.wxwidgets.org
を見ても wxStringOperations は見当たらず
ネームスペースかとも思うのですが、
こういったものはどうやって見つければ良いものですか?
186(1): 2011/03/10(木)08:25 AAS
>>182
wxString::FromUTF8Unchecked
187(1): 2011/03/10(木)08:27 AAS
>>185
外部リンク:trac.wxwidgets.org
188: 2011/03/10(木)08:34 AAS
>>186
ありがとうございます。
しかしそれは Valid じゃない UTF8 データが渡されたときの
動作は undefined だと書かれていますね。
結局事前に調べないといけないことにかわりないようです。
>>187
ありがとうございます。
省2
189: 2011/03/10(木)08:38 AAS
ん?
「〜」301C(E3809C)
はValidじゃないのか?
190: 2011/03/10(木)09:19 AAS
問題なのはUTF-8として正しいかどうかじゃなくて
cp932に変換出来るかどうかってことなんだよな
そうなるとスレ違いかもな
191: 2011/03/10(木)13:58 AAS
wxWidgetsって、けっこうS-JISの処理が弱いので、そこの部分だけはネイティブの処理にしたほうがいいかも
俺もアプリ作った事あるけど、S-JISに変換する部分だけはWideCharToMultiByte関数を呼ぶようにしたよ
192(1): 2011/03/10(木)16:16 AAS
>>184
残念ながら使えませんでした。
193: 2011/03/10(木)16:24 AAS
>>192
wxUSE_UNICODE_UTF8 を定義してないと使えないよ
つ 外部リンク[html]:docs.wxwidgets.org
194: 2011/03/10(木)22:06 AAS
みなさん色々とありがとうございます。
wxString sjis_data = wxString::FromUTF8(utf8_data.c_str());
のところで例外出して死ぬパターンと sjis_data が空になるパターン
それからちゃんと成功するパターンとがありました。
結局アクセスしていたサイトに広告が入っていて、
時間帯によって内容が変わるようなのですが、
どうも本体は UTF8 なのに広告部分だけ SJIS とか、
省1
195: 2011/04/19(火)00:00 AAS
3.0マダー(AA略)
196: 2011/05/25(水)00:30 AAS
サイザーage
197: 2011/07/02(土)23:25 AAS
wxWidgetsとWinPcapをあわせて使おうとしてハマってたのが解決したのでカキコ
- winpcapのpcap.hはwxWidgetsのヘッダファイルのあとにincludeする必要がある
- pcap.h内部でwinsock2.hを呼んでいる
- winsock2.hはwindows.hの前にincludeする必要がある
- wxWidgetsのヘッダは、物によっては内部でwindows.hを呼んでいる
というデッドロック
#include <winsock2.h>
省4
198: 2011/07/16(土)23:02 AAS
GUI の配置は XML で定義出来るのが一番良いなあ
199: 2011/07/17(日)01:18 AAS
それ何てXUL
200: 2011/07/17(日)22:48 AAS
wxだってXRCがあるじゃまいか。
201: 2011/07/17(日)23:28 AAS
誰も無いとは言ってないぞ
202: 2011/07/17(日)23:40 AAS
後出しww
203: 2011/07/17(日)23:43 AAS
ネタにマジレスww
204: 2011/07/18(月)05:50 AAS
なんのこっちゃ。
205(1): 2011/07/28(木)23:53 AAS
リストボックスのアイテムとして
ボタンやテキストボックスを表示できる?
206(1): 2011/07/29(金)04:32 AAS
>>205
wxListBoxそのままでは無理。
テキストボックスだけでいいならwxEditableListBox使った方が早い。
それ以外でちょっとだけコントロールを付け足したいだけなら、
wxListBox継承してるwxCheckListBoxのソースが参考になると思う。
画像管理ソフトみたいなサムネリストが欲しいならwxThumbnailCtrl
って非公式コントロールが楽(古いので2.9系では若干修正が必要)。
省3
207: 2011/07/29(金)07:16 AAS
>>206
ありがと
208(3): 2011/08/11(木)06:56 AAS
自作のTestApp(wxWidgets製)は起動時に渡されたパスを読み込んで処理を
するとして、既に起動しているTestAppがあれば、そのTestAppにパスを引き
渡して自分は死ぬ(多重起動しない)、という動作をしたいです。
Winの場合、EnumWindowsでトップレベルウィンドウでTestAppを探し、
WM_COPYDATAをSendMessageで投げMSWWindowProcで受ける、
という方法を採っていますが、この辺のニーズは常にあるだろうし、
もっと楽なやり方があるんじゃないかと思ってます。
省2
209(1): 2011/08/11(木)10:26 AAS
Mutex
210(1): 208 2011/08/11(木)20:27 AAS
>>209
コメントありがとう。
でもMutexだと多重起動のチェックには使えるけど、
「既に起動している別プロセスへ任意のデータを引き渡す」
って処理には使えなく無いですか?
211(1): 2011/08/12(金)00:44 AAS
・メモリマップファイル
・共有メモリ
・TCP/IP
・DDE/OLE/ActiveX
・ウィンドウメッセージ
好きなの使えばいいよ。普通は都合のいい方法を使って自分で作る。
wxならメッセージが一番楽だろう。
212: 2011/08/12(金)01:46 AAS
つうか、二重起動防止するAPIが普通にあるだろ。
213(1): 2011/08/12(金)12:39 AAS
>>210
元のをポップアップさせてあとのを閉じれば渡す必要なくね?
214(1): 2011/08/12(金)12:42 AAS
一番簡単なのが欲しいなら作業ファイルにデータ書き込め。
いっそ多重起動もdir lockでやっとけ。
215: 2011/08/12(金)17:59 AAS
wxMutex
外部リンク[html]:docs.wxwidgets.org
216: 2011/08/12(金)18:09 AAS
wxSingleInstanceChecker
外部リンク[html]:docs.wxwidgets.org
217: 208 2011/08/12(金)21:25 AAS
なんかいっぱい回答もらえた。ありがとうございます。
誤解を生んで申し訳ないんだけど、多重起動の禁止だけじゃなくて、
データを引き渡すってところまでがやりたいことなんです。
>>211
・メモリマップファイル
・共有メモリ
公式ドキュメントだけ読んで無いと思っていたんですが、
省9
218: 208 2011/08/12(金)22:02 AAS
・ウィンドウメッセージ
はい。最初に書いたとおり、これは把握済です。
ただ、全トップレベルウィンドウを調べるwxWidgetsの関数って
無いですよね?(MS側のAPIはあるけど)
>>213
・起動済アプリを殺して自分が前面に出る
タスクバーに収納されていたり表に出ていたり、というアプリにしているので、
省8
219: 2011/09/02(金)20:17 AAS
今更なんですが、C++でGUIを考えた場合、wxWidgetsとQTが候補に挙がりましたが
両者の比較を書いているサイトや記事などありましたら教えてください。
220: 2011/09/02(金)20:28 AAS
自分はQt側のことは知らないんだが、こんなサイトがある
wxWidgetsのススメ
外部リンク[html]:up-cat.net
221: 2011/09/02(金)23:04 AAS
いまは VC2010Express でも wxWidgets 使えて便利だわ
222: 2011/09/02(金)23:29 AAS
2.9.2落としてきてVC2008でビルドしてたけど、これgdgdすぎ
スタティックライブラリはできたけど、DLL版は全然ビルドできないわ、サンプルはデバッグ
ライブラリ用になってるからいちいち直さないといけない&直しても同じリソースがどうたら
でビルドできんし、Qtにいくわ
223: 2011/09/03(土)00:34 AAS
おいらはMinGWでMakefile作りながらGUI作ってるよ〜 (^q^)
224: 2011/09/03(土)01:05 AAS
ああ、早とちりすまん
結局添付されていたVC2008用のプロジェクトファイルがうんこで、VC6用の奴を変換して
ビルドしたらうまくいきましたわ
サンプルも同じでVC6用の奴を変換してビルドすると正常にビルドできました
悪口いってすまん、けどビルドできないVC2008用プロジェクトファイルって罠じゃないのか
225: 2011/09/03(土)10:36 AAS
普通makefileの方使わない?
226: 2011/09/03(土)11:45 AAS
nmakeしたらいきなりエラーで止まったし、ぐぐるとnmakeよりもVC++上でコンパイルする記事が多かった
ので、そうしてました。
お騒がせして申し訳ないついでに実は開発版の2.9.2をビルドしようとしてたみたいで、俺死にたい...
というより氏ね>俺
227: 2011/09/03(土)12:10 AAS
VC使わないといけない理由があるんなら仕方ないけど
gccの方がすんなり行くんじゃないかなぁ。
228: 2011/09/03(土)18:49 AAS
WinでgccというとMinGだよね?
たまたまVC入ってたからVCでやってたけど、MinGの方が捗るの?
229: 2011/09/03(土)20:59 AAS
wxWidgetsの開発はLinuxのgccで行われてるだろうからMinGW+gccだと環境づくりが楽かも?
VCのことは知らないけどMinGWだと普通に2.9.2コンパイルできたし
コーディングの効率を考えるとVCのオートコンプリート機能が使えたら楽かもしれんが、たぶん出来んだろうしな
230(1): 2011/09/03(土)21:56 AAS
winでわざわざMinGなんて使う必要ないよ。
VCでいい。
231: 2011/09/04(日)17:11 AAS
MinGWだとEXEサイズ小さくなるかなと試してみたが、makeしてもlibができないなぁと1時間も
悩んでた、.aで正しいのにwww
アホすぎる俺
しかしwxWidgetsいいね、コントロールは揃ってるし、ドッキングもできる、開発版にすればリボンもどきも
使えるし、wxFormBuilder使えばGUIで画面組み立てられるし、とりあえず満足できる環境だし
232(1): 2011/09/04(日)19:07 AAS
MinGWでビルドした奴とVC++2008でビルドした奴を比較してみたけど、
VC++2008でビルドしたサンプルauidemo.exeは6073KB、MinGWでは9761KB、stripかけて6645KBだった
どちらもデバッグなしのリリース版なんだけど、MinGWの方がでかくなるのね
Dumpbinで依存DLL調べてみたら、VC++2008の方は標準DLLのみでVCランタイム依存もなし
かたやMinGWはやり方が悪いのだろうけどlibgcc_s_dw2-1.dll、libstdc++-6.dllに依存してた
VC++2008の方が優秀な気がする
233(2): 2011/09/04(日)19:22 AAS
>>232
MSYS上から、
g++ -static -o test.exe test.cpp `wx-config --cxxflags` `wx-config --libs`
こうかな?
-staticオプションつければOKのはず。
以下、wxをビルドしたときの設定。MinGW-w64でもいけました。
./configure --with-opengl --enable-ipv6 --disable-shared --disable-monolithic --enable-unicode --enable-official_build --disable-threads --prefix=/mingw
234(1): 2011/09/04(日)19:51 AAS
ちなみにgccは-sオプションをつけると結構ファイルサイズは小さくなる
235: 2011/09/04(日)19:52 AAS
あ、既出だった
236: 2011/09/04(日)21:11 AAS
>>233-234
アホな俺にわざわざありがとう!
もう1回試してみます!
237(1): 2011/09/04(日)22:39 AAS
>>230
なるほど人によるなあ。
俺なら「わざわざVC使わんでも、MinGでいい」って発想になるわ。
上下前次1-新書関写板覧索設栞歴
あと 723 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.030s