リストボックスの各種操作2
リストボックスの各種操作2のサンプルです。
サンプルの実行画面
ソースコード
[ListItem2.frm]
'SendMessage=>メッセージをウインドウに送る
'<引数>
'hWnd:ウインドウのハンドル
'wMsg:定数(LB_××参照)
'wParam:パラメータ
'lParam:0
'<戻り値>
'その時により異なる
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
'SendMessageString=>メッセージをウインドウに送る
'<引数>
'hWnd:ウインドウのハンドル
'wMsg:定数(LB_××参照)
'wParam:パラメータ
'lParam:0
'<戻り値>
'正常終了-1以外
Private Declare Function SendMessageString Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As String) As Long
Const LB_SELECTSTRING = &H18C 'リストボックスの文字列を検索してハイライト表示
Const LB_SETCURSEL = &H186 'リストボックスの指定の項目をハイライト表示
Const LB_GETCOUNT = &H18B 'リストボックスの項目数を返す
Const LB_GETCURSEL = &H188 'リストボックスで現在選択されている項目の項目番号を返す
Private Sub Command1_Click()
Dim Ret As Long '戻り値
'文字列を検索する
Ret = SendMessageString(List1.hwnd, LB_SELECTSTRING, 0, Text1.Text)
If Ret = -1 Then MsgBox "検索した結果「" & Text1.Text & "」は見つかりませんでした。"
'*【検索方法】大文字、小文字を判別しません
End Sub
Private Sub Command2_Click(Index As Integer)
Dim Count As Long 'リストアイテム数
Dim ListIndex As Long '選択されているリスト番号
'リストボックスのアイテム数を取得する--->VB標準機能でもOK
Count = SendMessage(List1.hwnd, LB_GETCOUNT, 0, 0)
'今現在選択されている項目番号を取得する
ListIndex = SendMessage(List1.hwnd, LB_GETCURSEL, 0, 0)
'リストが選択されてない場合は終了
If ListIndex = -1 Then
MsgBox "リストを選択して下さい"
Exit Sub
End If
Select Case Index
Case 0
If ListIndex = 0 Then
MsgBox "上に移動できません"
Exit Sub
Else
'選択している項目を上に移動する
Call SendMessage(List1.hwnd, LB_SETCURSEL, ListIndex - 1, 0)
End If
Case 1
If ListIndex = 31 Then
MsgBox "下に移動できません"
Exit Sub
Else
'選択している項目を上に移動する
Call SendMessage(List1.hwnd, LB_SETCURSEL, ListIndex + 1, 0)
End If
End Select
End Sub
'リストボックスの初期処理
Private Sub Form_Load()
For i = 0 To 9
List1.AddItem "0" & i & vbTab & "リストボックスの各種操作②"
Next
For i = 10 To 25
List1.AddItem i & vbTab & "リストボックスの各種操作②"
Next
List1.AddItem "ABCDE"
List1.AddItem "GHIJKL"
List1.AddItem "アイウエオ"
List1.AddItem "カキクケコ"
List1.AddItem "あいうえお"
List1.AddItem "かきくけこ"
End Sub
ソースコード一式のダウンロード
vbapi_listitem2.zip 1.74 KB (1,784 バイト)
このサンプルの動作環境について
このサンプルは 「Windows98」及び「Microsoft Visual Basic 5.0 Professional Edition」で確認しております。環境が異なる場合は正常に動作しない場合もございますのでご了承下さい。
スポンサーリンク
関連記事
| 前の記事: | リストボックスの各種操作1 |
| 次の記事: | テキストボックスでのカーソル位置を取得する |
公開日:2015年03月05日
記事NO:00403
プチモンテ ※この記事を書いた人
![]() | |
![]() | 💻 ITスキル・経験 サーバー構築からWebアプリケーション開発。IoTをはじめとする電子工作、ロボット、人工知能やスマホ/OSアプリまで分野問わず経験。 画像処理/音声処理/アニメーション、3Dゲーム、会計ソフト、PDF作成/編集、逆アセンブラ、EXE/DLLファイルの書き換えなどのアプリを公開。詳しくは自己紹介へ |
| 🎵 音楽制作 BGMは楽器(音源)さえあれば、何でも制作可能。歌モノは主にロック、バラード、ポップスを制作。歌詞は抒情詩、抒情的な楽曲が多い。楽曲制作は🔰2023年12月中旬 ~ | |









