facebook twitter hatena line google mixi email
★お気に入り追加


  • 1
  •  
  • 2010/04/09(金) 15:12:36
クロスプラットフォーム GUI ライブラリの wxWidgets (旧 wxWindows)についてのスレ。

本家
ttp://www.wxwidgets.org/
wxWindows日本語プロジェクト
ttp://wxwindowsjp.sourceforge.jp/
Cross-Platform Programming with wxWidgets
ttp://wxwidgets.info/
Let's wxWidgets
ttp://dot-gray.s33.xrea.com/
wxWindowsで始めるC++ GUIプログラミング
ttp://www.h3.dion.ne.jp/~k5_n/wxwin/
wxWidgets でクロスプラットフォーム GUIアプリを作ろう
ttp://0xcc.net/pub/uu-2004-08/

前スレ
【GUI】wxWidgets(旧wxWindows) その4【サイザー】
http://pc12.2ch.net/test/read.cgi/tech/1214657360/

ここまで見た
>>40
wxが余計に解らない

LGPLをゆるくしたものじゃね?

ここまで見た
567 デフォルトの名無しさん [sage] 2009/10/17(土) 02:23:53 ID: Be:
    http://www.wxwidgets.org/about/newlicen.htm
    The wxWindows Licence is essentially the L-GPL (Library General Public Licence)
    wxWindows ライセンスは 本質的にはLGPL

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

ここまで見た
wxそのものに手を加える場合はLGPL。
単に自分のアプリを作るためのライブラリとして考える場合はバイナリで
自由に使える。ソースコードつけなくてもリンクしようが配布しようが自由。

ここまで見た
  • 44
  • 名無しさん@そうだ選挙に行こう
  • 2010/07/11(日) 15:48:10
はじめまして。
wxWidgets(wxWindows)日本語ドキュメントプロジェクトの方々に連絡を取った所
既に更新停止しているとの事なので、プロジェクトを移管して頂きSourceForge.netで
新たにプロジェクトを作りました。これからv 2.8 の翻訳を完成に向けて開始したい
と思っています。

https://sourceforge.net/projects/wxwidgetsjpdoc/

翻訳作業の出来る方募集中です。どうぞご参加ください。


ここまで見た
  • 45
  •  
  • 2010/07/23(金) 01:13:45
そうなのかー、乙です。
wxはポータブルなんで、日本でももうすこし広がるといいですね。

ここまで見た
  • 46
  •  
  • 2010/07/24(土) 21:05:36
wxErlang って組み込みになったのか。
http://www.erlang.org/doc/apps/wx/

Erlang/OTP R13A (2009-04-03) から、公式配布物に含む。 (最新はR14A)

ここまで見た
  • 47
  •  
  • 2010/07/26(月) 04:18:08
Rubyスレで聞いたけど判る人がいないっぽいのでこちらに・・・
wxRuby 0.6.0betaを使ったアプリをwxruby.so同梱で配布する場合に適用されるライセンスは
どのようになりますか?

バイナリファイルでの配布なら?任意のライセンスを適用出来るみたいですが
インタプリタ系の言語でバイナリファイルでの配布とか言われても難しいですし・・・
(exerbで配布したとしてもexeファイルの実態はインタプリター+ソースコードだし)

よろしくお願いします

ここまで見た
  • 48
  •  
  • 2010/07/26(月) 05:47:16
orz = 3

ここまで見た
  • 49
  •  
  • 2010/07/26(月) 16:52:17
そういうのわ御社の法務部で聞いてください

ここまで見た
  • 50
  •  
  • 2010/07/27(火) 22:18:14
すみません、誰か教えてください。
wxFormBuilderで作成されたForm内のm_textCtrlXXへの参照・代入ってどうやればいいんですか?

環境はVC++です。

ここまで見た
  • 51
  •  
  • 2010/07/27(火) 22:40:10
内容を読み書きしたいってことかな
ttp://docs.wxwidgets.org/stable/wx_wxtextctrl.html
GetValue、GetLineText
SetValue、AppendText
この辺りだろう、ってか公式のリファレンスに網羅されてるからすぐ見たほうがいいよ

ここまで見た
  • 52
  • 50
  • 2010/07/27(火) 23:11:48
