VBレスキュー(花ちゃん)
VB2005用トップページへVBレスキュー(花ちゃん)のトップページVB6.0用のトップページ各掲示板

メニューへ戻ります。 ListBox コントロール関係のメニュー
1.ListBox コントロールに関するワンポイントテクニック集
2.ListBox 内の項目の高さ(行の高さ)を設定する
3.リストボックス内のすべての項目を完全一致・前方一致検索
4.ListBox に複数の項目を指定位置に揃えて表示/表示データを個別に取得
5.リストボックスの指定位置に複数のタブストップ位置を設定
6.ListBox 内の項目の色を個別に設定する(オーナードローによる)
7.ListBox の背景色を1行飛びに設定する(オーナードローによる)
8.テキストファイルを読み込んでリストボックスに表示及びファイルに保存
9.2つのリストボックスのスクロールの同期を取る
10. 
11.
12.
 . 
20.その他、当サイト内に掲載の ListBox コントロールに関するサンプル


7.ListBox の背景色を1行飛びに設定する(オーナードローによる)(19_Lst_08) (旧、SampleNo.110)
1.ListBox の背景色を1行飛びに設定する(オーナードローによる)
2.
3.
4.
5.
6.

 下記プログラムコードに関する補足・注意事項 
動作確認:Windows 8.1 (Windows 7) / VB2013 (VB2010) / Framework 4.5.1 / 対象の CPU:x86
Option :[Compare Text] [Explicit On] [Infer On] [Strict On]
Imports :追加なし
参照設定:
追加なし
その他 :
    :
このサンプル等の内容を無断で転載、掲載、配布する事はお断りします。(私の修正・改訂・削除等が及ばなくなるので)
必要ならリンクをはるようにして下さい。(引用の場合は引用元のリンクを明記して下さい)
このページのトップへ移動します。 1.ListBox の背景色を1行飛びに設定する(オーナードローによる)

Public Class Form1

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
'1行飛びに背景色を設定(オーナードローで)
    If ListBox1.DrawMode = DrawMode.OwnerDrawFixed Then
        ListBox1.DrawMode = DrawMode.Normal
    Else
        ListBox1.DrawMode = DrawMode.OwnerDrawFixed
    End If
End Sub

Private Sub ListBox1_DrawItem(sender As Object, e As DrawItemEventArgs) Handles ListBox1.DrawItem
' オーナー描画の ListBox 項目を作成(ヘルプに同様のサンプルあり)
    '項目が選択された場合は強調表示
    e.DrawBackground()
    If (e.State And DrawItemState.Selected) <> DrawItemState.Selected Then
        '項目が選択されていない場合背景色を指定の色で描画
        If (e.Index Mod 2) = 1 Then
            e.Graphics.FillRectangle(Brushes.LightPink, New RectangleF( _
                    e.Bounds.X, e.Bounds.Y, e.Bounds.Width, e.Bounds.Height))
        End If
    End If
    '指定した位置に、指定した Brush オブジェクトと
    'Font オブジェクトで、指定した文字列を描画
    e.Graphics.DrawString(ListBox1.Items(e.Index).ToString(), e.Font, New SolidBrush(e.ForeColor), _
                    New RectangleF(e.Bounds.X, e.Bounds.Y, e.Bounds.Width, e.Bounds.Height))
    '描画されている項目に Focus がある場合は、フォーカスを示す四角形を描画する
    e.DrawFocusRectangle()
End Sub

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    With ListBox1
        .Items.Add("あいうえお アイウエオ")
        .Items.Add("かきくけこ カキクケコ")
        .Items.Add("さしすせそ サシスセソ")
        .Items.Add("たちつてと タチツテト")
        .Items.Add("なにぬねの ナニヌネノ")
        .Items.Add("はひふへほ ハヒフヘホ")
        .Items.Add("まみむめも マミムメモ")
        .Items.Add("や ゆ よ ヤ ユ ヨ")
        .Items.Add("らりるれろ ラリルレロ")
        .Items.Add("わをん   ワヲン")
    End With
End Sub

End Class

  図1.上記実行結果
 vb2013listbox07_1

このページのトップへ移動します。 2.


このページのトップへ移動します。 3.


このページのトップへ移動します。 4.


このページのトップへ移動します。 5. 



このページのトップへ移動します。 6.


このページのトップへ移動します。 検索キーワード及びサンプルコードの別名(機能名)





このページのトップへ移動します。