【发布时间】:2018-05-02 08:29:10
【问题描述】:
我有一个C GTK3 application 使用GtkScrolledWindow,里面有一个GtkGrid。我对所有内容的布局方式感到满意,但 ScrolledWindow 仅在光标位于滚动条上方或使用光标移动滚动条时才通过鼠标滚轮滚动。我正在寻找的行为是鼠标滚轮在使用鼠标滚轮时或至少在光标位于 ScrolledWindow 上方时始终滚动 ScrolledWindow(这是我认为的默认值)。
这里是创建 ScrolledWindow 的地方:
scroll = gtk_scrolled_window_new(NULL, NULL);
gtk_scrolled_window_set_min_content_height(GTK_SCROLLED_WINDOW(scroll), BANNER_HIGHT * 4);
(The location of these lines in the application (GitHub))
我现在想知道是否必须将GtkAdjustment 传递给构造函数,但似乎所做的只是设置滚动边界。我还想知道是否可以在主窗口上连接鼠标滚动事件并尝试在回调中手动触发它,但我也没有办法做到这一点。
【问题讨论】:
-
我想我应该补充一下GTK的版本是3.22。