tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
[ツリー表示へ]  [ワード検索]  [Home]

タイトル テキストボックスの3桁毎のカンマ表示
投稿日: 2008/07/02(Wed) 14:27
投稿者ゆき

VB6,SP5、WindowsXPの環境です。
それ以外に必要でしたら追記しますのでレスください。

テキストボックスに金額を入れると(例えば「3000000」)をいれると
3,000,000にしたくて、

Private Sub Text1_Change()
    Form1.Text1.Text = Format(Form1.Text1.Text, "#,##0")
End Sub
(Form1.Text1のAlgnmentは右揃え、MaxLengthは0です。)

と、した分けですが、どう言うことか、「3000」を打った時点で
「|3,000」となり、次の桁を打っても入力されないのです。
(↑で、3の前にある「|」はカーソルの位置です。)
プロパティーで何か設定するヶ所があったり、
プログラムそのものが悪いのでしょうか?

具体的に操作を下に示します。
("「」"をテキストボックスに見立ててください
"|"はカーソルに見立ててください)

@初期値
「      |」
A"3"を入力
「     3|」
B十の位の"0"を入力
「    30|」
C百の位の"0"を入力
「   300|」
D千の位の"0"を入力
「 |3,000」
E万の位の"0"を入力
「 |3,000」←以降"0"を入力しても同じ

但し、万の位以降"0"以外の数字ならばOKとなります。
どうも、千の位を入力後にカーソルが一番先頭に来るのが
問題みたいです。
連続して「3000000」)をいれると3,000,000となる様な対策はあるのでしょか?

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。