社畜ゲートウェイ

京成・京急を中心に取り上げる阪急ファンのブログです。日本一遅い速報を届けます。

MENU

【スポンサーリンク】

【VB.NET】ラベルの文字色・背景色を変更する

【スポンサーリンク】

f:id:neko_britannia:20200615213413j:plain

ラベルの背景色・文字色を変更する方法です。

ラベルの背景色・文字色を変更

VB.NETでラベルというものは確実に使用されます。また、ボタンを押下した時にチェック処理が走り、ラベルの文字色を変えると言ったことも高頻度であり得ます。ラベルの文字色を変更する事はそんなに難しい事ではありませんが、VB.NETの開発において必須知識と言えます。

 

さて、肝心の方法ですが、ラベルのプロパティ内にある「BackColorプロパティ」(背景色)と「ForeColorプロパティ」(文字色)に色をセットすれば大丈夫です。例として、実行ボタンを押下した際に、テキストボックスに入っている色に合わせてラベルの文字色と背景色を変更する簡単なフォームを作成しました。

f:id:neko_britannia:20200617211312j:plain

例示で作成したので、上のテキストボックスに「赤」と入力すれば、こんにちわの色が赤色に、下のテキストボックスに「青」と入力すれば、こんばんわの背景色が青色になる簡単な仕様です。テキストボックスがブランクだと、文字色と背景色は元に戻ります。

 

ラベルの文字色を変更する

ラベルの文字色を変更するには、「ForeColorプロパティ」に値をセットします。「ForeColorプロパティ」は文字色のプロパティです(前景色とも言われたりします)。セットする色は「Color構造体」のプロパティか、「SystemColorsクラス」のプロパティの値をセットすれば大丈夫です。

Private Sub cmdLabelColorChange_Click(sender As Object, e As EventArgs) Handles cmdLabelColorChange.Click
    Try

        If txtSetColor1.Text = "赤" Then
            'ラベル1の文字を赤色に変更
            Label1.ForeColor = Color.Red
        Else
            'ラベル1の文字を元に戻す
            Label1.ForeColor = SystemColors.ControlText
        End If

    Catch ex As Exception
        MessageBox.Show(ex.Message)
    End Try
End Sub

では、上のテキストボックスに「赤」と入力して、実行ボタンを押下してみます。

f:id:neko_britannia:20200617211917j:plain

f:id:neko_britannia:20200617211952j:plain

はい、「こんにちわ」の文字色が赤色に変わりました。

文字色を元に戻す時は、ForeColorプロパティにSystemColors.ControlTextをセットしてあげます。SystemColorsクラスのControlTextプロパティは、Windowsフォームの標準の文字色です。上のテキストボックスを空っぽにして、実行ボタンを押下します。

f:id:neko_britannia:20200617212222j:plain

f:id:neko_britannia:20200617212257j:plain

はい、赤色だった「こんにちわ」が元に戻りました。

 

背景色を変更する

ラベルの文字色を変更するには、「BackColorプロパティ」に値をセットします。「ForeColorプロパティ」の時と同様に、セットする色は「Color構造体」のプロパティか、「SystemColorsクラス」のプロパティの値をセットすれば大丈夫です。

Private Sub cmdLabelColorChange_Click(sender As Object, e As EventArgs) Handles cmdLabelColorChange.Click
    Try

        If txtSetColor2.Text = "青" Then
            'ラベル2の背景を青色に変更
            Label2.BackColor = Color.Blue
        Else
            'ラベル2の背景を元に戻すに変更
            Label2.BackColor = SystemColors.Control
        End If

    Catch ex As Exception
        MessageBox.Show(ex.Message)
    End Try
End Sub

今度は下のテキストボックスに「青」と入力して、実行ボタンを押下してみます。

f:id:neko_britannia:20200617212717j:plain

f:id:neko_britannia:20200617212752j:plain

少し見辛いですが、こんばんわの背景が青色になりましたね。

背景色を元に戻す時は、BackColorプロパティにSystemColors.Controlをセットしてあげます。SystemColorsクラスのControlプロパティは、Windowsフォームの標準の背景色です。下のテキストボックスを空っぽにして、実行ボタンを押下します。

f:id:neko_britannia:20200617213016j:plain

f:id:neko_britannia:20200617213044j:plain

「こんばんわ」の背景色が元に戻りましたね。ラベルの背景色を変更するということはあまり見たことがありませんが、覚えておいて損はありません。

 

編集後記

ラベルの背景色を変更する機会はそんなにないと思いますが、ラベルの文字色を変更する機会はかなりあります。セットする時はColor構造体かSystemColorsクラスのどちらでも良いですが、元に戻す時はSystemColorsクラスを利用して下さい。

関連記事

テキストボックスの背景色・文字色を変更する

www.stellacreate.com

参考サイト

Label クラス

docs.microsoft.com

Color 構造体

docs.microsoft.com

Control.BackColor プロパティ

docs.microsoft.com

SystemColors クラス

docs.microsoft.com