1 名前:デフォルトの名無しさん mailto:sage [03/05/06 11:04] クロスプラットフォームGUIライブラリのwxWindowsについて語りましょう。 本家 www.wxwindows.org/ dW : Linux : wxWindowsの概要 www-6.ibm.com/jp/developerworks/linux/010413/j_l-wxwin.html SunWorld Online:wxWindows――無名だが成熟したGUIツールキット www.idg.co.jp/sw/back/200102/20010219_01_report.html メルマガ www.mag2.com/m/0000108320.htm 1はこれからインストールします
756 名前:753 mailto:sage [04/04/01 22:21] >>755 教えていただいたようにやってみました。 サンプルなどもコンパイルできて動いているようなので、 このまま行こうと思います。 ありがとうございました。
757 名前:デフォルトの名無しさん [04/04/02 22:12] MFCのプロパティシート/ページのようなのって無いですか?
758 名前:デフォルトの名無しさん mailto:sage [04/04/02 22:12] のひょーん
759 名前:デフォルトの名無しさん mailto:sage [04/04/11 15:21] VisualWx new release 0.8 Alfa 10 April 2004 visualwx.altervista.org/
760 名前:名無しさん@Vim%Chalice [04/04/20 11:05] デバイスコンテキストに回転した楕円形を描きたいのですが、どのように すれば良いのでしょうか?wxDC::DrawEllipseでは回転角度は指定出来ない ようですし、rotateぐらいのキーワードしか思いつかないのですが、調べて もwxDC::DrawRotatedTextぐらいしか見付からず、困っています。 どなたか教えて頂けませんでしょうか。お願い致します。
761 名前:760 mailto:sage [04/04/20 11:56] ドキュメントに無いけどwxTransformMatrixなんてのを発見しました。 これとcontribの中のcanvas使えば何とかなりそうかもです。
762 名前:デフォルトの名無しさん mailto:sage [04/04/20 16:50] wxのスポンサーにvmwareがついてるけど、vmwareの GUIもwxで作ってんの?
763 名前:デフォルトの名無しさん mailto:sage [04/04/22 13:02] マルチプラットフォームが流行ると、vmwareが売れると思ってるからでは?
764 名前:デフォルトの名無しさん mailto:age [04/04/30 15:23] age
765 名前:デフォルトの名無しさん mailto:sage [04/04/30 15:28] wxRubyに関するメモ www.infsys.cne.okayama-u.ac.jp/~kagotani/memo/wxruby.html
766 名前:デフォルトの名無しさん mailto:sage [04/05/01 01:37] C++BuilderXに見捨てられたライブラリはこれですか?
767 名前:デフォルトの名無しさん mailto:sage [04/05/01 01:49] 別にBorlandごときに見捨てられたところで痛くもかゆくもないわ。 吉野家みたいに速くて安くて(゜Д゜)ウマーと言われていたのも 遠い昔の話だし。
768 名前:デフォルトの名無しさん mailto:sage [04/05/01 01:50] >>767 目から大粒の汗が流れてるよ。
769 名前:デフォルトの名無しさん mailto:sage [04/05/01 06:34] 某厨って好きな時に都合の良い夢を見られる体質なんですね(微笑
770 名前:デフォルトの名無しさん mailto:sage [04/05/01 18:24] 以下の環境で wxWidget の開発を試してみました。 Windows XP Eclipse 2.1.3 CDT 1.2.1 wxWidget 2.4.2 cppunit 1.8.0 www.h3.dion.ne.jp/~k5_n/wxwin/setup_win.html を参考にウィンドウを出すだけのプログラムはできるようになったのですが、 make(というかgcc)が激遅なのはしょうがないとして、 eclipse の code assist(補完機能)が、 Ctrl+SPC を押してから候補がでるまで10秒程もかかり実用になりません。 こんなもんなんでしょうか? 初めて書き込むんで、板違いだったらすいません。
771 名前:デフォルトの名無しさん [04/05/01 18:32] gccはプリコンパイルヘッダが効かないから遅いんじゃなかったっけ。 最新のバージョンでそれもようやく対応したそうな。 CDTもコード補完出来るようになったんだねー。 俺も使ってみるか。
772 名前:デフォルトの名無しさん mailto:sage [04/05/01 18:36] Ctrl+Spを音楽プレイヤーの再生/一時停止切り替えキーに設定してるわorz
773 名前:770 mailto:sage [04/05/01 22:43] >>771 gcc のバージョン書くの忘れてました。 cygwin を導入したときついてきた gcc 3.3.1 でした。 おっしゃるプレコンパイルヘッダ機能は 3.4 からのようですね。 cygwin の gcc がバージョンアップするのはいつごろですかね? コード補完も CDT がヘッダファイルをあらかじめ見て 情報を集めといてくれれば速くなると思うのですが、 こういう話題は Eclipse のスレになるのでしょうか。
774 名前:デフォルトの名無しさん mailto:sage(・∀・)ノヒョーン [04/05/07 13:05] VC++.NETでサンプルをコンパイルしようとしたんですが dde.hでエラーいっぱいで困ってます。 error C2143: 構文エラー : ';' が '&' の前にありません。 error C2433: 'wxDDEServer::wxList' : 'inline' はデータ宣言をするのに使用できません。 error C2501: 'wxDDEServer::wxList' : 識別名を宣言するのに、型が指定されていません。 error C2146: 構文エラー : ';' が、識別子 'm_connections' の前に必要です。 etc. 解決策知りませんか?
775 名前:774 mailto:sage(・∀・)ノヒョーン [04/05/07 13:40] 自己解決しますた。
776 名前:デフォルトの名無しさん mailto:sage [04/05/07 14:10] 何度も言わせるな。解決策も書いとけー。
777 名前:デフォルトの名無しさん mailto:sage [04/05/07 14:19] >>774-775 新手のいやがらせですか?
778 名前:774 mailto:sage(´・ω・`)ショボーン [04/05/07 20:40] libのコンパイルしてなかっただけ。
779 名前:デフォルトの名無しさん [04/05/08 01:55] www.h3.dion.ne.jp/~k5_n/wxwin/ にあったmenuというサンプルをPlamo Linux 3.3環境下でコンパイルして みましたが、ウインドウタイトルを除いて日本語が文字化けします。 windows以外では日本語使えないのでしょうか? それとも何か設定があるのでしょうか? ちなみに static wxLocale theLocaleObj(wxLANGUAGE_DEFAULT); も入れてみましたが結果は一緒でした。
780 名前:デフォルトの名無しさん mailto:sage [04/05/08 02:14] www.h3.dion.ne.jp/~k5_n/wxwin/setup_linux.html
781 名前:デフォルトの名無しさん mailto:sage [04/05/08 08:41] >>778 その情報で十分だ。 今度初心者が >error C2143: 構文エラー : ';' が '&' の前にありません。 というメッセージを見たときに、「libのコンパイルをすればいい」と分かるじゃないか。
782 名前:デフォルトの名無しさん mailto:sage [04/05/08 09:05] 2.5.1の新機能ってどこに書いてあるの? HPのドキュメント見たけどよくわからん。
783 名前:デフォルトの名無しさん mailto:sage [04/05/08 10:25] >>782 prdownloads.sourceforge.net/wxwindows/changes-2.5.1.txt
784 名前:779 [04/05/08 10:35] 書き忘れてましたが、configureの際setup.h.inの中の wxUSE_WCHAR_Tの値は1に変更した上でなおかつ日本語 化けるという話でつ。スマソ。それとwxWindowsは2.4.2です。
785 名前:デフォルトの名無しさん mailto:sage [04/05/08 12:09] >>783 感謝
786 名前:デフォルトの名無しさん [04/05/08 14:57] GTK2.x向けのwxWindows2.4.2での質問です。 wxGLCanvasを使ってクロスプラットフォームの3D appを作ろうとしています。 タブを使うため、wxGLCanvasはtopのwxFrameに付けずにwxNotebookを作成し、 その中にwxGLCanvasを作成しました。Windowsではこれでうまくいくのですが、 GTK版ではwxGLCanvas::OnSize()中でGetSize(&x, &y)とすると、サイズ変更する前の 古いwxGLCanvasサイズが帰ってきます。wxGLCanvasをtopのwxFrameから直接作成した場合は 問題なく動作します。GTK版wxNotebookかwxNotebookSizerの挙動に問題があるのかなと思ったのですが、 どなたかアドバイスお願いいたします。
787 名前:770 mailto:sage [04/05/09 08:02] >>770 自己レス Eclipse 3.0M8 CDT 2.0M8 にしたらコード補完まあまあ速くなりました。 ただ読み込むヘッダファイルが多いためか、 コード補完がタイムアウトしてしまうので、 "Content Assist parsing timeout(in milli seconds)"って項目を 大きくしてやらなければいけないみたいです。
788 名前:デフォルトの名無しさん [04/05/10 05:40] wxWindows(wxWidgets)って軽いんですか?
789 名前:デフォルトの名無しさん mailto:sage [04/05/10 18:34] wxWindowsはその存在を軽んじられていることで有名です。
790 名前:デフォルトの名無しさん [04/05/10 19:21] マルチプラットフォームGUIライブラリで一番メジャーなのって、なんなんだろうね。 GTK、Qt、wxWidgets?
791 名前:デフォルトの名無しさん mailto:sage [04/05/10 19:28] Windows.Formsだろ
792 名前:デフォルトの名無しさん mailto:sage [04/05/10 21:18] >>790 最古のTkはアウトオブ眼中ですか。
793 名前:デフォルトの名無しさん mailto:sage [04/05/11 01:39] >>790 QtのWindows版にもGPL適用できたら間違いなくQtがメジャーになってたのに・・・
794 名前:デフォルトの名無しさん mailto:sage [04/05/11 01:49] LISENCEが全然分からないんですけど、 例えばスタティックリンクした場合、こちらは何をしなければならないのですか? LGPLの場合とwxWindows Library Licenceそれぞれについてお願いします。
795 名前:デフォルトの名無しさん mailto:sage [04/05/11 02:18] >794 ずばり書いてあるよ。 まずライセンスの中身はこれでOK? www.wxwindows.org/newlicen.htm www.wxwindows.org/licence3.txt 大雑把にいうと(ツッコミ歓迎) ・このプログラムはLPGLに従って再配布/修正することができる ・また、例外として、 1. このライセンス保持者が追加であなたに許諾を与える。(使用するかどうかはあなた次第) 2. その例外とは「貴方は自分が望む条件で、このライブラリを元にした成果物の バイナリオブジェクトバージョンを使用、コピー、リンク、修正、出版することができる」 ことである。 3.もしあなたがGPL又はLGPLライセンスのコードをこのライブラリにコピーする場合は、 上記例外はそのコードに当てはまらない。 4. もしあなたが自分自身でこのライブラリを修正した場合、上記例外をその修正箇所に 適用するかどうかはあなた自身が選択できる。 ……と、なる。 >例えばスタティックリンクした場合、こちらは何をしなければならないのですか? >LGPLの場合とwxWindows Library Licenceそれぞれについてお願いします。 LGPLに従うなら、成果物を再配布するときにソースコードも一緒に再配布する必要がある。 wxWindows Library Licenceに従うなら、例外規定2に従ってバイナリコードのみを配布してもOK
796 名前:デフォルトの名無しさん mailto:sage [04/05/11 02:28] >>795 >LGPLに従うなら、成果物を再配布するときにソースコードも一緒に再配布する必要がある。 >wxWindows Library Licenceに従うなら、例外規定2に従ってバイナリコードのみを配布してもOK この2行でよく分かりました。ありがとうございました。 #ライセンスを日本語に訳してもらっても、やっぱり意味が分かりませんでした。
797 名前:デフォルトの名無しさん mailto:sage [04/05/11 05:52] 日本語対応はどうなんですか? IMEとか。
798 名前:デフォルトの名無しさん mailto:sage [04/05/12 18:27] よくわからんけど、そのあたりは大丈夫だと思う。 日本語関連で問題が出るのはコンパイラの問題の場合が多いし。 っていうか、VC2003ツールキットでうまくコンパイルできん。 まぁ、情報が流れるのを待つか・・・。
799 名前:デフォルトの名無しさん mailto:sage [04/05/17 17:14] >>798 コンパイルしてみた。 スタティック版は上手くいくよ。 が、DLL版は失敗する。 delayimp.libが無い為リンク出来無い。 何処かから合法的に持って来る方法は無いかな?
800 名前:デフォルトの名無しさん [04/05/20 23:58] bool Get800() { return TRUE; }
801 名前:デフォルトの名無しさん mailto:sage [04/05/22 15:01] >>798 開発版は対応してる模様 wx-cvs-20040521.tar.bz2をビルドしたところ、 スタティック版もDLL版も問題なく成功。 早く次の安定版が出てくれればいいのだが…
802 名前:デフォルトの名無しさん mailto:sage [04/05/25 05:49] Doxygenかましたらまともなドキュメントになるのになー
803 名前:デフォルトの名無しさん mailto:sage [04/05/25 07:39] あー、嘘嘘。やってみたけど見にくいわ。 defs.hが痛過ぎる。全部まとめちゃってるから各クラスの解説に定数が出てこねー。ダメダコリャ。 でもメソッド一覧はやっぱりDoxygenの出力使えるといいなあ。 ちゃんとwxApp::MainLoopはvirtualって出るし。それに wxWindow::SetSize(const wxRect &rect) って実はサイズフラグも取れるって知ってた? ドキュメントでは↑だけど、本当は↓これ。 wxWindow::SetSize(const wxRect &rect, int sizeFlags=wxSIZE_AUTO) Doxygenしてみて初めて気付いた。 ドキュメントとソースを行ったり来たりするのは面土居sage
804 名前:デフォルトの名無しさん mailto:sage [04/05/25 12:57] wxWindowsで作られた有名ソフトって何ですか?
805 名前:デフォルトの名無しさん mailto:sage [04/05/25 13:08] www.wxwindows.org/apps2.htm
806 名前:デフォルトの名無しさん mailto:sage [04/05/26 03:36] >>799 DELAY_LOAD=delayimp.lib \ /delayload:ws2_32.dll /delayload:advapi32.dll /delayload:user32.dll \ /delayload:gdi32.dll \ /delayload:comdlg32.dll /delayload:shell32.dll /delayload:comctl32.dll \ /delayload:ole32.dll \ /delayload:oleaut32.dll /delayload:rpcrt4.dll $(GL_LIBS_DELAY) を6行まとめて次の1行に置換 DELAY_LOAD= これは、dll の遅延ロード用の設定で、 delayimp.lib は、遅延ロード用のヘルパーライブラリだと思うので、問題ないはず。 ちなみに、Visual C++ Toolkit 2003 は、 ランタイムライブラリ dll 用の lib が無いので includeディレクトリに有る use_ansi.h を下記のように変更した //#pragma comment(lib,"msvcprtd") #pragma comment(lib,"libcpmt") #else// _DEBUG //#pragma comment(lib,"msvcprt") #pragma comment(lib,"libcpmt") #endif// _DEBUG #else// _DLL && !STATIC_CPPLIB #ifdef _DEBUG //#pragma comment(lib,"libcpmtd") #pragma comment(lib,"libcpmt") さらに、debug 用の static ライブラリも無いので変更 これで出来ました。
807 名前:デフォルトの名無しさん [04/05/26 13:57] 今日使い始めたわけなんですけど、 windowsでいうとこのSetWindowRgnって、どうやったら実現できるかなぁ? 教えてくださいませ、詳しい人!
808 名前:807 [04/05/26 15:50] wxFRAME_SHAPED セットした wxFrameに wxString name("hoge.bmp"); wxBitmap bitmap( name, wxBITMAP_TYPE_BMP ); wxColour color( 0,0,0); wxRegion rgn(bitmap, color ); frame->SetShape( rgn ); とか、こんな感じでできるけど、リージョンをウインドウの形にできるけど wxMDIChildFrameだと、うまくいかない。無理ってことかねぇ。
809 名前:デフォルトの名無しさん [04/05/26 18:32] LinuxでwxGTK-2.4.2.tar.gzのコンパイルの際、日本語を使用可能にしよう と思った場合、configureオプションに--enable-unicodeを指定するべきな んでしょうか? --enable-unicodeを指定しなくても、setup.hには #define wxUSE_WCHAR_T 1 となっているので、指定する必要はないんでしょうか? ちなみに--enable-unicodeを指定して出来たライブラリを使って、Webから 拾ってきたとあるプログラムをコンパイルしようとするとwxStringがambiguous なんちゃらエラーになってしまいます。
810 名前:デフォルトの名無しさん mailto:sage [04/05/26 20:05] www.watch.impress.co.jp/game/docs/20040520/ue12.htm GameWatchのUnrealのページにこんなスクリーンショットがあったんですが、 wxMaterialEditorってwxWindowsと関係あるんですか?
811 名前:デフォルトの名無しさん mailto:sage [04/05/27 14:31] >>806 サンクス。 ランタイムライブラリのlibは、自分はimpdefを使って作成しました。 msvcp71d.dllやmsvcr71d.dllはネットに落ちてたのを拾って使ってるんだけど、 ライセンス的に平気かな?
812 名前:デフォルトの名無しさん mailto:sage [04/05/27 14:41] ttp://cvs.osafoundation.org/index.cgi/internal/launchers/win/libs/ とか…
813 名前:デフォルトの名無しさん mailto:sage [04/06/04 17:50] >>804 VLC media player www.videolan.org/vlc/
814 名前:デフォルトの名無しさん mailto:age [04/06/19 11:17] 保守age
815 名前:デフォルトの名無しさん [04/06/24 19:33] Borland C++ BuilderX に preview 載せて、 wxWindows をいじり始めました。 preview の出来は今1歩、いや2〜3歩か。 正式版に期待するかな。 xml パーサが日本語を通さないのが、残念なり。
816 名前:デフォルトの名無しさん mailto:sage [04/06/24 19:59] >>815 UTF-8でASCII以外がだめなの? ダメすぎ
817 名前:デフォルトの名無しさん [04/06/28 19:38] wxWindowsのポーティング説明サイトキボン。 それも日本語サイト
818 名前:デフォルトの名無しさん mailto:sage [04/06/28 19:57] >>817 を日本語に翻訳してくれるサイトキボン それも日本語サイト
819 名前:デフォルトの名無しさん mailto:sage [04/06/29 07:11] wxWidgets
820 名前:wxで行くべし mailto:sage [04/07/02 14:05] イベントハンドリングに関する質問です 現在付箋ソフト開発中で、付箋ウィンドウを作ってます。 付箋ウィンドウはwxTextCtrl on wxPanel on wxFrame(wxRESIZE_BORDER)で作りました。 ここで問題です。 このウィンドウのクライアント領域をドラッグして移動できるようにしたいのですが、 wxTextCtrlへのイベントを横取りしてwxFrameで取得するにはどうすればいいでしょうか? 試したのは 1)wxTextCtrl派生クラス作ってOnMouseEvent()でイベント受け取る。 受け取れるけど、イベントをwxFrameに横流しするにはどうすれば? 2)wxEvtHandler派生クラス作ってwxTextCtrlにSetEvtHandler()する。 wxEvtHandlerのProcessEvent()をオーバーライドしたら一見うまくいった様に見えたが、 ウィンドウを閉じると「不正な処理」でエラー こんな具合ですが、正統な方法があったら情報きぼんぬ
821 名前:デフォルトの名無しさん mailto:sage [04/07/02 14:29] >>820 wxTextCtrlのイベントハンドラから、 wxFrameのインスタンスにはアクセスできない造り?
822 名前:デフォルトの名無しさん mailto:sage [04/07/02 14:29] wxのイベントモデルから言えば2じゃないかな。 ウィンドウを閉じると「不正な処理」というのは回避できそうな気がする。
823 名前:デフォルトの名無しさん mailto:sage [04/07/02 15:25] >>820 wxMouseEvent : public wxEventだから親へ伝播しないわな。 >>821 の言う通りなんだったら自分で伝播させんとな。 src/common/event.cpp:884〜の bool wxEvtHandler::ProcessEvent(wxEvent& event) は参考にならんかい? ちなみに2.5だったらこっち wxEvtHandler::ProcessEventIfMatches(const wxEventTableEntryBase& entry, wxEvtHandler *handler, wxEvent& event);
824 名前:デフォルトの名無しさん mailto:sage [04/07/02 22:47] wxWidget用のRADとかないの? Eclipseでそういうのあったら最強くさいんだが
825 名前:デフォルトの名無しさん mailto:sage [04/07/03 01:21] 820です。 >>821-823 レスさんきゅう。 現在1)の方法を試してます。 wxTextCtrl派生クラスのOnMouseEvent()で GetParent()->GetParent()->AddPendingEvent(event) ってやったら問題解消。いまのところはこの方法でいこうかね。 >>824 RADとまで言えるかわからないけど、wxDesignerとかDialogBlocksという、 商用のダイアログエディタならあるよ。 wxDesigner www.roebling.de/ DialogBlocks www.anthemion.co.uk/dialogblocks/
826 名前:wxでいきませう mailto:sage [04/07/03 15:32] またまた820です。今度は別の問題へるぷみー 付箋ウィンドウ(wxFrame派生クラス)のスタイルをwxRESIZE_BORDERにすると、 wxTextCtrlが描画されない問題あり。 描画されたウィンドウをマウスでリサイズすれば描画されます。 でも表示直後に描画されないのです。 ※スタイルをwxDEFAULT_FRAME_STYLEにすれば最初から描画されます。 子ウィンドウのwxTextCtrlに対してRefreshとかEnableとかSetSizeとか やってみましたが、解決に至らず。 どうしよう?
827 名前:wxでいきませう mailto:sage [04/07/03 16:04] 820です。 自解しました。 付箋ウィンドウ(wxFrame派生クラス)のShow()をオーバーライドして その中でSendSizeEvent()してやったら描画されました。 なんか、質問すると解決する。そんなもんですかね。 P.S. wxWidgetsって使いやすい。サンプルも豊富でドキュメントもしっかりしてて。 MFCよりずっといいね。って今は.NETの時代?
828 名前:デフォルトの名無しさん mailto:sage [04/07/03 16:36] >>827 wxMSWだとpublic wxWindowなオブジェクトのSizeEventは 最初に表示(Show)された時ではなく、生成された時(Create)に発生する。 だからMyApp::OnInit()でnew,Showする順番が重要。
829 名前:デフォルトの名無しさん mailto:sage [04/07/04 02:23] > なんか、質問すると解決する。そんなもんですかね。 そんなもん。というより 1.質問を書く 2.どういう返事になるか想定する(○○はどうなってる?) 3.出す前に調べる 4.さらなる突っ込みを想定しつつ1or2へ戻る。 というプロセスを繰り返すと大抵の質問は出す前に解決してしまうよね。
830 名前:デフォルトの名無しさん mailto:sage [04/07/07 21:57] >> 809 私は FreeBSD-5.2.1 ユーザですが,misc2.cpp の JoyStick::GetProductName() の デフォルト値 「(const char) ""」を wxString にキャストできないのが 原因で ambiguous うんたらエラーになっていました,該当部分を wxString("", strlen(""))に置き換えてコンパイルしたら通りました. 試してみてください.
831 名前:名無しさん@そうだ選挙に行こう [04/07/11 14:22] UNIX の雑誌に wxWidgets の記事が載っていました。 立ち読みだったので、誌名は、覚えていません。 その記事に、wxWidgets のコードを自動作成してくれる RAD のような、ソフトウェアの紹介があります。
832 名前:名無しさん@そうだ選挙に行こう mailto:sage [04/07/11 14:59] >>831 SoftBankのUNIXUser。記事の良し悪しわ分からないけど・・・
833 名前:名無しさん@そうだ選挙に行こう mailto:sage [04/07/11 15:22] 書いてる人はNamazuのひとだねー。 zphotoのWindows版を作る時に使ったみたい。
834 名前:デフォルトの名無しさん mailto:sage [04/07/12 03:43] マイナーバージョンが一個増えてるけど翻訳サイトはそのままか
835 名前:デフォルトの名無しさん mailto:sage [04/07/12 07:23] 翻訳サイトは3ヶ月くらい進んでないんじゃないの
836 名前:の mailto:sage [04/07/13 01:43] >834,835 スマヌ、死んでます。別のプログラム(Wiki)で四苦八苦しているのよ。 #うまくいけば翻訳サイトに使うつもりなんだけど…… 他のメンバーも忙しいみたいだし。
837 名前:デフォルトの名無しさん mailto:sage [04/07/13 01:54] >>836 乙。 Wikiはツリー構造を実装したメニューがあればリファレンス向きだよね。 JavaのAPIリファレンスのような感じなら。
838 名前:デフォルトの名無しさん [04/07/13 02:20] ところでwxPenってWindowsで言うところのジオメトリックペンしか無いですよね コスメチックペンとか使いたいんですけどwxでは基本的にサポートしていませんか?
839 名前:灰 mailto:sage [04/07/15 06:26] おはようございます。 死者2号どす。
840 名前:デフォルトの名無しさん [04/07/15 12:08] wxWidgets の Gtk 版を使っていて、 環境変数 LANG が ja_JP のときに、 [No font for displaying text in encoding 'Extended Unix Codepage for Japanese (EUC-JP)' found. Would you like to select a font to be used for this encoding (otherwise the text in this encoding will not be shown correctly?)] というダイアログがいつもでて困ってるんだけどどうしたらいいかなあ。 FAQ かもしれんけど佐賀市型が悪いのか google ってもわからないので 教えてくださいませ.
841 名前:840 mailto:sage [04/07/15 18:04] www.h3.dion.ne.jp/~k5_n/wxwin/memo/ver0_2.html に理由が載ってたよ、しょぼーん。
842 名前:デフォルトの名無しさん mailto:sage [04/07/17 01:27] wxGladeというのは使えるものなのですか? 雛形を生成してくれるようですが
843 名前:デフォルトの名無しさん mailto:sage [04/07/17 02:20] sampleの中のファイルが所定の位置からずらすとコンパイルできない。何故だろう・・・ includeもlibも設定してるはずなんだけど
844 名前:デフォルトの名無しさん mailto:sage [04/07/17 23:10] >>842 使えるけど使いにくい・・・
845 名前:デフォルトの名無しさん mailto:sage [04/07/18 22:18] 質問です。 以下のようにframeとscrwinを仮定します。 wxFrame frame; wxScrolledWindow scrwin; この状態で、 frame->Reparent(scrwin); scrwin->SetBackgroundColour(何らかのwxColour); scrwin->Refresh(); とすると、scrwinの背景は所望の色になるけどframeの再描画が中途半端になります。 中途半端とは、frameの枠は描画されるけど、中身は描画されない。 何とかなりませんかねぇ。
846 名前:デフォルトの名無しさん mailto:sage [04/07/20 12:34] 845です。 問題はけっきょく未解決ですが、とりあえずは別のアプローチでしのいでいます。 ですが、情報頂けるとありがたいです。 さて、別の問題が発生しました。 wxTreeCtrlのアイテムについて、日本語表示に問題ありです。 日本語を表示させようとすると、アルファベットに変わって表示されます。 まだ、詳しく調べていませんが、情報あったらくださいな。 >>843 コンパイルオプションとか、エラーの内容とか詳しく書かないと無視されるよ
847 名前:デフォルトの名無しさん mailto:sage [04/07/20 12:57] >>846 むしろ君もです。プラットフォームくらい教えてくれよ。 ところでどうしてframeをscrolledwindowの上に貼り付けたいの?
848 名前:デフォルトの名無しさん mailto:sage [04/07/20 19:14] >>847 >プラットフォームくらい教えてくれよ。 失礼しました。 プラットフォームはWindowsXP Proです。 >ところでどうしてframeをscrolledwindowの上に貼り付けたいの? それは秘密。そういうアプリを作りたいから。 ということで、よろしくお願いします。
849 名前:デフォルトの名無しさん mailto:sage [04/07/20 22:31] 845です。 846で言ったwxTreeCtrlの日本語に関する話ですが、wxTreeCtrl自体に問題はありませんでした。 直にwxTreeCtrl::SetItemText()やったらうまく表示されました。 問題はwxTextCtrlの方にあるようです。 wxTextCtrl::GetLineText()で取得されるテキストに問題があるようです。 他のメソッド、例えばGetRange()とかGetValue()で取得するテキストには問題ありませんでした。 これはwxWidgetの問題なのか、回避できるものなのか、どうなんでしょう? ちなみに文字コードはSJISです。
850 名前:デフォルトの名無しさん mailto:sage [04/07/20 22:59] 「問題はありませんでした」「問題があるようです」 その文章読んでもどこに問題があるのかさっぱり分からんが。
851 名前:デフォルトの名無しさん mailto:sage [04/07/20 22:59] ×どこに問題があるのか ○何が問題なのか
852 名前:デフォルトの名無しさん mailto:sage [04/07/21 11:03] >>848 何をしたいのかを聞きたいんじゃなくて、 Frameの上にScrolledWindowじゃなくてその逆なのはなんで?ってこと。 MDIぽくしたいのならwxMDIClient/ParentWindowがあるでしょ。 いずれにせよ、説明が情報不足過ぎて再現テストコードすら書けないよ。 wxTextCtrlの問題も同じ。例えば「TextCtrlに入力した文字列をGetLineText で取得して、TreeCtrl上でSetItemTextして表示しようとしたら文字化けした」 とか、やりたいことを秘密にしたままでも書きようはあるでしょ。 今のところ「よーわからん。Unicode版使ったら?」とか、 「ttp://www.geocities.co.jp/SiliconValley-Cupertino/8526/wxWindows/japanese.html にあるようにロケールの設定をしましたか?」くらいしかコメントしようが ないよ。
853 名前:デフォルトの名無しさん mailto:sage [04/07/21 16:52] >>852 親切だな漏前。世話好き?
854 名前:デフォルトの名無しさん mailto:sage [04/07/21 20:41] >>853 違うよ。 説 教 好 き 。
855 名前:デフォルトの名無しさん mailto:sage [04/07/21 22:01] 845です。 ■Frameの上にScrolledWindowを乗せるのはなぜか? もともとFrame(Frame Aと呼ぶことにする)としてデスクトップに生成されたウィンドウを、 別のFrame(Frame B)中のScrollWindowに取り込み、その後、もう一度デスクトップ上にFrame Aを戻す、 という動作を実現したい。「MDIぽくしたい」というわけではない。 (もちろん、Frame B 中のScrollWindowに Frame A が取り込まれている状態はMDIのような 状態になる。) ■wxTextCtrlについて 例えば「あいうえお」という文字列をwxTextCtrl中に書く(ウィンドウとして生成されたwxTextCtrlに キーボードから文字入力を行う)。その文字列をwxTextCtrl::GetLineTextを使用して取り出し、 wxLogMessage()で出力すると「BDFHJ」(半角)と表示される。 wxTextCtrl::GetValueあるいはwxTextCtrl::GetRangeで取得した場合、wxLogMessageの出力結果は 「あいうえお」と正しく表示される。 ※wxLocaleについて wxLocaleオブジェクトを www.geocities.co.jp/SiliconValley-Cupertino/8526/wxWindows/japanese.html にしたがって生成した。 static wxLocale theLocaleObj(wxLANGUAGE_DEFAULT); しかし、上記の「wxTextCtrlについて」で述べた文字化けは起きる。 ------------ 以上です。
856 名前:デフォルトの名無しさん mailto:sage [04/07/22 20:55] UNIX USERの記事に日本語翻訳プロジェクトとして紹介されていたよ。