訪問して頂きありがとうございます。まさふくろーです。
この記事では、コントロールをポイントしたときにツールチップ(ツールヒント)を表示する方法をご紹介します。
コントロールをポイントしたときにツールチップ(ツールヒント)を表示する
使用するコントロール
ToolTipコントロール
解説 |
フォーム上のコントロールにマウスポインターを合わせたときにツールチップ(ツールヒント)を表示させるには、ToolTipコントロールを使用します。 |
ToolTipコントロールは、ツールボックスからToolTipを選択して、フォームをクリックすると、コンポーネントに追加されます。 |
使用するプロパティ
ToolTip1のToolTipプロパティ
解説 | ツールチップ(ツールヒント)に表示する文字列を入力します。 |
ToolTipコントロールの配置手順
「ツールチップ」コントロールの配置
①「表示」タブをクリック⇒②「ツールボックス」を選択します。
ツールボックスから「ToolTip」をクリックし、選択します。
フォーム上でクリックすると、「ツールチップ」コントロールがコンポーネントに追加されます。
「テキストボックス」のツールチップに表示する文字列の設定
「テキストボックス」コントロールを選択します。
①「表示」タブをクリック⇒②「プロパティウィンドウ」を選択します。
プロパティウィンドウの「ToolTip1のToolTip」欄に「サンプルです。」と入力します。
すると、入力した文字が「テキストボックス」コントロールにツールチップ表示されます。
プログラムでの制御(サンプルプログラム)
画面起動時、テキストボックスにツールチップの設定をする
1 2 3 4 5 6 7 |
Public Class Form1 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load ToolTip1.SetToolTip(TextBox1, "サンプルです。") End Sub End Class |
2 | 画面起動時に以下処理を行う。 |
4 | テキストボックス1にツールチップを設定する。 |
ツールチップ(ツールヒント)のフォントサイズを変える
OwnerDrawプロパティの設定を変更
コンポーネント内にある「ToolTip1」コントロールをクリックします。
①「表示」タブをクリック⇒②「プロパティウィンドウ」を選択します。
「OwnerDraw」プロパティを「True」に設定します。
「OwnerDraw」プロパティを「True」に設定することによって、プログラムで記述した内容が反映されます。 補足
プログラムでの制御(サンプルプログラム)
画面起動時、テキストボックスにツールチップの設定をする
1 2 3 4 5 6 7 |
Public Class Form1 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load ToolTip1.SetToolTip(TextBox1, "サンプルです。") End Sub End Class |
2 | 画面起動時に以下処理を行う。 |
4 | テキストボックス1にツールチップを設定する。 |
ツールチップを表示する際、ツールチップのサイズを調整する
1 2 3 4 5 6 7 8 9 10 11 |
Public Class Form1 Private Sub ToolTip1_Popup(sender As Object, e As PopupEventArgs) Handles ToolTip1.Popup Dim f As Font f = New Font("MS UI Gothic", 20) e.ToolTipSize = TextRenderer.MeasureText(ToolTip1.GetToolTip(e.AssociatedControl), f) End Sub End Class |
2 | ツールチップを表示する際に以下処理を行う。 |
6 | フォント「MS UI Gothic」、サイズ「20」に設定する。 |
8 | フォントサイズとツールチップに表示する文字列より、ツールチップのサイズを求める。 |
ツールチップの各種設定
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
Public Class Form1 Private Sub ToolTip1_Draw(sender As Object, e As DrawToolTipEventArgs) Handles ToolTip1.Draw Dim sf As StringFormat Dim f As Font sf = New StringFormat() e.DrawBackground() sf.Alignment = StringAlignment.Center sf.LineAlignment = StringAlignment.Center f = New Font("MS UI Gothic", 18) e.Graphics.DrawString(e.ToolTipText, f, SystemBrushes.ActiveCaptionText, e.Bounds, sf) ToolTip1.InitialDelay = 100 '(0.1秒) ToolTip1.AutoPopDelay = 10000 '(10秒) End Sub End Class |
2 | ツールチップを描画する際に以下処理を行う。 |
9 | システムの背景色を使用して、ツールチップの背景を描画する。 |
11 | ツールチップ内の文字位置を中央にする。(水平方向) |
12 | ツールチップ内の文字位置を中央にする。(垂直方向) |
14 | フォント「MS UI Gothic」、サイズ「18」に設定する。 |
16 | 指定したフォント、フォントサイズ、アクティブなウィンドウのタイトル バーのテキストの色で文字を描く。 |
18 | ツールチップが表示されるまでの時間を0.1秒に設定。(デフォルトでは、0.5秒) |
19 | ツールチップの表示が消えるまでの時間を10秒に設定。(デフォルトでは、5秒) |
関連記事
最後まで読んでいただき、ありがとうございました!
本のまとめ関連記事はこちら