PRUEBA GTK
unknown
c_cpp
4 years ago
2.7 kB
9
Indexable
#include <gtk/gtk.h>
void on_click1_clicked ( GtkButton* btn1, gpointer label1 ) {
gtk_label_set_label ( label1, "Codigo Cristo" );
}
void on_click2_clicked ( GtkButton* btn1, gpointer label2 ) {
gtk_label_set_label ( label2, "Bienvenidos" );
}
void on_click4_clicked ( GtkButton* btn1, gpointer label1 , gpointer label2 ) {
gtk_label_set_label ( label1, "Texto box 1" );
gtk_label_set_label ( label2, "Texto box 2" );
}
static void activate (GtkApplication* app, gpointer user_data) {
GtkWidget *window;
GtkWidget *boxprincial;
GtkWidget *box1;
GtkWidget *box2;
GtkWidget *label1;
GtkWidget *label2;
GtkWidget *btn1;
GtkWidget *btn2;
GtkWidget *btn3;
GtkWidget *btn4;
window = gtk_application_window_new (app);
boxprincial = gtk_box_new (GTK_ORIENTATION_VERTICAL, 25);
box1 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
box2 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
label1 = gtk_label_new("Texto box 1");
label2 = gtk_label_new("Texto box 2");
btn1 = gtk_button_new_with_label("Cambia texto 1");
btn2 = gtk_button_new_with_label("Cambia texto 2");
btn3 = gtk_button_new_with_label("Cerrar");
btn4 = gtk_button_new_with_label("Reiniciar texto");
gtk_window_set_title ( GTK_WINDOW(window) , "Mi Programa en GTK" );
gtk_window_set_default_size ( GTK_WINDOW (window), 500, 300 );
gtk_window_set_position ( GTK_WINDOW (window), GTK_WIN_POS_CENTER );
gtk_container_add(GTK_CONTAINER(window), boxprincial );
gtk_box_pack_start ( GTK_BOX (boxprincial), box1,TRUE,FALSE,0);
gtk_box_pack_start ( GTK_BOX (boxprincial), box2,TRUE,FALSE,0);
gtk_box_pack_start ( GTK_BOX (box1), label1,TRUE,FALSE,0);
gtk_box_pack_start ( GTK_BOX (box1), label2,TRUE,FALSE,0);
gtk_box_pack_start ( GTK_BOX (box2), btn1,TRUE,TRUE,0);
gtk_box_pack_start ( GTK_BOX (box2), btn2,TRUE,TRUE,0);
gtk_box_pack_start ( GTK_BOX (box2), btn3,TRUE,TRUE,0);
gtk_box_pack_start ( GTK_BOX (box2), btn4,TRUE,TRUE,0);
gtk_box_reorder_child ( GTK_BOX (box2), btn4, 2);
g_signal_connect (btn1, "clicked", G_CALLBACK (on_click1_clicked), label1);
g_signal_connect (btn2, "clicked", G_CALLBACK (on_click2_clicked), label2);
g_signal_connect (btn4, "clicked", G_CALLBACK (on_click4_clicked), label1);
g_signal_connect_swapped (btn3, "clicked", G_CALLBACK (gtk_window_close), window);
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;
}
Editor is loading...