gpt4 book ai didi

c - GtkScrolledWindow + WebkitWebView 滚动

转载 作者:太空宇宙 更新时间:2023-11-04 03:07:16 25 4
gpt4 key购买 nike

嘿,我正在尝试制作一个使用 webkit 来显示其消息的 GTK IRC 客户端。

Webview 在 ScrolledWindow 中,我希望滚动窗口每次变得太大时滚动到底部。

我试过在添加消息时更改滚动窗口的 vadjustment 值,但这似乎根本不起作用。由于某种原因,它一直将其重置为 0。

有谁知道我该如何解决这个问题?

干杯!

最佳答案

我遇到了同样的问题。我认为这个问题是因为 adjustment-changedadjustment-value-changed 信号并不总是在窗口完全完成重绘后发送。这会导致调整值为零,因为此时页面没有内容。解决方案是连接到 size-allocate信号代替。这仅在窗口完全调整大小后调用,并且具有在用户手动滚动窗口时不被调用的额外优势。

这是一个使用 python 绑定(bind)的示例:

def autoscroll_view(view, allocation):
#parent is the gtk.ScrolledWindow that needs updating
parent = view.get_parent()
adj = parent.get_vadjustment()
adj.value = adj.upper - adj.page_size
parent.set_vadjustment(adj)


view = webkit.WebView()

window = gtk.ScrolledWindow()
window.add(view)

view.connect('size-allocate', autoscroll_view)

关于c - GtkScrolledWindow + WebkitWebView 滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3535568/

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