Ni vidos en ĉi tiu malgranda lernilo kiel fari niajn unuajn paŝojn kun Vala kaj GTK3. Ni komencu:
Instalante la necesajn ilojn
sudo apt-get install valac libgtk-3-dev
La IDE:
Ni povas trovi grandan varion de redaktantoj, kiujn ni povas uzi / agordi kiel IDE. Ekzemplo de ili estas Scratch, Sublima Teksto, Geany ... En mia kazo mi uzos Scratch (kiun ni povas trovi en elementaj os).
Ni vidu la tipan ekzemplon de Hello World !, kiu estus jena:
Kaj la kodo aspektus tiel:
Nun ni vidu la detalojn de la kodo. Ni havas klason, kiu estas Gtk-fenestro.
# Ni pravalorizas Gtk per argumentoj Gtk.init (ref args); # Ni kreas la aplikaĵon. Aplika programo = nova Aplikaĵo (); # Ni metas la programon en la centron de la ekrano. app.window_position = Gtk.WindowPosition.CENTER; # Ferminte ni detruas la programon. app.destroy.connect (Gtk.main_quit); # Ni mezuras la fenestron app.set_default_size (100, 50); # Ni kreas butonon kaj konektas la butonon alklakan eventon kaj presas saluton! var-butono = nova Gtk.Button.with_label ("Diru Saluton"); button.clicked.connect (() => {print ("Saluton! \ n");}); # Aldonu la butonon al la programo app.add (butono); # Ni montras la App / Window app.show_all ();
Alklakante la butonon ni ricevos kiel eliron:
Ni kompilas kaj ekzekutas:
$ valac -v lol.vala --pkg gtk + -3.0 $ ./lol
Nun mi lasas al vi iujn interesajn ligojn:
http://elementaryos.org/docs/code/the-basic-setup
14 komentoj, lasu la viajn
La problemo ne havi ideon, kiu desegnas fenestrojn, estas, ke vi devas koni ĉiujn metodojn de la klaso por krei fenestron, ion primitivan, vere.
Se vi farus bonan laboron en la projektostadio, vi havus neniun kialon uzi IDE-programon.
Vi ne komprenis min, mi parolas pri ideo, kiu faros ĝin por vi, Windows, sen devi tajpi kodon principe:
http://imagebin.org/275532
Tio savas vin scii, kio estas la metodo de butono, ktp ktp
Kun IDE vi nur ŝparas tempon ... Sed se ni parolas pri funkciado kiam vi uzas IDE aŭ TERMINALON dum kompilado, ili ambaŭ plenumas la samajn funkciojn.
Temas pri gusto kaj komforto.
Nu vi havas Glade (https://glade.gnome.org/), estas RAD-ilo, kiu ebligas al vi rapide desegni programajn fenestrojn per simplaj musklakoj.
Post kiam la interfaco estas kreita, ĝi generas dosieron en xml-formato, kiun vi povas alvoki el programlingvoj kiel C, C ++, Python, Perl, Vala, Java, ktp.
Mi esperas, ke ĉi tio respondas vian demandon.
Se estas ideo, kiu integras fenestran kreinton, Anjuta IDE.
Saluton Lolbimbo:
Antaŭ iom da tempo mi decidis uzi Vala kiel mian ĉefan lingvon antaŭ D kaj Golang pro x kialoj, sed mi estas blokita en problemo, la kodo, kiun mi tre bone kompilis, sed nun mi havas la jenan eraron:
/media/…/vala/nn.vala.c: En funkcio 'ĉefa':
/media/…/vala/nn.vala.c:155:2: averto: 'g_type_init' estas malrekomendata (deklarita ĉe /usr/include/glib-2.0/gobject/gtype.h:669) [-Wdeprecated-declarations]
g_tipo_init ();
se ĝi estas tro da problemo, mi komprenos, antaŭdankon kaj gratulon pro la blogo.
Saluton amiko, mi komencas kun vala, sed transdonu al mi la kodon, kiun vi havas ĉe linio 155, ĉiuokaze ĝi estas averto, ne eraro, se ĝi funkcias por vi, nenio okazas, ĉar ĝi eble estas vala cimo.
Saluton Lolimbo, mi festas vian entuziasmon ĉar mi sentis min sola en vala, fakte la eraro estas donita al mi en iu ajn kodo tiel simpla kiel: uzi Gtk;
int main (ĉeno [] argumentoj) {
Gtk.init(ref args);
var fenestro = nova Fenestro ();
window.title = "Unua Programo GTK +";
fenestro.larĝa_larĝo = 10;
window.window_position = WindowPosition.CENTER;
window.set_default_size(350, 70);
window.destroy.connect(Gtk.main_quit);
var button = new Button.with_label ("Alklaku min!");
button.clicked.connect (() => {
button.label = "Dankon";
});
provu {
// Aŭ rekte de dosiero ...
window.icon = nova Gdk.Pixbuf.de_dosiero ("mia-programo.png");
// ... aŭ de la temo
window.icon = IconTheme.get_default () .load_icon ("mia-programo", 48, 0);
} kapti (Eraro e) {
stderr.printf ("Ne povis ŝargi aplikaĵan ikonon:% s \ n", e.mesaĝo);
}
fenestro.add (butono);
fenestro.montri_ĉion ();
Gtk.main();
redoni 0;
}
Sed inter labori kun Vindozo kaj hejme, mi ne havas tempon ĉasi la eraron, ŝajnas al mi, ke ĝi estas problemo kun versioj de vala, mi ne scias.
Ĝisdatigado de vala devas forigi la averton.
La lernilo estas bone klarigita kaj mi ŝatas ĝin, nur tion mi ĉiam demandis, kial ĉiam komenci per la programo "salutmondo", por komencantoj estus bone, sed kio el tiuj, kiuj jam havas programan sperton? Kial ne indiki kiel krei interfacon kun pluraj elementoj (butonoj, etikedoj, ktp)?
Mi ŝatas Vala kaj volas lerni ĝin, sed estus pli konstrue komenci iom pli "inter", ĉu ne?
Baldaŭ estas alia afiŝo kun meza nivelo.
Ĝavo?
Bela lernilo bone klarigita kaj ĉio efektive igis min pripensi meti vala kaj gtk en mian lernoliston.
Bonege, nun mi proponas lernilon pri Seed (ĝavaskripto) + Gtk, ĝi estus sufiĉe interesa, ĉar ĉi tiu estas la oficiala eblo elektita de la projekto Gnome.