gpt4 book ai didi

python - 当我包裹它时,Gtk.Cell 渲染器文本变得非常高

转载 作者:太空宇宙 更新时间:2023-11-03 18:54:32 24 4
gpt4 key购买 nike

我试图允许将文本换行在 Gtk.CellRendererText 中,但我有一个小问题:

huge rows!

这些行非常大。

我更改的唯一代码是:

    cell = Gtk.CellRendererText(markup=0)
cell.set_property("wrap_mode", Pango.WrapMode.WORD)
cell.set_property("wrap_width", 20)

这使得它换行,但它似乎也使这个视觉问题出现

最佳答案

我似乎记得很久以前在 Planet gnome 的博客上读到过一些关于此的内容。据我所知,这与高度宽度绘图模型有关,这意味着当启用换行时,GtkLabel 等要求足够的高度来回流换行宽度的文本,即使有更多可用的水平空间,从而留下空载宽度较宽时的空间。有一个修复程序,但恐怕我现在不记得了,稍后我会尝试找到原始帖子。

我已经尝试过,但找不到该帖子,但是阅读了更多内容后,我很确定这就是问题所在。在 https://bugs.launchpad.net/ubuntu/+source/gtk+3.0/+bug/825173 有一些与 GtkTable 做类似事情相关的讨论。我有一种不好的感觉,我记不清了,解决办法可能是关闭包装。我想当列宽发生变化时可能会收到通知,并使换行宽度成为该值的正确宽度,但这有点痛苦。

如果您可以接受固定宽度的列,请将列的 expand 属性设置为 False 并将 fixed-width属性设置为 True,然后设置 wrap-widthwidth-charsmax-width-chars 属性渲染器全部设置为相同的值,然后文本换行,没有任何额外的空间。

关于python - 当我包裹它时,Gtk.Cell 渲染器文本变得非常高,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17597043/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com