主婦と.NETと犬のぶろぐ

奥様 と プログラム と お犬様 の 楽しい日常

目次

Blog 利用状況

ニュース

書庫

日記カテゴリ

NumericUpDown(System.Windows.Forms.NumericUpDown)

数値入力させたい場合に何かとらくちんなコントロールですね。
Accelerations っていうプロパティがあるんですが、
MSDN をみてもなんのこっちゃ?と思ってましたが、
百聞は一見にしかず。
やってみるとすぐわかります。

ワタシのプログラムですと、NumericUpDown1 の矢印を 押しっぱなしにしておくと、ある一定の値を過ぎてから(たぶん 3 秒経過した時点の値)
100 ずつグワーッと値が上がり(下がり)始めます。
用途があんまり思いつかないんですけどね。まぁいっか。

■参考文献
NumericUpDown クラス
NumericUpDown コントロール (Windows フォーム)
NumericUpDownAcceleration クラス

■実行画像
なんもおもしろくない実行画面
NumericUpDown

Public Class NumericUpDownTest

Private Sub NumericUpDownTest_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
With Me.NumericUpDown1 .DecimalPlaces = 2 ' 小数部の桁数 .Increment = 1.5D ' 矢印ボタンの 1 回クリックでどれだけ増加/減少するか .InterceptArrowKeys = True ' 矢印キーによる値の増減を許可 .ReadOnly = True ' 矢印キーのみでの値の増減を行う .ThousandsSeparator = True ' 桁区切り記号を表示する .Maximum = 50000.8D ' 上限 .Minimum = -50000.8D ' 下限 .Value = 1500.25D ' 値の設定 ' 矢印が指定秒数押された時に、どのような加速を適用するかを指定する .Accelerations.Add(New NumericUpDownAcceleration(3, 100)) AddHandler .ValueChanged, AddressOf NumericUpDown_ValueChanged
.UpButton() ' 1 個上へ End With
With Me.NumericUpDown2 .Hexadecimal = True ' 16 進表示 .UpDownAlign = LeftRightAlignment.Left ' 左側に矢印を表示 AddHandler .ValueChanged, AddressOf NumericUpDown_ValueChanged
.DownButton() ' 1 個下へ End With
' マウスホイールで増減しない NumericUpDown Dim nowheelUpDown As NoWheelNumericUpDown = New NoWheelNumericUpDown() With nowheelUpDown .Name = "NoWheelNumericUpDown1" .Location = New Point(12, 62) .BackColor = Color.LightBlue AddHandler .ValueChanged, AddressOf NumericUpDown_ValueChanged End With Me.Controls.Add(nowheelUpDown)
End Sub
Private Sub NumericUpDown_ValueChanged(ByVal sender As Object, ByVal e As System.EventArgs) Dim numericUpDn As NumericUpDown = DirectCast(sender, NumericUpDown) System.Diagnostics.Debug.WriteLine(numericUpDn.Name & ":" & numericUpDn.Value.ToString()) End Sub End Class
Public Class NoWheelNumericUpDown Inherits NumericUpDown
Protected Overrides Sub OnMouseWheel(ByVal e As System.Windows.Forms.MouseEventArgs) 'MyBase.OnMouseWheel(e) End Sub End Class

投稿日時 : 2007年2月28日 10:01

Feedback

# re: NumericUpDown(System.Windows.Forms.NumericUpDown) 2007/02/28 12:44 null

Accelerations、僕も用途が思いつかないです。
一ユーザーとしての意見ですが、
はっきり言って加速するのはうざいだけです
大幅に数値を上下させる時は直接入力するから、
勝手に加速させないでくれ!
っていつも思います^^;

# re: NumericUpDown(System.Windows.Forms.NumericUpDown) 2007/02/28 19:16 なおこ(・∀・)

>> null さん
うーん。。。ワタシはうざいまでは思いませんが、
確かに、直接入力できない ReadOnly = True 時位しか
際立って便利な場面が思いつかないですねぇ。

# re: NumericUpDown(System.Windows.Forms.NumericUpDown) 2007/03/01 14:53 null

"うざい"は言いすぎでしたね、
まぁあくまでも単なる私の主観ですので^^;

矢印を押している時間によって変わるのではなく、
加速on/offスイッチとかを提供して
明確に使い分けれるような機能ならばいいんですけどねぇ。
でも、いいインターフェイスが思いつかないですね (苦笑)

# BermenAEgCXSOfrEc 2011/11/28 19:44 http://www.laurenslinens.com/teenbedding.html

I serched through the internet and got here. What a wonderful invention of the mankind. With the help of the network you communicate, learn, read !... That helped us to get acquainted!...

# istwstkIBPKXwCgAqm 2014/07/19 11:12 http://crorkz.com/

ZfDc6R Wow, great post.Really looking forward to read more. Awesome.

タイトル  
名前  
Url
コメント