【GUI】wxWidgets(旧wxWindows) その5【サイザー】 (960レス)
【GUI】wxWidgets(旧wxWindows) その5【サイザー】 http://mevius.5ch.net/test/read.cgi/tech/1270793556/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
790: デフォルトの名無しさん [sage] 2014/09/13(土) 19:23:58.85 ID:iQniTJEB >>789 大体、答えが分かった。 つまりあなたは、wxFormBuilder に MyProject1MyFrame1 を生成させて、 this->Close(); を追加したんだ。 そいういうやり方だと、ボタンやメニュー項目を一つ増やす度に、手作業で、また、 this->Close(); を自分で書かなきゃならない。 それが、>>779 の意味だね? だとすれば、this->Close(); の部分は、実践的には、もっと長くなるのだから、 物凄く面倒で、なおかつ危険が伴う作業になるね。 http://mevius.5ch.net/test/read.cgi/tech/1270793556/790
791: デフォルトの名無しさん [sage] 2014/09/13(土) 19:27:26.32 ID:iQniTJEB >>790 >そいういうやり方だと、ボタンやメニュー項目を一つ増やす度に、手作業で、また、 >this->Close(); >を自分で書かなきゃならない。 ここの部分を補足すると、その時に追加したボタンやメニュー項目に対するハンドラだけ でなく、既に存在していたボタンやメニュー項目に対する全てのハンドラの中身を手作業で コピーする必要があるということになる。 ボタンやメニュー項目の個数をN とすると、O(N^2) の作業時間が必要になるね。 http://mevius.5ch.net/test/read.cgi/tech/1270793556/791
792: デフォルトの名無しさん [sage] 2014/09/13(土) 19:44:06.05 ID:JrIr4YUs >>790 > そいういうやり方だと、ボタンやメニュー項目を一つ増やす度に、手作業で、また、 > this->Close(); > を自分で書かなきゃならない。 そこらへんに少しコツがあってな。 自動生成された部分を一切変更しない限りにおいて、 後から機能追加して再度サブクラスを生成した時、以前書いた部分は削除されない。 つまり今回の例では「this->Close();」は消えずに残る。 逆に言えば「// TODO〜」コメントの削除や編集すら許されないという事なんだけどな。 これが守られなかった場合、同名の(空の)関数が別に生成される。 この場合は旧関数から新関数へのコピペおよび旧関数の削除の手間が生じるが、 いずれにせよ一度書いたものが消える事は無い。 ヘッダファイルにおいても同様であり、 //// end generated include と /** Implementing MyFrame1 */ の間、それと //// end generated class members 以降の行に書いた内容は削除されない。 安心して機能追加できる。 不安だったら再生成する前にバックアップ取っておけばいい。 問題があるとすれば、コードのインデントが全て消える事。 Eclipse等開発環境のコードフォーマッタで解決するが、3.4.0beta時点では インデント維持されてた筈なんだ。なんで維持されなくなったんだ? 俺の見落しか仕様かバグか。 http://mevius.5ch.net/test/read.cgi/tech/1270793556/792
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.036s