- PR -

NumericUpDownコントロールでTextをクリックしたか否かを感知したい

1
投稿者投稿内容
moondog
大ベテラン
会議室デビュー日: 2003/04/11
投稿数: 165
投稿日時: 2004-04-22 12:28
お世話さまです。

VB.NETのWindowsフォームでの話です。

NumericUpDownコントロールのText部をクリックしたのか、
UpDownボタンをクリックしたのかを判別する必要があり、
その判別方法を実装できないで困っています。

Text部をクリックしてカーソルを発生させたことを
感知する方法ってあるのでしょうか?

ご教示頂けるとありがたいです。
NowhereMan
会議室デビュー日: 2004/03/29
投稿数: 10
投稿日時: 2004-04-22 14:54
NumericUpDownのイベント、プロパティなどでは判定できないようです。

対処方法として1つ考えられるのは、UpDownボタンをクリックする時と
テキスト部をクリックする時でカーソルの形状が変わることを利用して
Private Sub NumericUpDown1_Click(...)
 Dim c As Cursor = Cursor.Current
 If c.Equals(Cursors.Arrow) Then
  ' UpDownボタンがクリックされた
 Else
  ' テキスト部がクリックされた
 End If
End Sub
ただし、この判定方法がいつも正しいかどうかは確証がありません。

NumericUpDownのテキスト部の上にTextBoxを重ねた
ユーザコントロールを作成するのが確実かもしれません。
moondog
大ベテラン
会議室デビュー日: 2003/04/11
投稿数: 165
投稿日時: 2004-04-22 15:13
===>NowhereMan様

早速のレスありがとうございます。

ご教示頂いたコードで実装してみましたところ見事に判別できました。

ありがとうございました、助かりました。m()m

蛇足ながら、Beatlesの「一人ぼっちのあいつ」は
私がF4に目覚めた想い出の曲です。^^

釈迦に説法でしょうが、私のHNはDig a Ponnyの歌詞の一節からの引用です。
1

スキルアップ/キャリアアップ(JOB@IT)