お返事ありがとうございます。

wxFormBuilderで作成されたクラスがMyFrame1として、
MyFrame1::m_textCtrl28->SetValue(s);
とかやってみたけど、ビルドが通ってくれないのです。
(申し訳ございません、C++よくわかってない人です)

wxFormBuilderの場合、ここみたいに
http://wiki.wxformbuilder.org/Tutorials/UsingSubclass
サブクラス化してアクセスするのが正解なのでしょうか。
試してみたけど、なんか上手くいかないんです。

ここまで見た
  • 53
  • 50
  • 2010/07/27(火) 23:19:29
いちおう追記しておきますが、wxFormBuilderベースでプログラム作って、ボタンを押して反応するところまでは成功しまています(一日かかりましたが)。
文字列操作しようとしたらまたハマってしまって困っているのです。

ここまで見た
  • 54
  •  
  • 2010/07/28(水) 08:55:09
インスタンス化されたMyFrame1からアクセスしないと駄目です
MyFrame1 frame;
frame->m_textCtrl28->SetValue(wxT("moji"));
この場合外側からのアクセスなのでm_textCtrl28のpermissionはpublicになってないといけない
クラスの扱いはC++の基本なのでまずそちらから勉強した方がライブラリの理解も早くなります

ここまで見た
  • 55
  •  
  • 2010/07/28(水) 08:57:31
ごめん3行目ミスw
frame.m_textCtrl28->SetValue(wxT("moji"));

ここまで見た
  • 56
  • 50
  • 2010/07/28(水) 19:27:53
おおお!
MyFrame1 frame;
としてみたところ、
frame.
の入力で
frame.m_textCtrl28->SetValue
までVCの補完が効くようになりました!

いけるかなと思ったのですが、ビルドしてみると
「'MyFrame1' : クラス、構造体、共用体に既定のコンストラクタがありません。」
のエラーになってしまいます。
なにはともあれ真理に近づきつつあるようです。ありがとうございます。
C++の勉強します。

ここまで見た
  • 57
  •  
  • 2010/07/28(水) 19:49:01
MyFrame1 frame;
frame = new MyFrame1(NULL);
frame->m_textCtrl28->SetValue(wxT("moji"));
じゃだめ?

ここまで見た
  • 58
  • 50
  • 2010/07/28(水) 21:25:03
>>57
ありがとうございます。
やはり
「'MyFrame1' : クラス、構造体、共用体に既定のコンストラクタがありません。」
になってしまいます。
コードが継ぎ足し実験しまくりなのが不安なので、シンプルなコードで最初か
らやり直してみようと思います。

ここまで見た
  • 59
  •  
  • 2010/07/29(木) 01:38:24
MyFrame1 *frame = new MyFrame1(NULL);
じゃない?newを受けるのはポインタ

というかもう少しC の勉強してからのほうがいいと思ふぞ

ここまで見た
  • 60
  • 50
  • 2010/07/29(木) 02:40:00
>>59
ありがとうございます。
まだ継ぎ足し実験コードのままなのですが、試してみました。
MyFrame1 *frame = new MyFrame1(NULL);
frame->m_textCtrl28->SetValue(wxT("moji"));
としてみたところ、
「protected メンバ (クラス 'MyFrame1' で宣言されている) にアクセスできません。」
というエラーが。

m_textCtrl28をprotectedメンバで宣言しているのはwxFormBuilderが吐き出し
たコードで、これはwxFormBuilderとしては「編集しちゃアカん」そうなので
すが、m_textCtrl28をpublicメンバで宣言するように直したところ、ビルドが
通りました。でもSetValue(wxT("moji"))の効果はありませんでした。

うーん、勉強します。シンプルなコードでも試してみます。

ここまで見た
  • 61
  •  
  • 2010/07/29(木) 02:52:29
日記

ここまで見た
  • 62
  •  
  • 2010/07/29(木) 02:55:30
君にとっては新たな発見なのかも知れないが
ここ見てるひとは当たり前過ぎてただのノイズ

wx やりたいのは解るがしばらく我慢して
もう少し C++ の勉強してから改めて取り組んだ方が良い

ここまで見た
  • 63
  •  
  • 2010/07/29(木) 14:33:27
