注册 登录
编程论坛 VFP论坛

中年新手简单问题:怎样能让grid中column的列宽随内容自动调整?

DBFuser 发布于 2022-12-16 10:44, 1751 次点击
这是根据表单向导做的一对多表单

只有本站会员才能查看附件,请 登录


想让它显示成下面这样,列宽根据字数多少来自动变化
只有本站会员才能查看附件,请 登录


这是属性,宽度一开始设了一下,现在该怎么调整?
只有本站会员才能查看附件,请 登录



中年新手学做表单,烦请指点,谢谢
12 回复
#2
吹水佬2022-12-16 11:36
grid有个自适应列宽的方法
#3
吹水佬2022-12-16 11:38
属性窗口,鼠标移到两列之间分隔带可以左右拉动
#4
jyxfp2022-12-16 11:51
Thisform.Grid1.AutoFit()
Thisform.Grid1.Column1.AutoFit()
#5
DBFuser2022-12-16 15:08
以下是引用jyxfp在2022-12-16 11:51:27的发言:

Thisform.Grid1.AutoFit()
Thisform.Grid1.Column1.AutoFit()


不好意思,新手小白,这个代码应该放在什么地方?
#6
DBFuser2022-12-16 15:11
以下是引用吹水佬在2022-12-16 11:36:48的发言:

grid有个自适应列宽的方法



只有本站会员才能查看附件,请 登录


已经选择允许自动调整了
#7
吹水佬2022-12-16 15:22
回复 6楼 DBFuser
这个不是自动的,是交互作用的,看VFP帮助嘛
只有本站会员才能查看附件,请 登录

#8
吹水佬2022-12-16 15:25
以下是引用DBFuser在2022-12-16 15:08:41的发言:



不好意思,新手小白,这个代码应该放在什么地方?

想在什么时候要显示效果就调用此方法,注意的是调整的列宽是以当前数据参考,数据变了就要重新调用此方法调整。
#9
laowan0012022-12-16 15:31
* 建议放在 thisform.grid1.refresh方法中
thisform.grid1.autofit

* 当为grid1加载了数据后调用refresh

[此贴子已经被作者于2022-12-16 15:41编辑过]

#10
DBFuser2022-12-16 15:34
以下是引用吹水佬在2022-12-16 15:25:24的发言:


想在什么时候要显示效果就调用此方法,注意的是调整的列宽是以当前数据参考,数据变了就要重新调用此方法调整。



不好意思,我是刚学着用表单的,
是在点击查询后显示的,应该怎么调用呀
#11
laowan0012022-12-16 15:42
建议:在表单中放一个按钮,按钮的click事件中写下面的句子试试
thisform.grid1.autofit

如果看不出效果,可以先手动调整一下grid的某列宽度,然后再点按钮
#12
DBFuser2022-12-16 22:17
以下是引用laowan001在2022-12-16 15:31:54的发言:

* 建议放在 thisform.grid1.refresh方法中
thisform.grid1.autofit

* 当为grid1加载了数据后调用refresh


非常感谢,明白了,试验成功!!


#13
aqyejun2022-12-27 15:10
vfp6好像不行
1