学习GTK+ ——编写helloworld

Posted feipeng8848

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习GTK+ ——编写helloworld相关的知识,希望对你有一定的参考价值。

环境

我使用的是新安装的manjaro 18.1 (kde版),安装新系统后后直接可以开始写代码,不需要安装各种调用的库等。
推荐一个网站,gnome开发者
https://developer.gnome.org/

c语言开发者的起步,安装一些推荐的工具软件
https://developer.gnome.org/gnome-devel-demos/stable/c.html.en

Hello World

中文版手册:
https://www.bookstack.cn/read/GTK-3-Chinese-Reference-Manual/content-basic.md
英文原版:
https://developer.gnome.org/gtk3/stable/

按照手册写一个简单的应用:

#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;
}

编译

gcc `pkg-config --cflags gtk+-3.0` -o example-0 example-0.c `pkg-config --libs gtk+-3.0`

使用IDE

Glade

用来写UI的工具。
技术图片

Anjuta

http://anjuta.org/
https://wiki.archlinux.org/index.php/Anjuta_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)
创建新的app工程后,编译无法通过
工程模板编译出现错误
Error: You must have `intltool‘ installed.
提示缺少intltool,安装上
技术图片
安装后可以编译
技术图片

Builder

安装了还没试过,一直在用Anjuta
技术图片

最后

放一个运行结果
技术图片

以上是关于学习GTK+ ——编写helloworld的主要内容,如果未能解决你的问题,请参考以下文章

mono gtk# - hello world部署到windows

Python GTK+3教程--窗口显得过大,不像示例图片

Java学习2——HelloWorld(编写第一个java程序)

在 Python 中构建 Gtk3 应用程序的正确方法

在 C 中使用 gtk 编写 GUI 程序时如何摆脱控制台?

Java基础学习-HelloWorld案例的编写和运行