• ベストアンサー

テキストフィールドの小数点表示について

テキストフィールドに表示される数値の小数点以下をさせない方法はありますか? Math.floorなどを使うと問題があるのでテキストフィールドの表示だけを整数にしたいのです。 環境はFlashMXを使っています。

  • Flash
  • 回答数3
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
  • umioyo
  • ベストアンサー率66% (35/53)
回答No.1

切捨て、切り上げもダメであれば、Stringに変換して、文字に「.」が含まれていたらそこから削除、みたいな処理。 その次の桁を見て5以上だったら整数部分をNumに変換して1を足す、4以下だったらそのまま、みたいな処理を足せば完璧かと。

alice047
質問者

お礼

すみません、文字に.が含まれていたらそこから削除するというコードが検索してみてもよくわかりませんでした。 具体的にどのようなコードを使えばいいのでしょうか? 質問ばかりで申し訳ないです。

その他の回答 (2)

  • umioyo
  • ベストアンサー率66% (35/53)
回答No.3

あ、ごめんなさい、これだと小数点がない場合はresが文字列で返ってきちゃいますね。 必ず小数点が含まれるのであればいいのですが。。。

  • umioyo
  • ベストアンサー率66% (35/53)
回答No.2

var num=31.89999; //元となる小数点を含む数 var j=0; //小数点を含んだか含んでいないかのフラグ用 var res=""; //結果格納用変数 num=String(num); //数字を文字列に変換。そのままだとlengthとかが使えないため num_len=num.length; //何文字あるか数えてnum_lenに格納 for(i=0; i<num_len;i++){ //一文字ずつ調べるためのfor文 if(num.charAt(i)=="."){ //文字に小数点を含んでいる場合 j++; //変数jに加算 }else{ //文字に小数点が含まれていなかった場合 if(j){ //もし変数jが加算されていたあと(小数点1桁目)ならば if(Number(num.charAt(i)) > 4){ //その数が5以上の場合は res=Number(res)+1; //結果を数値に変換して1を足す } break; //小数点2桁以降も処理されてしまうので、小数点以下の処理は1桁目で終了 }else{ //もし小数点がまだ出てきていないのであれば、 res=res+num.charAt(i); //上の桁から順に文字列として足していく } } } trace(res);

参考URL:
http://www.game3rd.com/flash/action/string.htm
alice047
質問者

お礼

ありがとうございます。 これを応用して作品製作にいかしたいと思います。

関連するQ&A

  • 【FLASH】小数点以下の「0」も表示したい。(1 → 1.0 など)

    FLASH8(Win-XP)使用者です。 残り時間の秒数などを小数点以下第1位まで表示させたい場合、通常のやり方、 hyoji.text = Math.floor(jikan*10)/10; などですと、小数点以下が0の場合は0が表示されません。どうすれば1.0などと表示されるのでしょうか。 お詳しい方、よろしくお願いいたします。

    • ベストアンサー
    • Flash
  • アクセス2003で、数値のプロパティで、小数点以下の表示ができない

    アクセス2003を使っているのですが、テーブル上やフォーム上で、数値書式のフィールド上で、小数点以下の表示ができません。 プロパティで、書式を数値に設定して、小数点表示の設定を「2」に設定したのですが、どうしても、小数点が表示されずに、四捨五入して、整数表示してしまいます。 どこの設定がおかしいのでしょうか? どうやったら、小数点表示できますでしょうか?

  • レポートのテキストボックスでこんなのを表示したいんですが

    Access97にてレポートを作成しています。 レポート内のテキストボックスに単純に数値を表示したいのですが、 以下の要件を満たしたいんです。 ・1000以上の数値ならカンマで区切る ・小数点以下の数値がない場合は整数部分だけ表示 ・小数点以下の数値がある場合は小数点以下の数字を桁に応じて表示 例 「945」→「945」 「1283」→「1,283」 「10.42」→「10.42」 「8.2」→「8.2」 テキストボックスのプロパティ「書式」を「数値」、 かつ「小数点以下桁数」を「自動」にしても、なぜか全ての数値が 小数点以下2桁まで表示されてしまいます。 お知恵をおかしください。 よろしくお願いします。

  • javascriptで四捨五入して小数点第1位表示で計算値が10になった場合、10.0と表示したい0表示にする方法

    利率計算を作成していて、問題が発生したため、質問します。 以下ような計算式で、四捨五入し、小数点第1位表示まで 出来たのですが、計算値が整数になってしまった場合、 10と表示されます。これを何とか、整数値になった場合、 10.0と表示させたいのですが、良い方法があれば、 ご伝授いただければと思います。 ritu = Math.round( ritu * 1000 ) / 10; //小数点第1位表示四捨五入して代入

  • Excelで数値の小数点を揃える方法は?

    Excelの数値データで、小数点以下1桁とか2桁とかの表示にした時、整数の小数点以下を表示しない方法はありますか?しかも、小数点を中心に桁を揃えて。   12.2  300   20.4 こんな感じです。

  • Excelで小数点の位置を揃えたい

    Excelで、小数点以下の桁数が何種類もあって、それをタテ1列に表示したとき、小数点の位置を揃えたいと思い、セル書式を 0.?? としてみました。 ____2. ___12.5 __152.26 結果は上記のようになります。アンダーバーは無視してご覧下さい。 小数点以下に数値がある場合はよいのですが、整数の場合も小数点が表示されるので不都合です。 各セル共通の書式で、整数の場合に小数点を表示しないようにするには、どうしたらよいのでしょうか、教えて下さい。よろしくお願いします。

  • Accessエクスポートで不要の小数点以下が出る

    クエリをテキストエクスポート設定をしたのですが、数字フィールド(整数)のエクスポート結果が、小数点第2位まで付いてしまいます。クエリのプロパティで書式に0を設定したり、テーブルに変換して実行しても結果は同じです。 OSは、Windows7、Accessは2013です。 例 1,○○ 2,○○    とクエリではなっていますが、csvにエクスポートすると、 1.00,○○ 2.00,○○   というように、小数点以下が不要です。 テキストエクスポート定義には、小数点を設定する項目がなく、他の方法でできないものか悩んでいます。 小数点以下を書き出さない方法をご存知でしたら教えてください。

  • Excelの小数点以下表示・非表示の方法について

    Excel2000において、小数点以下の表示方法について教えてください。 条件は以下の通りです。 (1)小数点以下が存在するときは、小数点以下第2位まで表示する。 ※小数点以下第3位の処理は、切捨てでも四捨五入でも何でも構いません。 (2)小数点以下が存在しないとき(整数のとき)は、少数点以下は非表示。※小数点も非表示に。 ・・・というものです。 ご存知の方がいらっしゃいましたら、何卒ご協力くださいますようお願いします!

  • .NET 小数点以下の切り捨てについて

    小数点以下を切り捨てにしたいのですが 割り切れる場合だけ数値が思うようになりません 3850/1.1は3500になるはずですが以下のコードではre=3499になります double a = 3850; double b = 1.1; String^ re = Math::Floor(a/b).ToString(); 結果を3500にするにはどのような切り捨て処理をすれば良いのでしょうか?

  • 小数点以下切捨てした上での足し算

    書式設定で小数点以下の桁数0にし、整数での表示にさせています。 しかしそれらを足し算すると結局正確に小数点以下の数値まで 足されてしまいます。そうしないためには?

専門家に質問してみよう