| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5164 人关注过本帖
标题:求助,关于label控件与字符位置
只看楼主 加入收藏
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
看下你16楼与18楼的回复是否自相矛盾

坚守VFP最后的阵地
2018-10-09 13:16
xfqzyh
Rank: 1
等 级:新手上路
帖 子:21
专家分:2
注 册:2013-3-2
收藏
得分:0 
回复 21楼 sdta
我表述不清,但与所问有关系吗?
2018-10-09 13:21
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
当然有关系了

坚守VFP最后的阵地
2018-10-09 13:24
厨师王德榜
Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18
等 级:贵宾
威 望:199
帖 子:992
专家分:4966
注 册:2013-2-16
收藏
得分:5 
换一个思路,我以前是 这样做的,根本不必去操心控件之间的位置问题。感觉你有点钻牛角尖了。
图片附件: 游客没有浏览图片的权限,请 登录注册

收到的鲜花
  • xfqzyh2018-10-10 11:09 送鲜花  1朵   附言:也是一种不错的思路。
2018-10-09 14:13
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10608
专家分:43186
注 册:2014-5-20
收藏
得分:0 
以下是引用xfqzyh在2018-10-9 09:18:08的发言:
thisform.label1.caption=sj1+"特定字符"+sj2+"特定字符"+sj3+"特定字符"+sj4&&特定字符与文本框的长度一样
thisform.tkt1.left=特定字符1的left值&&tkt为文本框控件
thisform.tkt2.left=特定字符2的left值
thisform.tkt3.left=特定字符3的left值

这样可否:
按“特定字符”分组:label1、label2、label3、......
label1 + tkt1 + label2 + tkt2 + label3 + tkt3 + ......
2018-10-09 14:33
wcx_cc
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:52
帖 子:371
专家分:1157
注 册:2015-10-2
收藏
得分:0 
可以找到相对位置,看看是否有用。如果有多行,可按自已规定的长度分行,分别查找。

 cap1="自2017年7月1日起,购买方为企业(  )的,索取增值税普通发票时,应向销售方提供(     )纳税人识别号或统一社会信用(         )代码;"
 cap2=CHRTRAN(cap1,' ','$')   && 如果字串中有空格,用一个不常用的符号,比如:'$' 等等,来填充。允许(空格)占字节不只是6个汉字。

 ?ATCC('($$',cap2,1) && 一个汉字至少2个字节,查找  ($$  所在的位置。
 ?ATCC('($$',cap2,2)
 ?ATCC('($$',cap2,3)
2018-10-10 03:41
红星二锅头
Rank: 8Rank: 8
等 级:贵宾
威 望:46
帖 子:491
专家分:754
注 册:2016-8-25
收藏
得分:0 
做一个 INI 或 Mem 文件
保存 A/B/C 的 Left 参数
使用的时候调用它
每台电脑一个
宽屏/窄屏都可定制
比如
lcLeft_A = 300
lcLeft_B = 400
lcLeft_C = 500

团队红星二锅头,队长王猛,领队李冲,顾问杨伟,副队张挺,外联马彪,内勤韩秀,人事顾闯,财务赵魁,后勤周强
2018-10-10 08:47
xfqzyh
Rank: 1
等 级:新手上路
帖 子:21
专家分:2
注 册:2013-3-2
收藏
得分:0 
回复 25楼 吹水佬
假如有三个label,且每个的字符个数相同,如中英字混合或填空个数的不同会出现label的width不同。
2018-10-10 11:13
xfqzyh
Rank: 1
等 级:新手上路
帖 子:21
专家分:2
注 册:2013-3-2
收藏
得分:0 
回复 26楼 wcx_cc
如果一个label的长度固定,有三行的时候,没法准确判断第二行,第三行的特定字符left值
2018-10-10 11:16
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10608
专家分:43186
注 册:2014-5-20
收藏
得分:0 
以下是引用xfqzyh在2018-10-10 11:13:34的发言:

假如有三个label,且每个的字符个数相同,如中英字混合或填空个数的不同会出现label的width不同。

大概意思是这样:
图片附件: 游客没有浏览图片的权限,请 登录注册


CLEAR
CLEAR ALL
s = "自2017年7月1日起,购买方为企业A的,索取增值税普通发票时,应向销售方提供B纳税人识别号"
ALINES(arr, s, "A","B","C")

_screen.AddObject("label1","label")
_screen.label1.caption = arr[1]
_screen.label1.autosize = .T.
_screen.label1.visible = .T.
nleft = _screen.label1.width
_screen.AddObject("text1","textbox")
_screen.text1.Left = nleft
_screen.text1.visible = .T.
nleft = nleft + _screen.text1.width

_screen.AddObject("label2","label")
_screen.label2.caption = arr[2]
_screen.label2.left = nleft
_screen.label2.autosize = .T.
_screen.label2.visible = .T.
nleft = nleft + _screen.label2.width
_screen.AddObject("text2","textbox")
_screen.text2.Left = nleft
_screen.text2.visible = .T.
nleft = nleft + _screen.text2.width

_screen.AddObject("label3","label")
_screen.label3.caption = arr[3]
_screen.label3.left = nleft
_screen.label3.autosize = .T.
_screen.label3.visible = .T.


[此贴子已经被作者于2018-10-10 15:01编辑过]

2018-10-10 14:59
快速回复:求助,关于label控件与字符位置
数据加载中...
 
   



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

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