搜索
编程论坛
→
数据库技术
→
『 VFP论坛 』
→ 请教一个细节问题
标题:
请教一个细节问题
只看楼主
xvfp
等 级:
论坛游民
帖 子:34
专家分:24
注 册:2011-4-13
结帖率:
100%
楼主
已结贴
√
问题点数:20 回复次数:8
请教一个细节问题
一个表单用于数据收入
表单上有n个输入框
其中一个text框是输入金额的,值的范围是0.00-999.99
我的问题是:
有的用户喜欢用鼠标点到此控件,即:人为把focus转到此控件,然后用键盘输入数字。由于鼠标点击的位置偏右,还未输完数字,光标已到达最后位置,使数据不正确。比如准备输入12,仅输入了0.12,因为一开始,光标就处在第一个小数位上。
应该允许用户这样使用,但我必须在此控件获得焦点时,把光标指向最左边的输入位置。
谁的办法最简单?
搜索更多相关主题的帖子:
用户
2011-04-24 05:20
muyubo
来 自:山东莱芜
等 级:
蜘蛛侠
威 望:
3
帖 子:471
专家分:1017
注 册:2011-3-6
第
2
楼
得分:1
1.不要设定文本框数据源,光标就一直在左侧。
2.将文本框的数据用 变量名=thisform.text1.value 获取即可。
2011-04-24 07:59
hu9jj
来 自:红土地
等 级:
贵宾
威 望:
396
帖 子:11713
专家分:43267
注 册:2006-5-13
第
3
楼
得分:1
设置控件属性selectoentry=.t.试试。
活到老,学到老! http://www. E-mail:hu-jj@
2011-04-24 09:42
qjbzjp
来 自:尧的故乡
等 级:
贵宾
威 望:
48
帖 子:1914
专家分:4397
注 册:2007-3-14
第
4
楼
得分:4
设置文本框的属性:
SelectOnEntry=.T.
文本框的Click事件:
this.SetFocus
相互学习,互相交流,共同提高。
2011-04-24 10:05
muyubo
来 自:山东莱芜
等 级:
蜘蛛侠
威 望:
3
帖 子:471
专家分:1017
注 册:2011-3-6
第
5
楼
得分:4
在这个控件的gotlocus事件中加入以下代码
this.SelStart=0
在这个控件的click事件中加入以下代码
this.selstart=0
2011-04-24 11:20
qjbzjp
来 自:尧的故乡
等 级:
贵宾
威 望:
48
帖 子:1914
专家分:4397
注 册:2007-3-14
第
6
楼
得分:10
在文本框的Click事件中加入:
DODEFAULT()
this.SelStart = 0
可以得到5楼同样效果。
相互学习,互相交流,共同提高。
2011-04-24 15:35
muyubo
来 自:山东莱芜
等 级:
蜘蛛侠
威 望:
3
帖 子:471
专家分:1017
注 册:2011-3-6
第
7
楼
得分:0
学习
2011-04-24 16:21
xvfp
等 级:
论坛游民
帖 子:34
专家分:24
注 册:2011-4-13
第
8
楼
得分:0
实验结果如下:
2楼应该可行,但“变量名=thisform.text1.value”不便于常用。因为此控件有继承性,已被较好地封装,最好不动。
3楼已沾边,但不完整。
4楼可行。
5楼可行。
6楼可行。
我博采众长,并简化为:在文本框的Click事件中加入:
if this.value=0
this.SelStart = 0 && 初次输入时光标放最左边,如是修改以前输入的值,则可以任意指定位置
endif
(由于click事件无继承,所以未用DODEFAULT())
因此,6楼最佳,不愧为斑竹。
[
本帖最后由 xvfp 于 2011-4-26 11:14 编辑
]
2011-04-26 10:27
muyubo
来 自:山东莱芜
等 级:
蜘蛛侠
威 望:
3
帖 子:471
专家分:1017
注 册:2011-3-6
第
9
楼
得分:0
有心人,学习
2011-04-26 12:27
9
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-337728-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.555649 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved