Gtk Properties(1)
Gtk Properties(2)
Gtk Properties(3)
Gtk Properties(4)
#include <gtk/gtk.h>
static GtkWidget *createWindow(guint w, guint h, gchar *title);
int main(int argc, char *argv[])
{
gtk_init(&argc, &argv);
GtkWidget *window;
GtkWidget *grid;
GtkWidget *button1;
GtkWidget *button2;
/// *** window
window = createWindow(200, 200, "Child Properties");
/// *** grid
grid = gtk_grid_new();
gtk_container_add(GTK_CONTAINER(window), grid);
/// ***button
button1 = gtk_button_new_with_label("Button 1");
button2 = gtk_button_new_with_label("Button 2");
/// *** attach
gtk_grid_attach(GTK_GRID(grid), button1, 0, 0, 1, 1);
gtk_grid_attach(GTK_GRID(grid), button2, 0, 1, 1, 1);
/// *** set child properties
gtk_container_child_set(GTK_CONTAINER(grid), button2,
"left-attach", 1,
"top-attach", 1,
"width", 1,
"height", 1,
NULL);
gtk_widget_show_all(window);
gtk_main();
}
GtkWidget *createWindow(guint w, guint h, gchar *title)
{
GtkWidget *window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_title(GTK_WINDOW(window), title);
gtk_widget_set_size_request(window, w, h);
gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);
gtk_container_set_border_width(GTK_CONTAINER(window), 50);
g_signal_connect_swapped(window, "destroy", G_CALLBACK(gtk_main_quit), window);
return window;
}