Foxtable(狐表)用户栏目专家坐堂 → 自动行高


  共有3601人关注过本帖树形打印复制链接

主题:自动行高

帅哥哟,离线,有人找我吗?
home8225
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:169 积分:1678 威望:0 精华:0 注册:2014/3/27 16:44:00
自动行高  发帖心情 Post By:2017/8/3 15:39:00 [只看该作者]

我用的这个代码

If e.Col.Name = "备注" Then
    e.
Table.AutoSizeRow(e.Row.Index)
End if

效果应该不是这样吧?输多输少都会变成这么高,是因为表格里备注内容最多的就有这么高,不是根据本行的内容来定的?自动后的行高不理想诶。。
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170803153649.png
图片点击可在新窗口打开查看

[此贴子已经被作者于2017/8/3 15:40:04编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/8/3 16:55:00 [只看该作者]

 你想根据哪一列的内容调整行高?或者你改成,afterEdit

 

Dim t As Table = e.Table
Dim  cname As String = e.Col.name
Dim lc As Integer = t.cols(cname).index+1
Dim br As Integer = e.Row.index+t.HeaderRows
t.grid.AutoSizeRows(0, lc, br, lc, 0, 0)


 回到顶部
帅哥哟,离线,有人找我吗?
zhimin
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:132 积分:1232 威望:0 精华:0 注册:2017/3/20 13:41:00
  发帖心情 Post By:2017/10/27 1:24:00 [只看该作者]

如果直接用甜老师这个代码的使用效果是:在同一行中,改动任何一列的数据,行高就会根据该列的行高自动调整。
如果改为:
If e.Col.Name="列名" Then
    Dim t As Table = e.Table
    Dim  cname As String = e.Col.name
    Dim lc As Integer = t.cols(cname).index+1
    Dim br As Integer = e.Row.index+t.HeaderRows
    t.grid.AutoSizeRows(0, lc, br, lc, 0, 0)
End If

则改动该列的数据,该行会自动调整行高,改动其他列行高无变化。
实在是好用。

 回到顶部
帅哥哟,离线,有人找我吗?
puma
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:358 积分:3005 威望:0 精华:0 注册:2023/6/7 16:07:00
  发帖心情 Post By:2024/2/26 12:35:00 [只看该作者]

根据甜老师代码修改,设置指定行高

    Dim t As Table = Tables("表A")
    Dim lc As Integer = t.cols("备注").index+1
    Dim br As Integer = CurrentTable.Current.index+t.HeaderRows
    t.grid.AutoSizeRows(0, lc, br, lc, 0, 0)

 回到顶部