
VB2010、Winアプリ
こんにちわ。
フォーム上に存在するTextBoxやLabelコントロールに
ToolTipを表示させています。
ToolTipを表示させるための条件とかって設定出来ないんでしょうか?
その条件というのは
「TextBoxやLabelコントロールの幅以上のテキストが入力されている」
場合のみToolTipを表示させたいというものです。
思いついた方法としては
コントロールの幅と入力文字数を係数として格納しておき
MouseのHoverとかのイベント時に文字数チェックを行い
その判定により表示するかしないかを決定する、
というものぐらいしか自分には思いつきませんでした。
もっとスマートな方法があれば教えていただければと思います。
よろしくお願いします。。。
(TextBoxのWordWrapプロパティで折り返しを判断しているものを
見れれば楽にできるのかなぁなんて思ったりもしましたが
どう判断しているかわからなかったもので。。。)
No.1ベストアンサー
- 回答日時:
固定ピッチフォントなら文字数から計算できると思いますがプロポーショナルフォントの場合は文字数だけでは計算できないでしょう。
TextRender.MesureText を使用するのが比較的簡単ではないかと思います。
MouseHover イベントなり TextChanged イベントなりで
Dim s As Size = TextRenderer.MeasureText(TextBox1.Text, TextBox1.Font)
If TextBox1.Width < s.Width Then
ToolTip1.SetToolTip(TextBox1, TextBox1.Text)
Else
ToolTip1.SetToolTip(TextBox1, "")
End If
のようにすると良いと思います。
回答ありがとうございます。
丁寧にソースまで提示していただいて恐縮です。
目的の動作を実装する事が出来ました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelのtextboxへの入力で小数点以下に0が続く場合でも正しく表示したい 3 2022/04/11 13:53
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- Excel(エクセル) エクセルの条件付き書式 4 2023/04/17 11:05
- 教育学 エクセルで、複数条件を全て満たすと合格、満たさないと不合格、と表示されるようにするには? 3 2023/04/03 18:41
- Excel(エクセル) 条件付き書式の設定方法を教えて下さい。 2 2023/04/14 18:12
- Excel(エクセル) エクセルの数式について教えてください。 2 2023/03/04 09:54
- Excel(エクセル) エクセルの数式で教えてください。 2 2023/01/18 17:23
- Excel(エクセル) 見えているセルの数字だけの合計を計算させたい 4 2022/09/11 17:23
- Excel(エクセル) エクセルの数式で教えてください。 1 2023/06/15 14:11
- Excel(エクセル) エクセルのマイナス表示 3 2022/03/28 16:35
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
DataGridViewで行の展開みたい...
-
テキストボックス(VBA)でEnter...
-
C# TEXTが空白であるLABELは何...
-
エクセル入力規制リスト行数
-
カスタムコントロールInputMan...
-
ユーザーフォームに日付を表示...
-
VB6でPNGファイルを扱うには?
-
checkbox付きListViewで デフ...
-
C#でユーザコントロールのプロ...
-
MSFlexGrid
-
C# アプリ終了時に設定を記憶...
-
VBからエクセルのテキストボ...
-
デザインモードを解除すると消...
-
Enabled=Falseのテキストボック...
-
マウスオーバーした範囲の文字...
-
エクセル VBA ユーザーフォーム...
-
エクセルの画像にツールチップ...
-
DataGridで左詰め、右...
-
チェックボックスの文字色の変え方
-
VB.NETで縦書表示をしたいので...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
テキストボックス(VBA)でEnter...
-
Wordテキストコントロールが未...
-
エクセルの画像にツールチップ...
-
ユーザーフォームに日付を表示...
-
C# TEXTが空白であるLABELは何...
-
エクセル入力規制リスト行数
-
MSFlexGrid
-
コンボボックスの高さを変更し...
-
ACCESS2010 ActiveXコントロー...
-
Enabled=Falseのテキストボック...
-
VB6でLabelの最前面にText Box...
-
ADOのCursorLocationプロパティ
-
DataGridViewで行の展開みたい...
-
checkbox付きListViewで デフ...
-
VB2005 コードでのコントロー...
-
チェックボックスの文字色の変え方
-
VB6でPNGファイルを扱うには?
-
PictureBoxの背景色変更(VB.NET)
-
VB.NETで縦書表示をしたいので...
-
MFCでbitmapを背景にしてstatic...
おすすめ情報