Ruby ile GUI Toolkits – 1

Merhabalar,

Bu yazımızda Ruby ile yazdığımız programlara bir arabirim eklemek istersek ne gibi alternatifler var, avantajları ne, dezavantajları ne gibi sorulara cevap arayacağız. Umarım buluruz ;)
Ruby özgür ve açık kaynak kodlu olmasından dolayı, görüntü arabirimi küyüphanesinde birkaç alternatif mevcut. Bunlardan başlıcaları; Tk, Ruby/GTK, Ruby/Qt, wxRuby, FxRuby/Fox ve VRuby şeklinde sıralanabilir.

Hepsi ile birer tane örnek yapmak istiyorum, ama bu yazıda sadece bir tane yapabilirim ;) Ben derim ki listenin en kolayından başlayalım,
VRuby
Sadece Windows iÅŸletim sistemi için bir kütüphanedir. Windows için Ruby kurulumu olan One-Click Ruby Installer ile beraber gelir. Herhangi bir ÅŸekilde ekstra kurulum yapmaya gerek yoktur. Proje ile ilgili dökümantasyon çok kötü olmamasına raÄŸmen oldukça azdır. Fakat bu sayfa baÅŸlangıç sayfası olarak kullanılabilir. Kütüphaneyi yapan kiÅŸiler Visual Basic kadar basit olması gerektiÄŸine karar vermiÅŸ ve bu yöndede çok güzel ve önemli adımlar atmışlardır. Kütüphanenin kolay olan kullanımı ve ‘One-Click Ruby Installer’ ile birlikte gelmesi, Ruby programlarının Windows versiyonları için çok iyi bir avantaj olarak göze çarpar. Form Designer‘ı ve CHM dökümantasyonu ve bir çok örneÄŸi mevcut olan VRuby, Windows için gerçekten çok güçlü bir alternatiftir.

Örneğimizi verecek olursak;
[ruby]
require ‘vr/vruby’
require “vr/vrcontrol”
require “vr/vrlayout”
require “vr/vrcomctl”
require “vr/vrhandler”

class SinamaForm < VRForm # Kapatma işleminin yakalanmasi için. include VRClosingSensitive # Form'un yapıcısı, işlemler ve üzerinde elementler eklenir. def construct self.sizebox=false self.maximizebox=false self.caption = 'Sınama' self.move(410,247,355,157) addControl(VRButton,'sayHello',"Merhaba !",40,56,120,32) addControl(VRStatic,'static1',"Kullanıcı Adı :",40,16,96,24) addControl(VRButton,'close',"Çıkış",216,56,64,40) addControl(VREdit,'userName',"",136,16,144,24) end # "Çıkış" methodu tıklandığında çalışır. def close_clicked # 4: MB_YESNO, 32: MB_ICONQUESTION r = messageBox("Emin misin ?", self.caption, 4 + 32) self.close if r == 6 # Form'u kapatır. self_close çalışmaz. end # "self.close" dışındaki kapatma işlemlerinde çalışır. def self_close # 4: MB_YESNO, 32: MB_ICONQUESTION r = messageBox("Emin misin ?", self.caption, 4 + 32) SKIP_DEFAULTHANDLER if r != 6 # 6: ID_YES end # "Merhaba" method'u tıklandığında çalışır. def sayHello_clicked messageBox("Merhaba, #{@userName.text}..!", self.caption) end end VRLocalScreen.showForm SinamaForm VRLocalScreen.messageloop [/ruby] Kod kendisini anlatacak kadar basit ve sade.. bu nedenle herhangi bir açıklama yazma gereği duymuyorum. Çalıştırdıktan sonra ekranda;
vruby01.JPG
vruby02.JPG
bu arabirimleri görürüz. Neden “Çıkış”, “Merhaba” dan daha uzun diye sormayın ;)

Kolay gelsin..

Ruby ile GUI Toolkits – 1” üzerine bir yorum

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir