Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
gtk python-添加文本时文本视图是否滚动到底部?_Python_Gtk - Fatal编程技术网

gtk python-添加文本时文本视图是否滚动到底部?

gtk python-添加文本时文本视图是否滚动到底部?,python,gtk,Python,Gtk,我正在用gtk和python制作一个应用程序。 在应用程序中,我有一个滚动窗口,其中有一个文本视图。 当我在textbuffer中使用set_文本时,滚动条会滚动到顶部 我想要的是,当我使用set_文本时,滚动条将滚动到底部 或者换句话说,我想控制滚动条到底部 怎样才能做到呢 谢谢你的帮助 我认为有两种方法 获取垂直和水平滚动窗口的GTK调整,在设置文本后将其值设置为最大值 更复杂的例子可以在gtk3演示应用程序的文本小部件->自动滚动部分找到。有以下几行: /*如果我们想滚动到最后,包括水平滚

我正在用gtk和python制作一个应用程序。 在应用程序中,我有一个滚动窗口,其中有一个文本视图。 当我在textbuffer中使用set_文本时,滚动条会滚动到顶部

我想要的是,当我使用set_文本时,滚动条将滚动到底部

或者换句话说,我想控制滚动条到底部

怎样才能做到呢


谢谢你的帮助

我认为有两种方法

获取垂直和水平滚动窗口的GTK调整,在设置文本后将其值设置为最大值 更复杂的例子可以在gtk3演示应用程序的文本小部件->自动滚动部分找到。有以下几行: /*如果我们想滚动到最后,包括水平滚动, *然后我们只需在物体的末端创建一个重力合适的标记 *缓冲区。它将停留在末尾,除非与一起明确移动 *gtk_文本_缓冲_移动_标记。 */ gtk_text_buffer_create_mark buffer,end,&iter,FALSE;

然后:

/* Get "end" mark. It's located at the end of buffer because
 * of right gravity
 */
mark = gtk_text_buffer_get_mark (buffer, "end");
gtk_text_buffer_get_iter_at_mark (buffer, &iter, mark);

/* and insert some text at its position, the iter will be
 * revalidated after insertion to point to the end of inserted text
 */
// Extra code removed

/* Now scroll the end mark onscreen.
 */
gtk_text_view_scroll_mark_onscreen (textview, mark);