【GUI】wxWidgets(旧wxWindows) その5【サイザー】 (960レス)
1-

289
(1): 2011/11/22(火)22:33 AAS
サンプルはどこから持ってきたやつなの?
インストールしてるwxWidgetsとサンプルのバージョンは同じ?

そもそもインストールはどうやってしたの?
パッケージから入れたの? それともソースからビルドしたの?

とまあ、気になる点はいろいろですが、
とりあえずパッケージからwxWidgetsの開発環境をインストールして、
同じバージョンのサンプルをコンパイルするのは、
省2
290
(1): 2011/11/23(水)00:13 AAS
>>288
そのエラーメッセージは最初の方は含まれてる?
wxのincludeが読み込めてないように思える。includeのエラーが最初にないかい?
291
(1): 2011/11/23(水)03:07 AAS
>>288
makefile.gccはMinGW用のMakefileじゃなかったっけ?

make -f <対象のMakefile> でだいたい行けるはず
292: 2011/11/23(水)03:19 AAS
そもそもLinuxでwxWidgetsやろうと思ったら

?wxWidgetsのソースダウンロード
?./configure <- 自分が欲しいオプション ->
?make && make install
?samplesフォルダにあるソースコードを「make」コマンドでコンパイル

で終わるはずなんだがなあ
293
(2): 2011/11/23(水)07:52 AAS
MinGWでwxWidgetsやろうとしたら面倒すぎて死んだ
294: 2011/11/23(水)15:36 AAS
>>293
大丈夫、慣れたらできる(マゾ)
295
(1): 2011/11/23(水)15:48 AAS
>>284
しかもよく見たらコマンド間違えてるな

× g++ -c foo.cpp `wx-config --cppflags`

○ g++ -c foo.cpp `wx-config --libs` `wx-config --cxxflags` -o foo

ライブラリにリンクしてないから実行ファイルができてない可能性が
296: 2011/11/23(水)21:59 AAS
>>293
wxDev-C++
外部リンク:wxdsgn.sourceforge.net
みたいなのもあるから暇なときに試してみたら?

VC++でやるよりは楽かも…、しれません。
297: 2011/11/24(木)00:18 AAS
devC++は好きで昔から結構使ってるけど
やっぱvc版インストしてvcの統合環境でやったほうがデバッグは楽だよ
使うまではdevCのパッケ導入が楽かも知れんけどw

