代码之家  ›  专栏  ›  技术社区  ›  Brian Hooper

GTK微调器未出现

  •  0
  • Brian Hooper  · 技术社区  · 15 年前

    我正在尝试让一个gtk::spinner对象在计算过程中显示,但似乎什么都没有发生。代码片段看起来像…

    {
        Gtk::Spinner spinner;
        spinner.start (); 
        // do some work...
        spinner.stop ();
    }
    

    我本以为旋转器需要知道它出现在哪个对话中,但我看不到任何将它输入物体的方法。有人知道我在哪里能找到一个有效的例子吗?我可以在很多地方找到GTK文档,但这没什么帮助。

    2 回复  |  直到 15 年前
        1
  •  1
  •   ptomato    15 年前

    要将鼠标光标更改为“忙碌”,可以执行以下操作:

    Glib::RefPtr<Gdk::Window> window = dialog.get_window();
    if(window) {
        window->set_cursor(Gdk::Cursor(Gdk::WATCH));
        Gdk::flush();
    }
    

    要把它改回去,一定要

    window->set_cursor();
    

    相反。

    免责声明:我通常和GTK一起工作,在C语言中,我已经翻译了这个…

        2
  •  2
  •   el.pescado - нет войне    15 年前

    你打电话来了吗?

    spinner.show ();
    

    把它添加到某个窗口?

    此外,您的计算可能会阻塞UI,因此它不会更新。呼叫

    while (Gtk::Main::events_pending ())
        Gtk::Main::iteration ();
    

    偶尔一次。