You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Streamlit AgGrid中实现单元格文本换行与行高自适应?

在Streamlit的AgGrid中实现单元格换行与行高自适应

要实现类似st.table的单元格文本换行、行高自适应效果,直接通过配置AgGrid的gridOptions就能搞定,具体操作如下:

  • 核心配置逻辑:在gridOptions里设置defaultColDef,将wrapText设为True,autoHeight设为True。这两个参数配合后,单元格会自动换行,行高也会根据内容高度自适应调整。

  • 完整代码示例:

import streamlit as st
from st_aggrid import AgGrid, GridOptionsBuilder
import pandas as pd

# 构造带长文本的测试数据集
data = {
    "标题": ["短标题", "超长文本标题示例:这是一段非常长的文本内容,用来测试AgGrid的单元格换行效果,看看能不能自动调整行高显示全部内容而不截断"],
    "内容": ["普通内容", "这里也是一段很长的内容,需要在单元格里自动换行展示,不需要手动调整行高就能完整看到所有文字信息"]
}
df = pd.DataFrame(data)

# 构建Grid配置项
gb = GridOptionsBuilder.from_dataframe(df)
gb.configure_default_column(wrapText=True, autoHeight=True)
grid_options = gb.build()

# 渲染AgGrid组件
AgGrid(df, gridOptions=grid_options)
  • 针对特定列的单独配置:如果只需要给某几列设置换行和自适应行高,可以用configure_column指定列名单独调整,比如:
gb.configure_column("内容", wrapText=True, autoHeight=True)

这样配置完成后,AgGrid的单元格就会像st.table一样自动处理长文本换行,行高也会跟随内容自动适配。

内容的提问来源于stack exchange,提问作者Miguel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 04:50:34