Microsoft Form2.0 CommandButtonを非表示にするには?

[戻る]
akkie [E-Mail] 2001/05/18(金) 14:19:49
リソース上でMicrosoft Forms2.0 CommandButtonで釦を作成し、
その釦を非表示にしたり、表示するプログラムを作成したいのですが…。

その釦のメンバ変数作成(CCommandButton m_btn)し、
標準釦のクリックイベントで、

@m_btn.ShowWindow(SW_HIDE);

をしたところ、当然非表示されました。
が、m_btnの値を見てみるとNULLに置き換わってしまいました。

次に、同じく標準釦のクリックイベントで、

Am_btn.ShowWindow(SW_SHOW);

をしようとしてもm_btnのメンバ変数は当然NULLなので
ハンドルエラーが起こってしまいます。

どうしたらよいのでしょうか?

ちなみに開発環境は以下です。
OS:NT4.0(SP6.0a)
言語:VC++6.0(SP5)

akkie 2001/05/18(金) 17:33:25
[[解決]]
すみません。解決してしまいました。
方法は2種類かな。もっとあると思うけど…

@スタイルを変えて描画する方法

m_btn.ModifyStyle(WS_VISIBLE, 0);
Invalidate();

AAPI関数を使う方法

::ShowWindow((HWND)m_btn, SW_HIDE);

@、A共に問題なくいけましたが
どっちがいいのやら???
ほかにも方法があったら教えてください!

古いスレッドには追加発言できません。