コンボ(リスト)ボックスの項目を全て削除 <TOP>
SendMessage ウィンドウにメッセージを送信
CB_RESETCONTENT(&H14B) コンボボックスのリストボックスからすべての項目を除去
LB_RESETCONTENT(&H184) リストボックスからすべての項目を除去
'================================================================ '= コンボ(リスト)ボックスの項目を全て削除 '= (RESETCONTENT.bas) '================================================================ #include "Windows.bi" ' ウィンドウにメッセージを送信 Declare Function Api_SendMessage& Lib "user32" Alias "SendMessageA" (ByVal hWnd&, ByVal wMsg&, ByVal wParam&, lParam As Any) #define CB_RESETCONTENT &H14B 'コンボボックスのリストボックスからすべての項目を除去する #define LB_RESETCONTENT &H184 'リストボックスからすべての項目を除去する Var Shared Combo1 As Object Var Shared List1 As Object Var Shared Button1 As Object Combo1.Attach GetDlgItem("Combo1") : Combo1.SetFontSize 14 Combo1.SetWindowSize 66, 96 List1.Attach GetDlgItem("List1") : List1.SetFontSize 14 List1.SetWindowSize 66, 96 Button1.Attach GetDlgItem("Button1") : Button1.SetFontSize 14 '================================================================ '= '================================================================ Declare Sub MainForm_Start edecl () Sub MainForm_Start() For i% = 1 To 20 Combo1.AddString Str$(i%) List1.AddString Str$(i%) Next Combo1.SetCursel 0 End Sub '================================================================ '= '================================================================ Declare Sub Button1_on edecl () Sub Button1_on() Var Ret As Long 'コンボボックス・リストボックスの項目をすべて削除 Ret = Api_SendMessage(Combo1.GethWnd, CB_RESETCONTENT, 0, ByVal CLng(0)) Ret = Api_SendMessage(List1.GethWnd, LB_RESETCONTENT, 0, ByVal CLng(0)) End Sub '================================================================ '= '================================================================ While 1 WaitEvent Wend Stop End