机房收费系统 ——【查询显示窗体 & MSHFlexGrid控件自动调整行高列宽】

小编在优化时遇到了一个界面问题,非常影响用户使用的体验度和满意度,重要至极——所有使用MSHFlexGrid控件显示查询内容时都会出现内容显示不全,如查询到的日期显示为:19-04-05,即内容没有完全显示为2019-04-05正确的格式。

遇到问题有需求就要解决问题啦^ _ ^!查询博客,站在巨人的肩膀上果然让我学习收获的更快,前有师哥解决过此类问题,我们先模仿,再吸收变为自己的知识吧!

解决方法:

首先在模块里面定义一个过程,具体方法如下:

Public Sub AdjustColWidth(frmCur As Form, gridCur As Object, Optional bNullRow As Boolean = True, Optional dblIncWidth As Double = 0)

	'功能:
	'    自动调整Grid各列列宽为最合适的宽度
	'参数:
		'..................[frmCur] 为当前工作窗体
		'..................[gridCur]为当前要调整的Grid

'定义参数:
Dim i, j As Integer
Dim dblwidth As Double
    With gridCur
        For i = 0 To .Cols - 1
            dblwidth = 0
            If .ColWidth(i) <> 0 Then
                For j = 0 To .Rows - 1
                    If frmCur.TextWidth(.TextMatrix(j, i)) > dbwidth Then
                        dblwidth = frmCur.TextWidth(.TextMatrix(j, i))
                    End If
                Next
                    .ColWidth(i) = dblwidth + dblIncWidth + 1700   '此处1700数值可以根据自己表格界面的情况更改
                End If
            Next
        End With
    
End Sub

解释说明:以上模块实现MSHFlexGrid的单元格根据内容自动调整行高列宽。

调用方式:
AdjustColWidth 窗体名,MSHFlexGrid(控件名称)

Private Sub Form_Load()  '如:收取金额窗体调用
	AdjustColWidth frmaskcollectcash, MyFlexGrid
End Sub
调用的函数放在公共模块中,在每个窗体调用函数自动调整宽度的过程,需要注意窗体名称和窗体中的MSHFlexGrid控件的名称,不要在A窗体调用出B窗体的控件导致出现问题!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 12
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ariel_欢

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值