3 Jan, 2025
A hello world GTK 4 example compiled as C++:
#include <gtk/gtk.h>
static void on_activate(GtkApplication *app, gpointer user_data) {
// Create a window
GtkWidget *window = gtk_application_window_new(app);
gtk_window_set_title(GTK_WINDOW(window), "Simple GTK 4 C++ App");
gtk_window_set_default_size(GTK_WINDOW(window), 800, 600);
// Create an image widget
GtkWidget *image = gtk_image_new_from_file("image.png"); // Make sure "image.jpg" is in the same folder
// Add the image to the window
gtk_window_set_child(GTK_WINDOW(window), image);
// Show the window
gtk_window_present(GTK_WINDOW(window)); // Replaces gtk_widget_show(window)
}
int main(int argc, char **argv) {
// Create GTK Application with the updated flag
GtkApplication *app = gtk_application_new("org.gtk.example", G_APPLICATION_DEFAULT_FLAGS);
g_signal_connect(app, "activate", G_CALLBACK(on_activate), NULL);
int status = g_application_run(G_APPLICATION(app), argc, argv);
g_object_unref(app);
return status;
}
Build with:
mkdir cppgtk
cd cppgtk/
vim main.cpp
g++ -o gtk4_app main.cpp $(pkg-config --cflags --libs gtk4)
./gtk4_app
Be the first to comment.
Copyright James Gardner 1996-2020 All Rights Reserved. Admin.