(最近はc#が色々楽すぎるんでwx自体全然使って無いけど・・・)
298: 2011/11/24(木)06:38 AAS
VC++2008EnterpriseEditionでやったらめちゃくちゃ簡単だった
299: 2011/11/24(木)14:16 AAS
hosyu
300
(1): 284 2011/11/28(月)13:24 AAS
レスの間が開いてすみません。みなさん色々とアドバイスありがとうございます。
>>289
よくわからないうちからいろいろなサイトをまわって色々試してたせいで若干記憶が曖昧で申し訳ないのですが、インストールは確かパッケージから入れたと思います。

サンプルのバージョンが2.9.2なのですが、コンパイルエラーを見る限り、2.8のライブラリを読んでいるみたいなので、安定版と最新版を両方入れてたみたいです。

改めて2.8.12を公式から落としてきて、そのサンプルでコンパイルしてみたらうまくいきましたので、ご指摘の通りサンプルとwxWidgetsのバージョンが違ったみたいです。ありがとうございました。

>>290
エラーメッセージは先頭の部分でした。ありがとうございました。
省8
301: 2011/11/28(月)19:19 AAS
>>300

> 今まで下記サイトを参考に
> 外部リンク:0xcc.net
>
> % g++ -c hello.cpp `wx-config --cppflags`
> % g++ -o hello hello.o `wx-config --libs`
>
省4
302
(1): 2011/12/05(月)19:16 AAS
LinuxでパッケージからwxWidgetsを入れた場合、setup.hはどこにあるのでしょうか?
wxUSE_ACCESSIBILITYを有効にしようと思ってファイル検索したら大量にかかったので幾つか内容を変更してみても有効にならなかったので。
303
(1): 2011/12/05(月)19:26 AAS
パッケージはバイナリしか入ってない、つまりオプションを切り替えるのは不可能では?
ソースからビルドした方がいいと思われ
304: 2011/12/05(月)19:31 AAS
>>303

ありがとう。ソースから入れなおしてみる。
305
(1): 2011/12/05(月)19:45 AAS
>>302
Linuxでは通常はソースのパッケージが別に用意されてるよ。

ディストリによるけど後ろに-develみたいなのがついたパッケージ
を入れるとソースが入る。
306
(1): 2011/12/05(月)21:19 AAS
>>305
そのレスを見る前に入れなおしてしまった…教えてもらったのに申し訳ないです。

オプションの切り替えは結局setup.hをいじれば良いのでしょうか?
307
(1): 2011/12/05(月)21:34 AAS
>>306
./configure -h で付けられるオプションが見れるからやってみ、その中にwxUSE_ACCESSIBILITYも入ってるだろう
308
(1): 2011/12/05(月)21:38 AAS
$ ./configure -h | grep accessibility
--enable-accessibility enable accessibility support

あったあった。何に使うのかわからんけどどうぞ。
309: 2011/12/06(火)11:00 AAS
>>307,308
何から何まですみません。
310
(1): 255 2011/12/06(火)11:57 AAS
wxAccessibleってマニュアルに
For details on the semantics of functions and types, please refer to the Microsoft Active Accessibility 1.2 documentation.
とか、
Availability: only available for the wxMSW port.
とかあるけどlinuxで意味あるのか?
311
(1): 2011/12/06(火)14:11 AAS
>>310
下のサイト
外部リンク[html]:www14.ocn.ne.jp
を見て、サンプルのソース実行して勉強してたんですけど、accessっていうサンプルをコンパイルして実行をしようとすると、
"This sample has to be compiled with wxUSE_ACCESSIBILITY"
というメッセージが出たので、
Windowsのみ本体のwxUSE_ACCESSIBILITYを1にする、とは書いてあったんですが、動いてないということはLinuxでも必要なのかと勝手に思い込んでこちらで聞いてみたんですが、やっぱりLinuxでは意味が無いんでしょうか…
312: 311 2011/12/06(火)14:27 AAS
度々すみません。
こちらでもマニュアルを確認したら、accessはWindowsのみと書いてありました。
今度からはマニュアルを良く読んで、わからなかったらこちらで聞きたいと思います。
自分自身でもあんまりにゆとりすぎて反省してます…。
みなさん大変ご手数をおかけしました。
313: 2011/12/07(水)15:35 AAS
ほとんどのゆとりにくらべたらまだましなほうだわ
314: 2011/12/07(水)19:17 AAS
ゆとりはHSPとかC#に行くだろうからこっちには来ないだろうな
あとC++のGUIライブラリで有名で日本語ドキュメントがあるのはQtとかgtkだろうからさらにやる人は減る
最後にwxWidgetsは英語の知識とC++のオブジェクト指向がわかってないとできないから挫折する人も多いだろう

とゆとりが言ってみる
315: 2011/12/07(水)20:24 AAS
wxWidgets > Qt >>> こえられないかべ >>> GTK
316: 2011/12/11(日)22:40 AAS
wxWidgets > Qt なの?
317: 2011/12/15(木)13:37 AAS
いわゆるビジュアルプログラミング言語は
生産性を改善するという触れ込みでありながら、事実上普及していない

何でかは知らんけど、同じ大きさのモニタに表示できる情報量で
テキストに負けちゃうからっていう説を聞いたことがあるような
318: 2011/12/16(金)01:32 AAS
AA省
319: 2011/12/16(金)06:38 AAS
下記のページ
外部リンク[html]:docs.wxwidgets.org

でwxCommandEventを勉強していたのですが、
GetIntとGetSelectionの違いがよく分かりません。

GetIntは
wxCommandEvent::GetInt
int GetInt()
省4
320: 2011/12/16(金)13:32 AAS
ver 2.8.12
include/wx/event.h
538: int GetSelection() const { return m_commandInt; }
554: int GetInt() const { return m_commandInt; }
321: 2011/12/22(木)01:35 AAS
リストボックスの中に、入れ子でリストボックスを作りたいと思いマニュアルを見て、wxListBoxのメンバ関数であるCreate関数を利用すれば2段階リストが構成できるということまではわかったのですが、Create関数の使い方がいまいちわかりません。

お手数ですが、どなたか使い方を教えていただきませんでしょうか。
322: 2011/12/22(木)06:52 AAS
了解
323
(1): 2011/12/22(木)18:41 AAS
wxRegExを使うため、wxregexライブラリをビルドし、成功しました。
しかし、いざプログラムで「wxRegEx」クラスを使おうとすると、「error C2065: 'wxRegEx' : 定義されていない識別子です」というエラーが出て、全く使えません。
思いつく方が居たらお願いします。

OS: Windows 7
wxWidgets: 2.9.1
コンパイラ: Visual C++ 2010 Express
324: 2011/12/22(木)18:52 AAS
>>323
すいません、プリコンパイル済みヘッダを再作成してみたらうまくいきました。
スレ汚しすいません……
325: 2011/12/22(木)19:21 AAS
MinGW勢はいないのか
どいつもこいつもマイクロソフトの犬だな
326
(1): 2011/12/23(金)01:55 AAS
mingwの時点でOSはWindowsなのに
>どいつもこいつもマイクロソフトの犬だな
とか書くのかよw
327: 2011/12/23(金)02:50 AAS
確かにそうだな、ちょっとWindows捨ててくる
328
(1): 2011/12/23(金)16:08 AAS
wxWidgetsはWindows以外はおまけだろ。
Win32のラッパーとしての価値しかないと思っている。
329: 2011/12/23(金)16:11 AAS
>>326
ナイス
330: 2011/12/23(金)16:12 AAS
>>328
元々 wxWindows だからなぁ
331: 2011/12/24(土)17:54 AAS
migw もなぁ…64bit対応がなぁ…
wxruby とか使いたくても使えないよ

しかしひとはビルドしろという
なんどでもビルドしろという
びるどしろー
332: 2011/12/25(日)00:36 AAS
rubyるど
333: 2011/12/25(日)08:31 AAS
MSWでwxListCtrlを使ってみたらDESELECTEDイベントが通知されないバグがあったので
クリックやキボード操作が行われる度に選択状態を自分でチェックしてDESELECTEDイベントを送るようにしたら
アイテムが1個の時に何故かマウスイベントが消し去られるバグまで出てきて
もう八方塞がりです
なにこれ馬鹿
334: 2011/12/25(日)12:00 AAS
wxLC_VIRTUALの呪い
335: 2011/12/25(日)13:04 AAS
そういうのってバグ報告できないのかな?
336: 2011/12/25(日)21:34 AAS
馬鹿が使うと馬鹿っぽく振舞います
337: 2011/12/27(火)11:01 AAS
明らかに開発陣はWindowsでテストしてないな
昔よりバグが悪化してるwww
338
(1): 2011/12/27(火)12:10 AAS
最近wxTreeCtrl使ってるけどイベント通知できんわ
仕様がわかってないだけかも知れんが、バグだったら報告しなきゃだな
339: 2011/12/27(火)16:48 AAS
できるよ
340
(2): 2011/12/27(火)19:07 AAS
最新バージョンってバグ多いの?
これから使うか悩んでるので教えてださい。
341
(1): 338 2011/12/27(火)23:00 AAS
今日ちょっとwxTreeCtrlの全イベント試してみたが、特に問題なかった。環境はMSW(MinGW)

>>340
英語が多くてドキュメントがAPIリファレンスしかないのがある意味バグw
この前wxXMLをHTMLに使ったら一気にバグってワロタ(当たり前だけど)

それさえ超えればいいものだと思います
342: 2011/12/27(火)23:36 AAS
自分の無能を環境のせいにすんなやぼけ
343
(1): 2011/12/28(水)08:03 AAS
バグとか明らかに仕様とは違う動きをしたりすることは多々あるけど
もともとネイティブAPIをラップしただけだから誤魔化せるかもしれない
結局のところネイティブレベルの知識とwxWidgetsの中身まで調べないといけないので時間はかかる
それでもネイティブコンパイル出来ないC#も嫌だし、MFCよりは遥かにましだけどw
ネイティブレベルのことをしたくてGUIも楽に作りたいって要求に答えてくれるものがないもんな
344: 2011/12/28(水)15:34 AAS
>>341
英語なのはキツイけどほかに良いライブラリも見当たらないし我慢するw

>>343
バグがあるってのはちょっと残念だなぁ
ネイティブレベルの知識もそんなに無いし不安だ・・・
けど、大きなバグじゃないのなら少し使ってみようと思います。
345: 2011/12/29(木)15:13 AAS
649 デフォルトの名無しさん [sage] 2011/12/29(木) 14:50:37.28 ID: Be:
学生プログラマ日本一決定戦(予選は社会人も参加可)
外部リンク[html]:codevs.jp
現在予選開催中
応募締切 2012.1.6 12:00

おもしろいことやっているじゃん。誰か今から参加しろよ。
346: 本田 2011/12/31(土)22:24 AAS
>>340
外部リンク:www.wxwidgets.org
wxWidgets 2.9.3 Released
2011-12-14

While this is still officially a development release because some API details are still not frozen,
we believe that 2.9.3 can be used in production environment,
especially for the new projects for which (small) changes in behaviour since 2.8 are not a problem.
省1
347: 2012/01/01(日)00:03 AAS
2.8もバグ多い
348: 2012/01/01(日)11:14 AAS
サイザーage
349: 【大吉】 【683円】 2012/01/01(日)12:26 AAS
今年のおみくじは大吉を良く目にする
350: 【大吉】 2012/01/01(日)13:38 AAS
今年はwx使うことあるかなー
351: 2012/01/04(水)16:51 AAS
wxWebViewって縦書きに対応してる?
352
(1): 2012/01/05(木)01:29 AAS
wxTextCtrlの内容を一行ずつ読み込みたいです。
行数を調べるのに以下のやり方でいいのかと考えたのですがエラーがでます。

size_t abc = wxTextCtrl::TextCtrl1.GetNumberOfLines();

コンパイルすると以下のエラーがでます。

C:\Users\x\Desktop\practice\practiceMain.cpp||In member function 'void practiceFrame::OnButton2Click(wxCommandEvent&)':|
C:\Users\x\Desktop\practice\practiceMain.cpp|225|error: 'TextCtrl1' is not a member of 'wxTextCtrl'|

外部リンク[html]:docs.wxwidgets.org
省2
353
(1): 2012/01/05(木)01:32 AAS
>>352
wxTextCtrlではなくwxTextFileとあるけように思える。
IDE使ったほうがいいんじゃない?
354
(1): 2012/01/05(木)02:10 AAS
>>353
レスありがとうございます。

リンクを間違っていました。 以下を参考にしました。
外部リンク[htm]:wxwindowsjp.sourceforge.jp

IDEは、CODE::BLOCKS SVN:7550を使用しています。

試しに以下のことをやってみたのですがエラーがでました。
int abc = TextCtrl1.GetNumberOfLines(TextCtrl1);
省4
355
(1): 2012/01/05(木)02:31 AAS
>>354
全体のコード見てないからなんとも言えないが、TextCtrlはprivateとかで宣言しないと外から触れんぞ


Frame.h
private :
wxTextCtrl* m_text;

Frame.cpp
省3
356
(1): 2012/01/05(木)12:59 AAS
>>355
レスありがとう。

int abc = TextCtrl1 -> GetNumberOfLines();

と書けば、エラーなくコンパイルできました。

本当にありがとうでした。
357
(1): 2012/01/05(木)17:12 AAS
>>356
それじゃあコンパイルできても内部処理書く段階で死にそうなのでアドバイス

第十三回-03 ドット演算子とアロー演算子
外部リンク[html]:brain.cc.kogakuin.ac.jp

あとこことかも役に立つ

●C++編(言語解説) トップページ
外部リンク[html]:www.geocities.jp
358: 2012/01/05(木)21:49 AAS
>>357
ありがとうございます。
ゆっくり読みます。
359: 2012/01/06(金)15:41 AAS
テキストファイルを読み込む時に、utf-8のファイルの場合はreadして読み込むことができます。
テキストファイルがsjisの場合、次のようなエラーメッセージが表示されます。
[Faild to convert file "z:\test.txt" to unicode

外部リンク[html]:docs.wxwidgets.org
外部リンク[html]:docs.wxwidgets.org
上記を読むと、wxConvAuto機能を使用すると自動的にコンバートしてくれるように記載されているように見えます。

それで、openするときに、wxConvAuto()を付け加えてみたのですがエラーがでます。
省7
360
(1): 2012/01/06(金)15:42 AAS
すいません、ソースコードは短めなので、こちらに書きます。

wxString file,str,s,number;
wxTextFile tfile;

wxFileDialog fdlog(this,_T("テキスト読み込みファイルの選択"),
wxEmptyString, wxEmptyString, wxEmptyString,
wxFD_OPEN);
if(fdlog.ShowModal() != wxID_OK) return;
省18
361
(3): 2012/01/06(金)16:25 AAS
wxTextCtrlの中身を印刷したいのですが、どのようにすればいいのかいまいち分かりません。
どこかにwxTextCtrlのアドレスか何かを渡せばよいのでしょうか?教えてください
362
(2): 2012/01/06(金)18:45 AAS
>>360
過去スレにもSJIS読み込みについての事例が沢山あるが、wxWidgetsのライブラリによるSJIS→UTF-8の変換は全く期待できない
結論としては「UnicodeビルドしてUTF-8で読み込め」でFAだとおもう

おすすめはlibiconvでUTF-8に変換してからwxWidgets内に読み込む
iconvはwikipediaにもサンプルコードがあるから、使うのは難しくないはず 外部リンク:ja.wikipedia.org

>>361
wxWidgets2.9.3のクラスリファレンス見れ、いっぱい使えそうなのあるぞ
省7
363: 361 2012/01/06(金)19:18 AAS
印刷の件ですが、wxPrinterDCにwxTextCtrlの値を渡せばWindowsでは印刷することができました。

しかし、LINUX(ubuntu11.10)環境下では、印刷プレビューを見る限りではうまくいっている様に思えるのですが、実際に印刷してみると(test wordsと言う文字を1部だけ印刷しようとしました。)、
1枚目のプリントに下記のようなエラーが印刷され、その後プリンタが無限に白紙を出しつづけるという不具合が起こりました。

%!PS-Adobe-3.0 %%Creator: Gnome Print Version 2.18.8 %%CreationDate: D:201201061

この不具合は、wxWidgets2.8.12の印刷用のサンプルプログラムprintingの内容を印刷しようとしても起きてしまったので、
参考にしたサンプルその物がどこかおかしいか、こちらの印刷まわりの設定がおかしいかのどちらかだと思うので、とりあえず上記のエラーを調べてみます。

>>362
省2
364
(2): 2012/01/06(金)19:42 AAS
さっきShift_JISで読み込むのは無理だと言ったがそれは嘘だ(コマンドー風に)

下みたいなテストプログラムで普通にShift_JIS読み込めてワロタ
2.9.3パない

// テキストファイルの読み込み
wxTextFile file(wxT("./Shift_JIS.txt"));
file.Open(wxConvAuto(wxFONTENCODING_CP932));
wxString test = file.GetFirstLine();
省2
365
(1): 2012/01/07(土)21:53 AAS
>>362>>364
レスありがとうございます。
試しに以下のように入力してコンパイルしてみました。

wxTextFile file(wxT("c:\\Shift_JIS.txt"));
file.Open(wxConvAuto(wxFONTENCODING_CP932));
wxString test = file.GetFirstLine();

コンパイルすると、下記エラーがでます。
省7
366
(2): 2012/01/07(土)22:42 AAS
>>365
やりかたは間違ってないとおもうので頑張って
今ちょっとクラスリファレンス見てたけど

wxTextFileの部分で::Openで取れる引数が2.8から2.9で変わってるみたい

wxWidgets 2.8

bool Open(wxMBConv& conv = wxConvUTF8) const
bool Open(const wxString& strFile, wxMBConv& conv = wxConvUTF8) const
省4
367: 2012/01/08(日)00:03 AAS
>>366
わざわざ調べてくれてありがとうございます。

2.8にはない新機能だったんですね。
2.9.3にする励みになりました。

code::blocksで、コンパイル済みのものを入れるだけで1週間くらいかかった記憶があります。
コンパイルなど慣れないことをするので、今回も同じくらい時間かかるかもしれません。

でも2.9.3にする気にになりました。
省1
368
(1): 2012/01/09(月)00:02 AAS
Mingwをcドライブ直下にインストール
PATHに、C:\MinGW\bin;C:\MinGW\mingw32\binを追加
c:\wxWigets-2.9.3を解凍

下記を参考にしました。
外部リンク[php]:wiki.codeblocks.org
オプションはcode::blocksで使用する場合のofficial supportと書いていたので下記とおりにしています。

コマンドプロンプトで下記実行
省15
369: 2012/01/09(月)00:08 AAS
>>366

wxTextFile gfile(wxT("c:\\Shift_JIS.txt"));
gfile.Open(wxConvAuto(wxFONTENCODING_CP932));
wxString test = gfile.GetFirstLine();

tfile.Open(file,wxConvAuto(wxFONTENCODING_CP932));

二通りのやりかたでコンパイルが正常にできました。

また、sjisのファイルを読みこむこともできました。
省2
1-
あと 591 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.029s