【问题标题】:GTK Scrolled Window - Keep Scroll Bar at bottomGTK 滚动窗口 - 将滚动条保持在底部
【发布时间】:2010-04-14 20:48:09
【问题描述】:

我有一个使用 ScrolledWindow 的 GTK/C++ 程序。我一直在滚动窗口内的列表中添加数据,并且我想将注意力集中在最新的项目上。 但我也希望允许用户滚动数据以选择旧项目。 有没有办法做到这一点?我到处找,但什么都找不到。

【问题讨论】:

    标签: c++ gtk scrolledwindow


    【解决方案1】:

    我不太清楚您的问题是什么意思,但我认为您的意思是:当您将项目添加到列表时,它们会添加到列表当前可见部分的下方。因此,如果您开始查看列表的底部,然后添加很多项目,您最终会查看列表的中间部分。您想要的是每次添加项目时滚动到列表底部。

    如果正确,那么每次添加项目时只需将窗口滚动到底部:

    Gtk::Adjustment *adj = scrolled_window.get_vadjustment();
    adj->set_value(adj->get_upper());
    while(Gtk::Main::events_pending())
        Gtk::Main::iteration();
    

    【讨论】:

      【解决方案2】:

      我遇到了同样的问题(在 GTKmm 上开发)

      @ptomato 建议

      但是在设置之前应该先出现while循环 vadjustment 的值。 (为我工作)

         while(Gtk::Main::events_pending())
               Gtk::Main::iteration();
         Gtk::Adjustment *adj =scrolled_window.get_vadjustment();
         adj->set_value(adj->get_upper());
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-09-01
        • 1970-01-01
        • 1970-01-01
        • 2015-08-12
        • 2014-12-12
        • 2023-04-06
        • 1970-01-01
        相关资源
        最近更新 更多