小编zhs*_*shr的帖子

GtkApplication和gtk_init有什么区别?

我现在正在学习在Linux中使用GTK + 3.0和C. 在阅读了一些教程和示例代码之后,我对如何初始化应用程序有一些疑问.

这是我见过的两个代码版本.

#include <gtk/gtk.h>

static void
activate (GtkApplication* app,
          gpointer        user_data)
{
  GtkWidget *window;

  window = gtk_application_window_new (app);
  gtk_window_set_title (GTK_WINDOW (window), "Window");
  gtk_window_set_default_size (GTK_WINDOW (window), 200, 200);
  gtk_widget_show_all (window);
}

int
main (int    argc,
      char **argv)
{
  GtkApplication *app;
  int status;

  app = gtk_application_new ("org.gtk.example", G_APPLICATION_FLAGS_NONE);
  g_signal_connect (app, "activate", G_CALLBACK (activate), NULL);
  status = g_application_run (G_APPLICATION (app), argc, argv);
  g_object_unref (app);

  return status;
}
Run Code Online (Sandbox Code Playgroud)

此代码用于gtk_application_new()初始化GtkApplicationg_application_run()启动它.

这是第二个.

#include <gtk/gtk.h>

int main(int argc,char …
Run Code Online (Sandbox Code Playgroud)

c linux gtk gtk3

6
推荐指数
1
解决办法
2194
查看次数

标签 统计

c ×1

gtk ×1

gtk3 ×1

linux ×1