Swing/SpinnerNumberModel のバックアップソース(No.2)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- 現在との差分 - Visual を表示
- バックアップ を表示
- Swing/SpinnerNumberModel へ行く。
TITLE:SpinnerNumberModelに上限値を超える値を入力 #navi(../) #tags() RIGHT:Posted by &author(aterai); at 2009-07-13 *SpinnerNumberModelに上限値を超える値を入力 [#p37ce79c] JSpinnerのテキストフィールドにSpinnerNumberModelが決めた上限値を超える数値を直接入力した後に表示される値をテストします。 -&jnlp; -&jar; -&zip; //#screenshot #ref(http://lh3.ggpht.com/_9Z4BYR88imo/TQTTrfKZbaI/AAAAAAAAAk0/znT8goHx2Es/s800/SpinnerNumberModel.png) **サンプルコード [#h3b84b6b] #code(link){{ SpinnerNumberModel m1 = new SpinnerNumberModel( Integer.MAX_VALUE, 0, Integer.MAX_VALUE, 1); SpinnerNumberModel m2 = new SpinnerNumberModel( Long.valueOf(Integer.MAX_VALUE), Long.valueOf(0), Long.valueOf(Integer.MAX_VALUE), Long.valueOf(1)), //SpinnerNumberModel m2 = new SpinnerNumberModel( // Integer.MAX_VALUE, 0L, Integer.MAX_VALUE, 1L), }} **解説 [#xe68d57b] -Byte, Short, Integer, Long(上) --上限値は上から順にByte.MAX_VALUE, Short.MAX_VALUE, Integer.MAX_VALUE, Long.MAX_VALUE --上限値の先頭に適当な数値を入力すると上限値以外の数値に変換される場合がある --Integerでの例: 2 147 483 647 = 1111111111111111111111111111111 (Integer.MAX_VALUE) 112 147 483 647 = 1101000011100100000101100101111111111 (頭に11追加) 478 333 951 = 11100100000101100101111111111 (Integer.MAX_VALUEには戻らない) -Long.valueOf(下) --上限値は上と同じ --数値はすべてLong --上限値の先頭に適当な数値を入力しても上限値のまま //**参考リンク **コメント [#h2a76f4f] #comment