【GUI】wxWidgets(旧wxWindows) その5【サイザー】 (960レス)
上下前次1-新
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
780: 2014/09/13(土)18:03 ID:iQniTJEB(1/8)調 AAS
>>778
出来れば言葉で説明していただけるととても有難いんだけれども。
781(1): 2014/09/13(土)18:20 ID:iQniTJEB(2/8)調 AAS
>>776
MyProject1MyFrame1.cpp に、
void MyProject1MyFrame1::m_button1OnButtonClick( wxCommandEvent& event )
{
// TODO: Implement m_button1OnButtonClick
this->Close();
}
と類似の行が沢山あるけど、this->Close() 以外は、wxFormBuilder が自動生成したとのことで Ok ?
>>779
>基本クラスや継承クラスの生成コードは
>上書きしちゃってよしなにしてくれないから目視マージが必要になる
>で、それならxrcでいっかなとなったりとね
この辺りとの関連が知りたい。自分で書いたコードが勝手に上書きされて消されてしまうということ?
782: 2014/09/13(土)18:22 ID:iQniTJEB(3/8)調 AAS
そもそも wxFormBuilder って、人間が書いたコードと「マージ」や「アペンド」する機能は全くなくて、
デザイナのテキスト領域に表示されるコードをコピペして使う程度の事しかできないのかな?
784: 2014/09/13(土)18:54 ID:iQniTJEB(4/8)調 AAS
class MyFrame1 : public wxFrame {・・・};
class MyProject1MyFrame1 : public MyFrame1 {・・・};
となっていて、
http://stackoverflow.com/questions/8255753/how-to-add-personal-code-into-wxformbuilder-generated-class
の
・build your frame/panel in formbuilder
・generate inherited class
・implement your handling code in inherited class
・make changes to form/panel in wxFormbuilder ->
will only affect generated class, not inherited class
の最後の行と矛盾するね。
wxFormBuilder は、MyFrame1 は書き換えるが、それを継承した所の MyProject1MyFrame1 は、最初の
一回しか書き換えない(というよりユーザーが指示しないと生成しない)、ということらしいから。
785(1): 2014/09/13(土)18:57 ID:iQniTJEB(5/8)調 AAS
つまり、>>781 のイベント・ハンドラにおいて、this->Close(); の外側の部分も手作業で
書くしかないのではなかろうか?
そして、対応する *.h ファイルの中に、同じ関数のメンバ関数宣言も手作業で追加するしかないのでは?
787: 2014/09/13(土)19:07 ID:iQniTJEB(6/8)調 AAS
>>786
QtCreator では、それが出来るのかな?
790(2): 2014/09/13(土)19:23 ID:iQniTJEB(7/8)調 AAS
>>789
大体、答えが分かった。
つまりあなたは、wxFormBuilder に MyProject1MyFrame1 を生成させて、
this->Close();
を追加したんだ。
そいういうやり方だと、ボタンやメニュー項目を一つ増やす度に、手作業で、また、
this->Close();
を自分で書かなきゃならない。
それが、>>779 の意味だね?
だとすれば、this->Close(); の部分は、実践的には、もっと長くなるのだから、
物凄く面倒で、なおかつ危険が伴う作業になるね。
791(1): 2014/09/13(土)19:27 ID:iQniTJEB(8/8)調 AAS
>>790
>そいういうやり方だと、ボタンやメニュー項目を一つ増やす度に、手作業で、また、
>this->Close();
>を自分で書かなきゃならない。
ここの部分を補足すると、その時に追加したボタンやメニュー項目に対するハンドラだけ
でなく、既に存在していたボタンやメニュー項目に対する全てのハンドラの中身を手作業で
コピーする必要があるということになる。
ボタンやメニュー項目の個数をN とすると、O(N^2) の作業時間が必要になるね。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.047s