Advertisement
thecplusplusguy

GTK+ tutorial 6

Jun 27th, 2012
1,241
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.14 KB | None | 0 0
  1. //http://www.youtube.com/user/thecplusplusguy
  2. //Thanks for the typed in code to Tapit85
  3. #include <gtk/gtk.h>
  4.  
  5. static void button_clicked(GtkWidget *widget, gpointer data)
  6. {
  7.     g_print("%s\n", gtk_entry_get_text(GTK_ENTRY(data)));
  8. //  gtk_entry_set_text(GTK_ENTRY(data),"Text printed");
  9.     gtk_editable_select_region(GTK_EDITABLE(data), 0,-1); // text from 0 to the end
  10.     gtk_editable_copy_clipboard(GTK_EDITABLE(data));
  11. }
  12.  
  13. int main(int argc, char* argv[])
  14. {
  15.     gtk_init(&argc, &argv);
  16.     GtkWidget *window, *entry, *button, *hbox;
  17.     window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
  18.     g_signal_connect(window, "delete-event", G_CALLBACK(gtk_main_quit), NULL);
  19.  
  20.     entry = gtk_entry_new();
  21.     button = gtk_button_new_with_mnemonic("_Write text");
  22.     g_signal_connect(button, "clicked", G_CALLBACK(button_clicked), entry);
  23.     g_signal_connect(entry, "activate", G_CALLBACK(button_clicked), entry); // press enter to call funtion
  24.  
  25.     hbox = gtk_hbox_new(0,0);
  26.     gtk_box_pack_start(GTK_BOX(hbox), entry, 0,0,0);
  27.     gtk_box_pack_start(GTK_BOX(hbox), button, 0,0,0);
  28.  
  29.     gtk_container_add(GTK_CONTAINER(window), hbox);
  30.  
  31.     gtk_widget_show_all(window);
  32.     gtk_main();
  33.     return 0;
  34. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement