我编写了一个程序,能够使用C语言管理传感器和执行器。 而且,现在我一直在尝试为该程序创建用户界面。
所以,我已经像下面的伪代码一样编写了程序。
void on_main_window_destroy()
{
gtk_main_quit();
}
int create_main_window()
{
gtk_widget * main_window;
....
gtk_widget_show_all(main_window);
}
int get_gtk_user_interface();
{
if(login == false)
create_new_login_dialog();
if(login == true)
create_main_window();
return 0;
}
main(){
get_gtk_user_interface();
while(true){
run_sensor_thread();
run_actuator_thread();
run_network_thread();
....
while(gtk_events_pending())
gtk_main_iteration();
}
}
但是,当它进入create_main_windows();
时,将根据此代码以无限循环形式输入。
因此,从传感器到网络线程根本不起作用。
我真正想要的是处理用户界面,就像其他没有进入无限循环的线程一样。因此,只有在发生按钮事件时,才处理与之对应的功能。