GTK3:我想制作一个能够单独操作主要功能的程序

时间:2018-10-26 05:25:17

标签: c user-interface infinite-loop gtk3 glade

我编写了一个程序,能够使用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();时,将根据此代码以无限循环形式输入。 因此,从传感器到网络线程根本不起作用。

我真正想要的是处理用户界面,就像其他没有进入无限循环的线程一样。因此,只有在发生按钮事件时,才处理与之对应的功能。

0 个答案:

没有答案