Langkah pertama [Vala + Gtk 3]: Hello World !!

Kita akan melihat dalam tutorial kecil ini bagaimana melakukan langkah pertama kita dengan Vala dan GTK3. Mari kita mulai:

Memasang alat yang diperlukan

sudo apt-get install valac libgtk-3-dev

IDE:

Kami dapat menemukan berbagai macam editor yang dapat kami gunakan / konfigurasikan sebagai IDE. Contoh dari mereka adalah Gores, Teks Sublime, Geany … Dalam kasus saya, saya akan menggunakan Scratch (yang dapat kita temukan di os dasar).

Gores

Mari kita lihat contoh khas Hello World !, yaitu sebagai berikut:

Tangkap dari 2013-10-31 23:33:12

Dan kodenya akan terlihat seperti ini:

Tangkap dari 2013-10-31 23:34:48

Sekarang mari kita lihat detail kodenya. Kami memiliki kelas yang merupakan jendela Gtk.

# Kami menginisialisasi Gtk dengan argumen Gtk.init (ref args); # Kami membuat aplikasi. Aplikasi aplikasi = Aplikasi baru (); # Kami menempatkan aplikasi di tengah layar. app.window_position = Gtk.WindowPosition.CENTER; # Saat menutup kami menghancurkan aplikasi. app.destroy.connect (Gtk.main_quit); # Kami mengukur jendela app.set_default_size (100, 50); # Kami membuat tombol dan menghubungkan acara klik tombol dan mencetak halo! var button = new Gtk.Button.with_label ("Say Hello"); button.clicked.connect (() => {print ("Halo! \ n");}); # Tambahkan tombol ke app app.add (tombol); # Kami menampilkan app / Window app.show_all ();

Dengan mengklik tombol tersebut kita akan mendapatkan sebagai output:

Tangkap dari 2013-10-31 23:35:58

Kami mengkompilasi dan mengeksekusi:

$ valac -v lol.vala --pkg gtk + -3.0 $ ./lol

Sekarang saya meninggalkan Anda beberapa tautan yang menarik:

http://elementaryos.org/docs/code/the-basic-setup


tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Penanggung jawab data: Miguel Ángel Gatón
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.

  1.   pandev92 dijo

    Masalah dengan tidak adanya ide yang menarik jendela adalah Anda harus mengetahui semua metode kelas untuk membuat jendela, sesuatu yang primitif, sungguh.

    1.    bernuansa dijo

      Jika Anda melakukan pekerjaan dengan baik di tahap desain, Anda tidak akan punya alasan untuk menggunakan IDE saat pemrograman.

      1.    pandev92 dijo

        Anda tidak mengerti saya, saya berbicara tentang memiliki ide yang akan melakukannya untuk Anda, windows, tanpa harus mengetik kode pada prinsipnya:

        http://imagebin.org/275532

        Itu menyelamatkan Anda dari mengetahui apa metode tombol, dll

        1.    marianogaudix.dll dijo

          Dengan IDE Anda hanya menghemat waktu …… Tetapi jika kita berbicara tentang fungsionalitas saat menggunakan IDE atau TERMINAL saat kompilasi, keduanya memenuhi fungsi yang sama.
          Ini masalah selera dan kenyamanan.

        2.    seni dijo

          Nah, Anda memiliki Glade (https://glade.gnome.org/), adalah alat RAD yang memungkinkan Anda mendesain jendela aplikasi dengan cepat hanya dengan mengklik mouse.

          Setelah antarmuka dibuat, itu menghasilkan file dalam format xml yang dapat Anda panggil dari bahasa pemrograman seperti C, C ++, Python, Perl, Vala, Java, dll.

          Saya harap ini menjawab pertanyaan Anda.

        3.    lobimbo dijo

          Jika ada ide yang mengintegrasikan pembuat jendela, Anjuta IDE.

  2.   Juan Pablo dijo

    Halo Lolbimbo:
    Beberapa waktu yang lalu saya memutuskan untuk menggunakan Vala sebagai bahasa utama saya sebelum D dan Golang karena alasan x, tetapi saya terjebak dalam masalah, kode yang telah saya susun dengan sangat baik, tetapi sekarang saya mendapatkan kesalahan berikut:

    /media/…/vala/nn.vala.c: Dalam fungsi 'main':
    /media/…/vala/nn.vala.c:155:2: peringatan: 'g_type_init' tidak digunakan lagi (dideklarasikan di /usr/include/glib-2.0/gobject/gtype.h:669) [-Wdeprecated-declarations]
    g_type_init();

    jika terlalu repot biar mengerti, terimakasih sebelumnya dan selamat buat blognya.

    1.    lobimbo dijo

      Halo sobat, saya mulai dengan vala, tapi berikan saya kode yang Anda miliki di baris 155, bagaimanapun itu adalah peringatan, bukan kesalahan, jika berhasil untuk Anda, tidak ada yang terjadi karena ini mungkin bug vala.

      1.    Juan Pablo dijo

        Halo Lolimbo, saya merayakan antusiasme Anda karena saya merasa kesepian di vala, sebenarnya kesalahan memberi saya kode sesederhana: using Gtk;

        int utama (string [] args) {
        Gtk.init (args referensi);

        var jendela = Jendela baru ();
        window.title = "Program GTK + Pertama";
        jendela.border_width = 10;
        window.window_position = Posisi Jendela.CENTER;
        window.set_default_size(350, 70);
        window.destroy.connect(Gtk.main_quit);

        var button = new Button.with_label ("Click me!");
        button.clicked.connect (() => {
        button.label = "Terima kasih";
        });
        coba {
        // Baik langsung dari file ...
        window.icon = Gdk.Pixbuf.from_file baru ("aplikasi-saya.png");
        //… atau dari tema
        window.icon = IconTheme.get_default () .load_icon ("aplikasi-saya", 48, 0);
        } tangkap (Kesalahan e) {
        stderr.printf ("Tidak dapat memuat ikon aplikasi:% s \ n", e.message);
        }
        window.add (tombol);
        window.show_all();

        Gtk.main();
        0 kembali;
        }

        Tetapi antara bekerja dengan Windows dan di rumah, saya tidak punya waktu untuk mencari kesalahan, menurut saya ini masalah dengan versi vala, saya tidak tahu.

        1.    lobimbo dijo

          Memperbarui vala harus menghapus peringatan tersebut.

  3.   uribes dijo

    Tutorialnya dijelaskan dengan baik dan saya menyukainya, hanya saja saya selalu bertanya-tanya, mengapa selalu memulai dengan program "hello world", untuk pemula tidak masalah, tetapi bagaimana dengan mereka yang sudah memiliki pengalaman pemrograman? Mengapa tidak menunjukkan cara membuat antarmuka dengan beberapa elemen (tombol, label, dll)?

    Saya suka Vala dan saya ingin mempelajarinya, tetapi akan lebih konstruktif untuk memulai lebih banyak "di antara", bukan?

    1.    lobimbo dijo

      Segera ada pos lain dengan tingkat menengah.

  4.   Juanra 20 dijo

    Jawa?

    Tutorial bagus dijelaskan dengan baik dan semuanya benar-benar membuat saya mempertimbangkan untuk memasukkan vala dan gtk ke dalam daftar belajar saya.

  5.   -ik- dijo

    Luar biasa, sekarang saya menyarankan tutorial Seed (javascript) + Gtk, itu akan cukup menarik, karena ini adalah opsi resmi yang telah dipilih oleh proyek Gnome.