C++のクラスの複雑さは異常

ここまで見た
  • 64
  •  
  • 2010/09/06(月) 03:08:25
Windows XP上のmingw+msys(最新安定板)でmakeしたのですが、ld: final link failed memory exhausted エラーでリンクに失敗します。wxMSW(安定板)とwxWidgets-2010-06-30
物理メモリーは2G近くの空き、システムドライブも20G近く空いています。
ネットでエラーを調べてLDFLAGSに-Wl,--no-keep-memoryを追加してみましたが同じ所でエラーになりました。
誰かタスケテorz

ここまで見た
  • 65
  •  
  • 2010/09/06(月) 03:51:24
無視してもう一回make

ここまで見た
  • 66
  •  
  • 2010/09/06(月) 04:50:27
>>65
既に3回くらいやりましたが駄目でしたorz

ここまで見た
  • 67
  •  
  • 2010/09/06(月) 05:51:56
3回とも同じ結果?
同じ場所で止まる?

ここまで見た
  • 68
  • 64
  • 2010/09/06(月) 06:18:57
>>67
wxmsw291u_core_gcc_custom.dllを作成中にエラーになるのは同じで、その中でcould not read symbols: Memory exhaustedが起こる、読み込み中のオブジェクトファイルは違う事があるようです。

ここまで見た
  • 69
  •  
  • 2010/09/06(月) 06:45:03
cleanしちゃだめだぞ

ここまで見た
  • 70
  •  
  • 2010/09/06(月) 09:26:15
ビルドごとにディレクトリ作ったか?configureは試したか?

ここまで見た
  • 71
  • 64
  • 2010/09/06(月) 21:25:58
