User interface GTK+;应用
我正在尝试编写一个函数,它将等待用户单击GTK+小部件(类似于绘图区域)中的某个位置并返回鼠标坐标。此函数的行为方式应该是等待收到输入。熟悉Windows API的人可能会发现该函数与该函数有些相似之处,该函数也会等待菜单项被选中User interface GTK+;应用,user-interface,gtk,modal-dialog,event-loop,User Interface,Gtk,Modal Dialog,Event Loop,我正在尝试编写一个函数,它将等待用户单击GTK+小部件(类似于绘图区域)中的某个位置并返回鼠标坐标。此函数的行为方式应该是等待收到输入。熟悉Windows API的人可能会发现该函数与该函数有些相似之处,该函数也会等待菜单项被选中 我在这里尝试做的与使用Windows API运行“辅助消息循环”类似。在GTK+中是如何实现的 您可以调用来“泵送”GTK+事件系统,而不会(FALSE)阻塞应用程序。对于GtkWindow,使用,而不是GtkWidget,可以是模态的。这是有道理的,否则如果没有弹出
我在这里尝试做的与使用Windows API运行“辅助消息循环”类似。在GTK+中是如何实现的 您可以调用
来“泵送”GTK+事件系统,而不会(FALSE
)阻塞应用程序。对于GtkWindow,使用,而不是GtkWidget,可以是模态的。这是有道理的,否则如果没有弹出窗口,用户将不知道与什么交互。再次调用gtk_main,然后在完成任务后退出gtk_main,是否有任何问题?例如,我想编写一个函数,提示用户在客户端区域内选择一个点。我为按钮按下事件设置了一个信号处理程序,并调用gtk_main。在处理程序中,一旦选择了该点,我将该点保存在某个位置,并调用gtk_main_quit,从而使最里面的gtk_main返回。这是否可取?在这种情况下,我不使用模态窗口。我只想要一个行为正常的函数。该函数提示用户选择一个点,并且在选择该点之前不会返回。