| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1289 人关注过本帖
标题:求解数字显示问题?
只看楼主 加入收藏
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43182
注 册:2014-5-20
收藏
得分:0 
以下是引用shzhshg在2015-4-25 05:35:50的发言:

直接转换成字符串,怎么写?

若用格式化输出
?TRANSFORM("123456", "@R ¥ # # # # # # # # # # # # #")
可是这里的123456,我想是文本框text1中的任意值,然后在文本框text2中显示成 ¥任意值,且字符之间宽度可以任意调整。这个怎么写?

你的意思应该是:字符间隔以像素为单位。
可以每个字符为一个对象处理,如用Label或TextBox。
或者用API绘制,如用VFP的GDI+ API。
2015-04-25 06:43
shzhshg
Rank: 1
等 级:新手上路
帖 子:147
专家分:0
注 册:2010-5-7
收藏
得分:0 
回复 21楼 吹水佬
图片附件: 游客没有浏览图片的权限,请 登录注册
就是这样text1输入任意数值,都会在text2中显示成这样。
2015-04-25 07:06
muyubo
Rank: 9Rank: 9Rank: 9
来 自:山东莱芜
等 级:蜘蛛侠
威 望:3
帖 子:471
专家分:1017
注 册:2011-3-6
收藏
得分:0 
回复 7楼 shzhshg
?strconv(chrtran(a,".","  "),1) ,这么着了,不行?
这样只是把小数点换成空格了,其他数字间距无法拉开.

就是3楼吹的.
?TRANSFORM(6866.66*100, "9 9 9 9 9 9")


如果小数位数不定,要先将数据进行处理.
如:tran(chrtran(str(6866.66),".",""),"9 9 9 9 9 9 9 9 9 ")

[ 本帖最后由 muyubo 于 2015-4-25 07:36 编辑 ]
2015-04-25 07:20
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43182
注 册:2014-5-20
收藏
得分:0 
以下是引用shzhshg在2015-4-25 07:06:00的发言:

就是这样text1输入任意数值,都会在text2中显示成这样。

去掉小数点再赋给text2可以吧? 但TextBox字符间隔不能任意调整。
2015-04-25 08:16
muyubo
Rank: 9Rank: 9Rank: 9
来 自:山东莱芜
等 级:蜘蛛侠
威 望:3
帖 子:471
专家分:1017
注 册:2011-3-6
收藏
得分:0 
应该好办,还是上面的函数,将“9 9 9 9”做一个可调的变量不就行了吗
2015-04-25 09:22
muyubo
Rank: 9Rank: 9Rank: 9
来 自:山东莱芜
等 级:蜘蛛侠
威 望:3
帖 子:471
专家分:1017
注 册:2011-3-6
收藏
得分:0 
将数字拉开距离,距离可调.
图片附件: 游客没有浏览图片的权限,请 登录注册

y="9"+SPACE(thisform.text3.value)
x=REPLICATE(y,9)+"9"
thisform.text2.value=TRANSFORM(VAL(CHRTRAN(thisform.text1.value,".","")),"&x")

将字符串拉开距离表单.rar (1.79 KB)
2015-04-25 14:30
shzhshg
Rank: 1
等 级:新手上路
帖 子:147
专家分:0
注 册:2010-5-7
收藏
得分:0 
回复 26楼 muyubo
输入上¥后不行.
2015-04-27 22:16
muyubo
Rank: 9Rank: 9Rank: 9
来 自:山东莱芜
等 级:蜘蛛侠
威 望:3
帖 子:471
专家分:1017
注 册:2011-3-6
收藏
得分:0 
那个你不要输,修改一下第三句代码,把这个字符加在前面就行
2015-04-28 08:09
shzhshg
Rank: 1
等 级:新手上路
帖 子:147
专家分:0
注 册:2010-5-7
收藏
得分:0 
回复 28楼 muyubo
第三句修改为
thisform.text2.value=TRANSFORM(VAL(CHRTRAN(thisform.text1.value,".","")),"¥ # # # # # #")
这个后只能显示为
 ¥   2 2 2 2
或¥ 2 2 2 2 2
这种样式,若输入22.22就是 ¥   2 2 2 2
     若输入222.22就是¥ 2 2 2 2 2
¥后面有空格,除非输入的正好是6位数,与"¥ # # # # # #"这个有关系,应该怎么写才不会在¥后出现空格,正好是在输入的数字前面?

 
2015-04-30 08:20
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43182
注 册:2014-5-20
收藏
得分:0 
之前已经有答案了,重复一下:
thisform.text2.value=TRANSFORM(CHRTRAN(thisform.text1.value,".",""),"@R ¥ # # # # # # # # # # # # # # #")
2015-04-30 09:34
快速回复:求解数字显示问题?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018885 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved