ページ 1 / 1
コントロールのプロパティ
Posted: 2005年8月23日(火) 14:45
by se
ABを使い始めて3日目です。
くだらない質問で申し訳ありませんが、どうか教えてください。
よろしくお願いします。
ABでは、VBのようにボタンのキャプションをプログラムの中から変更したり
EnableとかDisableにしたりなどできないのでしょうか?
CommandButton1.Caption="なまえ"
CommandButton1.Enable=True
のように。
また、コントロールのImageBoxに画像を表示するにはどのようにすれば
良いのでしょうか。
Posted: 2005年8月23日(火) 16:31
by 7
クラスを使うことによって、CommandButton1.Caption="なまえ"、のようなことが可能です。
コード: 全て選択
Class CommandButton
Protected
c_hWnd As HWND
c_ID As Long
Public
Sub CommandButton(ByVal hWnd As HWND,ByVal ID As Long)
c_hWnd=GetDlgItem(hWnd,ID)
c_ID=ID
End Sub
Sub ~CommandButton()
c_hWnd=NULL
c_ID=NULL
End Sub
Sub Caption(ByVal lpCaption As BytePtr)
SetWindowText(c_hWnd,lpCaption)
End Sub
Sub Enable(ByVal bEnable As Long)
EnableWindow(c_hWnd,bEnable)
End Sub
End Class
Sub MainWnd_CommandButton1_Click()
Dim CommandButton1 As CommandButton(hMainWnd,CommandButton1)
CommandButton1.Caption("なまえ")
CommandButton1.Enable(FALSE)
End Sub
クラスを使わないのであれば、SetWindowText(),SetDlgItemText(),EnableWindow()をプログラムの中で使えば可能です。
これらの関数はActiveBasicのヘルプにも載ってますし、Win32APIを調べれば分かります。
ImageBoxに画像を表示するのはDISCOVERSOFTのWin32プログラミング講座を参考にしてはどうでしょう。
Posted: 2005年8月23日(火) 19:22
by イグトランス
ようするに普通は何でもAPI関数呼び出しでやりますが、自分でクラスを作ればコードをそれっぽい感じにすることもできるということです。
Posted: 2005年8月24日(水) 08:54
by se
7さん、イグトランスさん
ありがとうございます。
調べながらやってみます。