I didn't look at the kilofox example, but my idea would be to make it a textual textbox, use an input mask with the decimal point and two places for cents (or similar small currency portion) and let programmmatichcaange, interractivechange, and gotfocus call the same user defined method that sets the selstart to the length of the value, so it's forced to the right. To get the numeric value you just use VAL(This.Value) in the valid event, so ensure the inputmask is only allowing entry of digits and has a decimal point the same as SET('POINT') for VAL() to work correct. An inputmask allowing entry up to 999,999.99 would be "###,###,##"
I leave the coding to you, but I think you already have used the kilofox textbox class Tom pointed out.
I'd also try whether the native textbox already behaves good when you set the inital value to a currency type by setting it to $0.00, which might also do what the input mask would do.
Chriss