文本框的JavaFX与货币价值动态遮罩

问题描述 投票:1回答:1

我试图创建一个文本框的Java FX的金融应用。我想这texfield遵循同样的模式在ATM机中发现的数字字段。例如:在ATM中的值字段中的初始值是“0.00”。当他想要抽取,例如价值,打字从右到左,替换前导零启动用户类型...例如,我想收回$ 99.90(用户键入9个键三次,0键一次)和它发生:

0.09 -> 0.99 -> 9.99 -> 99.90

任何人都有一个想法如何创建这个面具?

我已经看到了类似主题的几个答案,但我无法适应任何人到我的项目(也许是因为我在Java的初学者,我还在学习有关String类,文本框方法等)

预先感谢您的关注!

P.S:我不是英语流利还,所以如果在这个消息中的任何语法错误,这是因为谷歌翻译的我用来写

java user-interface javafx textfield currency
1个回答
0
投票

的基本算法是下述(伪代码):

float value = 0; // The initial value is 0

// On Input
void input( int digit ){ // This is invoked when the user presses a digit on the keyboard
    // You multiply the current value by ten and add the new digit
    value *= 10;
    value += digit * 0.01;
}

您将获得的9990输入下列步骤:

1: (0.00 * 10) + (9 * 0.01) = 0.09
2: (0.09 * 10) + (9 * 0.01) = 0.99
3: (0.99 * 10) + (9 * 0.01) = 9.99
4: (9.99 * 10) + (0 * 0.01) = 99.90
© www.soinside.com 2019 - 2024. All rights reserved.