This application greets you in the terminal.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
/* A window in the application. */ class MyWindow : Gtk.ApplicationWindow { /* Constructor */ internal MyWindow (MyApplication app) { Object (application: app, title: "What is your name?"); var name_box = new Gtk.Entry (); /* Connect to the signal handler. */ name_box.activate.connect (this.on_activate); name_box.show (); this.set_default_size (300, 100); this.border_width = 10; /* Add the name_box to this window. */ this.add (name_box); } /* Signal handler (aka. callback function) for the 'activate' * signal of a Gtk.Entry. */ void on_activate (Gtk.Entry entry) { name = entry.get_text (); print ("\nHello " + name + "!\n\n"); } } /* This is the application. */ class MyApplication : Gtk.Application { /* Constructor for the application. */ internal MyApplication () { Object (application_id: "org.example.MyApplication"); } /* Override the 'activate' signal of GLib.Application. */ protected override void activate () { /* Create a new window for this application * and show it. */ new MyWindow (this).show (); } } /* The main function creates and runs the application. */ int main (string[] args) { return new MyApplication ().run (args); }
In this sample we used the following:
Got a comment? Spotted an error? Found the instructions unclear? Send feedback about this page.