ボタンを押すと隠したい機能があります。シグナルに複数のコールバックを定義でき、それらは定義されたのと同じ順序で呼び出されることを読みました。そこで、ボタンを押すだけで2つの機能を実行し、そのうちの1つでこのボタンを含むウィンドウを非表示にしたいと思いました。私はこのようにそれをやろうとしました:
g_signal_connect(btn_confirm, "clicked", G_CALLBACK(function_that_does_stuff), NULL);
g_signal_connect(btn_confirm, "clicked", G_CALLBACK(kill_window), add_conn_win);
...
void kill_window ( GtkWidget* wdgt, GtkWidget* win )
{
gtk_widget_hide_all(win);
}
しかし、これは機能していません。ウィンドウはまだそこにあります。誰かがそれを行う方法を教えてもらえますか?