ボタンコントロールの作成と破棄について

ActiveBasicでのプログラミングでわからないこと、困ったことなどがあったら、ここで質問してみましょう(質問を行う場合は、過去ログやWeb上であらかじめ問題を整理するようにしましょう☆)。
返信する
メッセージ
作成者
jacoby

ボタンコントロールの作成と破棄について

#1 投稿記事 by jacoby »

ver4.04を使っています。
ボタンの作成と破棄について教えてください。

 黒色の太い境界を持つボタンを作成したいと
思い、BUTTONクラスでのスタイル定数を
「BS_DEFPUSHBUTTON」と設定したかったのですが、
RADツールではその設定の仕方が分からず、
代わりにそのボタンが張り付くウインドウの
クリエイト・イベント内で、

コード: 全て選択


 CreateWindowEx(&H00000000,"BUTTON","ok",_
                &H50000000 or BS_DEFPUSHBUTTON,_
                225,205,88,36,hTitleWnd,_
                CommandButton1,GetModuleHandle(0),0)
 SendMessage(GetDlgItem(hTitleWnd,CommandButton1),_
             WM_SETFONT,hFont_TitleWnd,0)
などと定義して、更にグローバル変数領域で

コード: 全て選択


 Const CommandButton1=1005
などとID番号を他のコントロールとかぶらないような値をセットして
実行してみました。

 とりあえずこれで黒色の太い境界を持つボタンの作成は
出来たのですが、分からないのはこのボタンコントロール、
作りっぱなしでいいのかな、ということです。
 今までCreateWindowEx命令はRADツールに任せ切りで
使ったことが無く、いざ使ってみるとヘルプには、
DestroyWindow命令があり、それぞれ対の関係になって
いるようにも思えます。
 CreateWindowで作ったものはDestroyWindowで破棄する、という
ような。

 ボタンなどのコントロールも一つのウインドウの形態とすれば
そのボタンが貼り付いているウインドウのデストロイ・イベントなどでは、
これらを破棄するときにそのボタンの為のDestroyWindow命令を実行
しなくてはならないのかなと、その辺りのことがはっきりと分からないで
います。

 ちなみに今は何も処理をしていません。見た目不都合無く動いて
いるようです。
(このボタンはモーダル・ダイアログウインドウ上のボタンとして作り、
DialogBox(hMainWnd,"TitleWnd")としてDialogBox命令で表示し、
ボタンがクリックされたら

コード: 全て選択


Sub TitleWnd_CommandButton1_Click()
  EndDialog(hTitleWnd,2)
End Sub
としてウインドウを閉じています。)


 ボタンなどのコントロールは、それらが貼り付いているウインドウを
破棄すれば、それぞれについては特に個別に後処理をする必要は
ないのでしょうか?

 要領を得ない質問ですみません。どなたかお知りのかたが
おられましたらよろしくお願いします。
イグトランス
記事: 899
登録日時: 2005年5月31日(火) 17:59
お住まい: 東京都
連絡する:

Re: ボタンコントロールの作成と破棄について

#2 投稿記事 by イグトランス »

>  ボタンなどのコントロールは、それらが貼り付いているウインドウを
> 破棄すれば、それぞれについては特に個別に後処理をする必要は
> ないのでしょうか?

このとおりです。
親ウィンドウが破棄されるときに子ウィンドウも一緒に破棄されるので問題ありません。
jacoby

ボタンの作成と破棄について

#3 投稿記事 by jacoby »

イグトランスさん、素早いレクありがとうございます。
そうですか、親ウインドウを破棄すれば大丈夫なんですね。
安心して続きを作りたいと思います。ありがとうございました。
またよろしくお願いします。
Tomorrow
記事: 72
登録日時: 2005年6月04日(土) 10:09

Re: ボタンコントロールの作成と破棄について

#4 投稿記事 by Tomorrow »

>  黒色の太い境界を持つボタンを作成したいと
> 思い、BUTTONクラスでのスタイル定数を
> 「BS_DEFPUSHBUTTON」と設定したかったのですが、
> RADツールではその設定の仕方が分からず、
因みに、RADツールでは[- Button プロパティ -]の[標準のボタン]にチェックするとできます。
jacoby

ボタンコントロールの作成と破棄について

#5 投稿記事 by jacoby »

Tomorrowさん、返信遅れてすみません。
早速やってみたいと思います。
ありがとうございました。
返信する