トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   とにかくFLASH【FLASHに関して全般】
     NumericStepperでの奇数表示
投稿するにはまず登録を

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
mayor
Åê¹ÆNo.28009
投稿日時: 2006-8-20 7:45
ちょんまげら
居住地: 東京砂漠
投稿: 4403
使用環境:
Re: NumericStepperでの奇数表示
CustomValidator.validate() の OddNumbersOnly.as では、
NumericStepper の value が奇数がどうかを検証しているのだと思うのですが、
ごんざえもんさんが書かれているように、
NumericStepperクラス の checkValidValue() で、
すでに、NumericStepper の value が奇数でないように設定されてしまっているような気がします。

なので、NumericStepperクラス の function checkValidValue() の部分を修正しないことには
改善されないように思います。

trace(checkValidValue(3));
// 2 と出力

function checkValidValue(val:Number):Number {
	var stepS:Number = 2;
	var minVal:Number = 1;
	var maxVal:Number = 99;
	var initDiv:Number = val / stepS;
	var roundD:Number = Math.floor(initDiv);
	if (val > minVal and val < maxVal) {
		if (initDiv - roundD == 0) {
			return val;
		} else {
			var tmpV:Number = Math.floor(val / stepS);
			var stepDownV:Number = tmpV * stepS;
			if ((val - stepDownV >= stepS / 2 && maxVal >= stepDownV + stepS && minVal <= stepDownV - stepS)
				|| (val + stepS == maxVal && maxVal - stepDownV - stepS > 0.00000000000001)) {
				stepDownV += stepS;
			}
			return stepDownV;
		}
	} else {
		if (val >= maxVal) {
				return maxVal;
		} else {
			return minVal;
		}
	}
}

minimum(minVal) が stepSize(stepS) の倍数である場合には、正常ですが、
そうでない場合には、おかしなことになっているようです。


引用:
しかし、2回そのサンプル通りに行ってみたものの、アプリケーションは
うんともすんとも言わず、動作しません。

サンプル通り作りました。
ただ、バインディングのところで少し躓きましたけど。

サンプル

import mx.controls.NumericStepper;

my_nstep.minimum = 1;
my_nstep.maximum = 99;
my_nstep.stepSize = 1;
my_nstep.value = my_nstep.minimum;

function dataIsInvalid(evt) {
	if (evt.property == "text") {
		status.text = evt.messages;
	}
}
function dataIsValid(evt) {
	if (evt.property == "text") {
		status.text = "OK";
	}
}
textLabel.addEventListener("valid", dataIsValid);
textLabel.addEventListener("invalid", dataIsInvalid);

サンプル右側は、my_nstep.stepSize = 2; になっています。
また、OddNumbersOnly.as もflaと同階層に用意してあります。


----------------
質問する際は、回答者に具体的な情報を与えてください。

フラット表示 前のトピック | 次のトピック

題名 投稿者 日時
   NumericStepperでの奇数表示 knagai 2006-8-18 11:29
     Re: NumericStepperでの奇数表示 mayor 2006-8-18 17:07
     Re: NumericStepperでの奇数表示 gonzaemon0 2006-8-18 17:26
       Re: NumericStepperでの奇数表示 knagai 2006-8-19 15:37
       » Re: NumericStepperでの奇数表示 mayor 2006-8-20 7:45
           Re: NumericStepperでの奇数表示 knagai 2006-8-21 8:29
       Re: NumericStepperでの奇数表示 Fumio 2006-8-23 16:39

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops