Ensimmäiset vaiheet [Vala + Gtk 3]: Hei maailma !!

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).

Scratch

Katsotaanpa tyypillinen esimerkki Hello World !, joka olisi seuraava:

Sieppaa 2013-10-31 23:33:12

Ja koodi näyttäisi tältä:

Sieppaa 2013-10-31 23:34:48

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:

Sieppaa 2013-10-31 23:35:58

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


Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastuussa tiedoista: Miguel Ángel Gatón
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.

  1.   92 dijo

    Ikkunoita piirtävän ideon puuttuminen on se, että sinun on tiedettävä kaikki luokan menetelmät, jotta voit luoda todella ikkunan, jotain alkeellista.

    1.    vivahteikas dijo

      Jos teit hyvää työtä suunnitteluvaiheessa, sinulla ei olisi syytä käyttää IDE: tä ohjelmoinnissa.

      1.    92 dijo

        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

        1.    marianogaudix dijo

          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.

        2.    artus dijo

          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.

        3.    lolbimbo dijo

          Jos on idea, joka integroi ikkunan luojan, Anjuta IDE.

  2.   Juan Pablo dijo

    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.

    1.    lolbimbo dijo

      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.

      1.    Juan Pablo dijo

        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ä.

        1.    lolbimbo dijo

          Valan päivittämisen pitäisi poistaa varoitus.

  3.   uribit dijo

    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ö?

    1.    lolbimbo dijo

      Pian ovat toinen viesti, jolla on keskitaso.

  4.   Juanra 20 dijo

    Java?

    Mukava opetusohjelma on hyvin selitetty, ja kaikki tosiasiassa sai minut harkitsemaan valan ja gtk: n lisäämistä oppimisluettelooni.

  5.   -ik- dijo

    Erinomainen, nyt ehdotan Seed (javascript) + Gtk -opetusohjelmaa, se olisi varsin mielenkiintoinen, koska tämä on virallinen vaihtoehto, jonka Gnome-projekti on valinnut.