色々と調べたので中間?報告
ttp://comments.gmane.org/gmane.comp.gnu.mingw.devel/3728
多分、同じ現象が報告されていてgcc4.5では起きて4.4では起きないようです。
但しPF使用量を調べると、Win上のメモリ上限の遥か手前で落ちていました。
msysのデフォルトのulimitの仮想メモリの上限が約2GBでこれに抵触したようです。
現在msys上でrootを取得してulimitを変更する方法を検索中です。
・・・msysはsuが壊れてるとかイミフ(ry

>>69
cleanはconfigureの--enable-debugフラグを変更した時にしかしていません。
その他はLDFLAGSのみを変更してmakeを試しました。

>>70
ディレクトリは変更していません。configureをやり直した場合はcleanで対応しました。

wxWidgetsではなくてmsys固有の問題の可能性があります。
その場合にはmingw相談室で質問後結果報告させて頂きますね。<その方が良いですよね?自信がないです・・・。

ここまで見た
  • 72
  •  
  • 2010/09/06(月) 23:53:29
なんかサイザーの処理が最適化されていないのか、複雑なレイアウトを組むと
再描画に凄く時間が掛かる。
何か回避策や対策などがあるようならば教えてください。

ここまで見た
  • 73
  •  
  • 2010/09/07(火) 17:43:04
wxを窓から捨てる

ここまで見た
  • 74
  •  
  • 2010/09/07(火) 17:55:13
RADツール使ってサイザーやスペーサーを極力使わない構造を見つける

ここまで見た
  • 75
  • 72
  • 2010/09/07(火) 22:55:14
リサイズしないウィンドウにしても、再描画時にサイザーの計算を
しているっぽいので、そこをもう計算させないっていう様な設定が
出来たらしたいのです。

結局、複雑にサイザー使ってボタンとかびっちり詰め込むと
サイザーの計算が重くなるのは仕方ないなとも思うので、
固定さえ出来れば問題なくなるはずです。

ここまで見た
  • 76
  •  
  • 2010/09/07(火) 23:10:11
各コントロールごとに座標を想定してたりしないか?そういう使い方するもんじゃない
ボックス系のサイザーとグリッド系のサイザーを適切に使えば綺麗にまとまるし
さほど重くもならないと思うんだけど

ここまで見た
  • 77
  •  
  • 2010/09/07(火) 23:22:25
あとコントロール、サイザー共にExpandとStretch(proportion)はちゃんと個別に見直すべき
そのあとでBorder、埋めきれないとこはSpacer

ここまで見た
  • 78
  •  
  • 2010/09/09(木) 09:58:14
wxFormBuilder 3.1
Python対応
C++で日本語でもANSIで吐けるようになってるのを確認

ここまで見た
  • 79
  •  
  • 2010/09/11(土) 02:13:45
>>76
ちょっと見直してみたら、ボックスサイザーを入れ子にしてる所があるな。
そういうのは、グリッド系にすべきって事かな。

ここまで見た
  • 80
  •  
  • 2010/09/11(土) 04:07:42
サイザーごときで重くなるって
100個とか1000個単位で
びっしり詰めてるのか?

ここまで見た
  • 81
  •  
  • 2010/09/11(土) 11:58:53
とりあえず、コントロールは100個近く詰まってはいる。
動作が重いというか、ウィンドウを(最小化などから)表示した時に
普通はパッというぐらいの速度で表示されるけど、それがパラパラっと
コントロールが配置されるのが見えるって感じ。

ここまで見た
  • 82
  •  
  • 2010/09/11(土) 12:03:53
>>78
wxFormBuilderって物凄く安定しているのがスゲーと思った。
こういうのって不安定なものが多いから感心した。
ちなみに、Windows版。

ここまで見た
  • 83
  •  
  • 2010/09/11(土) 14:23:13
以前に作ったコントロール90くらいのダイアログ見つけたからwxFormBuilder通して見てみたけど
C2D E6600でもこの程度では特に重いとは感じない、というか変化がない
SS見せてくれたら試しに組んでみてもいいよ

ここまで見た
  • 84
  •  
  • 2010/09/13(月) 07:11:45
透過GIFを背景画像の上にぺたぺた貼り付けたいんだけど、透過GIFを入れたwxStaticBitmap
を配置するだけだと背景色で透過部分がfillされます。styleをTRANSPARENTにしても効かない。

ウィンドウのDCを取得して、wxDC::DrawBitmapで地道に描かないとだめですかね?

ここまで見た
  • 85
  •  
  • 2010/09/13(月) 11:28:09
styleをTRANSPARENT
SetMaskColour

ここまで見た
  • 86
  •  
  • 2010/10/18(月) 01:51:53
wxTextCtrlでカーソル位置にテキストを挿入するのってどうやるのが楽?
GetInsertionPointの前後で分割して、入れたい値を合成して
再挿入、ってやったけど
どうも改行があると値がずれるようなんで困ってて。


ここまで見た
  • 87
  • 86
  • 2010/10/18(月) 02:20:13
自己解決。Replace使えば良かったのか。
スレ汚しすまんかった。

ここまで見た
  • 88
  •  
  • 2010/10/18(月) 02:32:29
>>86-87
普通にWriteTextで
キャレット位置に挿入(選択状態なら置換)出来るのでは?

ここまで見た
  • 89
  • 86
  • 2010/10/20(水) 23:19:42
>>88
……その通りでした。
ちゃんと隅々までドキュメント読むべきでした。
遅くなったけどどうもありがとう。



ここまで見た
  • 90
  • 81
  • 2010/10/31(日) 01:33:07
>>83
その後、同一マシン上のVMwareでWindows2000とWindows7を実行して試してみたら、
Windows7上では同じ遅さだったけど、Windows2000ではめっちゃ速かったから
少なくともサイザーが遅いって事はなさそう。

ただ、VS2010上でビルド出来ないし、新しいプラットフォームの追従はあまり
早くないね。3.0が出てくれれば解決するのかな。


ここまで見た
  • 91
  •  
  • 2010/10/31(日) 01:53:11
>>90
単にスワップ起こしてるだけじゃねーの?
2GB程割り振って検証してみたら?


ここまで見た
  • 92
  •  
  • 2010/10/31(日) 17:17:26
>>90
VS2010のx64でビルドして使ってるけど、特においらの範囲では問題ないな。

VC6プロジェクトがVS2010で変換できないってことなら、VC2005か、VC2008で変換してからVS10で開けば通るよ。
2.9.xならVC8,VC9用のプロジェクトもある。

砂時計アラームタイマー
フリック回転寿司
ここまで見た

★お気に入り追加

このページを共有する
facebook twitter hatena line google mixi email
おすすめワード