/ comma which gives 999,999,999.99. But, from Visual FoxPro this setup is
/ not represented. What setup in Visual FoxPro can I change to have this
/ setup or what to do to benefit of the Windows setup?
Seems to me that not using the Windows setup value was a system decision
on behalf of compatibility with the older versions of Fox, which had
nothing like a default input mask. Seems like the only way to circumvent
this behavior is to get this input mask string from some API function
(must be somewhere; maybe it's still somewhere in win.ini or the
registry), and to subclass the TextBox in order to have .activate() (or
whatever is early enough) like this:
If type(this.value)="N" and empty(this.inputmask)
this.inputmask=GetSystemDefaultNumericInputMask()
endif
The real function name is yet to be dug out, and I think "N" is not
enough, should be Inlist(this.value, "N", "Y"...) for those other new
numeric types. Still, this would work in forms only.
BTW, I've noticed a nasty bug when I have a numeric field with decimals:
No matter how I type, when I press Enter, Tab or decimal point (I use
European decimal comma and separator point, but it works the same the
other way around) - the digits present before I started typing my digits
do not get lost. Like, the field contains " 0.000", then I type
1, it becomes "1 0.000", and then after tab, enter or period I get
" 10.000". Seems it'l be like Clipper programmers, who every so often
messed around with getsys.prg - it'll take some extensive use of
keypress event to fix this.
Anyone with the same bug? I use VFP5.0, W95 (OSR1) PanEuropean.