Näemme tässä pienessä opetusohjelmassa, kuinka voimme ottaa ensimmäiset askeleemme Valan ja GTK3: n kanssa. Aloitetaan:
Tarvittavien työkalujen asentaminen
sudo apt-get install valac libgtk-3-dev
IDE:
Voimme löytää suuren määrän toimittajia, joita voimme käyttää / määrittää IDE: nä. Esimerkkejä niistä ovat Scratch, SublimeText, Geany … Minun tapauksessani aion käyttää Scratchia (jonka voimme löytää alkeisosissa).
Katsotaanpa tyypillinen esimerkki Hello World !, joka olisi seuraava:
Ja koodi näyttäisi tältä:
Katsotaan nyt koodin yksityiskohdat. Meillä on luokka, joka on GTK-ikkuna.
# Alustamme Gtk: n argumenteilla Gtk.init (ref args); # Luomme sovelluksen. Sovellussovellus = uusi sovellus (); # Laitamme sovelluksen näytön keskelle. app.window_position = Gtk.WindowPosition.CENTER; # Kun suljet, tuhoamme sovelluksen. app.destroy.connect (Gtk.main_quit); # Mitataan ikkuna app.set_default_size (100, 50); # Luomme painikkeen ja yhdistämme napin napsautustapahtuman ja tulostamme hei! var-painike = uusi Gtk.Button.with_label ("Sano hei"); button.clicked.connect (() => {tulosta ("Hei! \ n");}); # Lisää painike sovelluksen sovellukseen. Add (painike); # Näytämme App / Window app.show_all ();
Napsauttamalla painiketta saat tulosteen:
Laadimme ja toteutamme:
$ valac -v lol.vala --pkg gtk + -3.0 $ ./lol
Jätän nyt mielenkiintoisia linkkejä:
http://elementaryos.org/docs/code/the-basic-setup
Ikkunoita piirtävän ideon puuttuminen on se, että sinun on tiedettävä kaikki luokan menetelmät, jotta voit luoda todella ikkunan, jotain alkeellista.
Jos teit hyvää työtä suunnitteluvaiheessa, sinulla ei olisi syytä käyttää IDE: tä ohjelmoinnissa.
Et ymmärtänyt minua, puhun ajatuksesta, joka tekee sen puolestasi, Windows ilman, että sinun tarvitsee kirjoittaa koodia periaatteessa:
http://imagebin.org/275532
Se säästää sinua tietämästä mikä painikkeen menetelmä on jne
IDE: n avulla säästät vain aikaa ... ... Mutta jos puhumme toiminnallisuudesta käytettäessä IDE: tä tai TERMINALia käännettäessä, molemmat suorittavat samat toiminnot.
Se on makun ja mukavuuden kysymys.
No, sinulla on Glade (https://glade.gnome.org/), on RAD-työkalu, jonka avulla voit suunnitella sovellusikkunat nopeasti yksinkertaisilla hiiren napsautuksilla.
Kun käyttöliittymä on luotu, se luo tiedoston xml-muodossa, jonka voit kutsua ohjelmointikielistä, kuten C, C ++, Python, Perl, Vala, Java jne.
Toivon, että tämä vastaa kysymykseesi.
Jos on idea, joka integroi ikkunan luojan, Anjuta IDE.
Hei Lolbimbo:
Jokin aika sitten päätin käyttää Valaa pääkielenä ennen D: tä ja Golangia x syistä, mutta olen jumissa ongelmassa, koodissa, jonka olen koonnut erittäin hyvin, mutta nyt saan seuraavan virheen:
/media/…/vala/nn.vala.c: Toiminnossa 'main':
/media/…/vala/nn.vala.c:155:2: varoitus: 'g_type_init' on vanhentunut (ilmoitettu osoitteessa /usr/include/glib-2.0/gobject/gtype.h:669) [-Wdeprecated-deklarations]
g_type_init();
jos se on liikaa vaivaa, ymmärrän, kiitos etukäteen ja onnittelut blogista.
Hei ystävä, aloitan valalla, mutta välitä minulle koodi, jonka sinulla on rivillä 155, joka tapauksessa se on varoitus, ei virhe, jos se toimii sinulle, mitään ei tapahdu, koska se voi olla vala-virhe.
Hei Lolimbo, vietän innostustasi, koska tunsin olevani yksinäinen valassa, itse asiassa virhe antaa minulle minkä tahansa yksinkertaisen koodin: Gtk: n käyttö;
int main (merkkijono [] args) {
Gtk.init (viite argumentit);
var ikkuna = uusi ikkuna ();
window.title = "Ensimmäinen GTK + -ohjelma";
ikkuna.rajan_leveys = 10;
window.window_position = WindowPosition.CENTER;
window.set_default_size(350, 70);
window.destroy.connect(Gtk.main_quit);
var-painike = uusi Button.with_label ("Napsauta minua!");
button.clicked.connect (() => {
button.label = "Kiitos";
});
yrittää {
// Joko suoraan tiedostosta ...
window.icon = new Gdk.Pixbuf.from_file ("my-app.png");
//… tai teemasta
window.icon = IconTheme.get_default () .load_icon ("oma sovellus", 48, 0);
} saalis (virhe e) {
stderr.printf ("Sovelluskuvaketta ei voitu ladata:% s \ n", e. viesti);
}
ikkuna.add (painike);
window.show_all();
Gtk.main();
0 palata;
}
Mutta Windows-työskentelyn ja kotona työskentelyn välillä minulla ei ole aikaa metsästää virhettä, minusta tuntuu, että se on ongelma vala-versioissa, en tiedä.
Valan päivittämisen pitäisi poistaa varoitus.
Opetusohjelma on hyvin selitetty ja pidän siitä, vain että olen aina miettinyt, miksi aloitan aina "hei maailma" -ohjelmalla, aloittelijoille se olisi hieno, mutta entä ne, joilla on jo ohjelmointikokemus? Miksi et ilmoittaisi, kuinka tehdä käyttöliittymä useille elementeille (painikkeet, tarrat jne.)?
Pidän Valasta ja haluan oppia sen, mutta olisi rakentavampaa aloittaa hieman enemmän "välillä", eikö?
Pian ovat toinen viesti, jolla on keskitaso.
Java?
Mukava opetusohjelma on hyvin selitetty, ja kaikki tosiasiassa sai minut harkitsemaan valan ja gtk: n lisäämistä oppimisluettelooni.
Erinomainen, nyt ehdotan Seed (javascript) + Gtk -opetusohjelmaa, se olisi varsin mielenkiintoinen, koska tämä on virallinen vaihtoehto, jonka Gnome-projekti on valinnut.