Pemrograman GUI dengan Ruby dan QT4

Membuat Dialog Yang selalu dimulai ditengah (Centered Screen Window)

Silakan tulis script berikut dan simpan sebagai file .rb:


#muat library Qt
require 'Qt'

#definisikan lebar dan tinggi window
WIDTH = 250
HEIGHT = 150

class QtApp < Qt::Widget

    def initialize
        super
        
        setWindowTitle "Contoh Window Centered"
        resize WIDTH, HEIGHT
        
        #eksekusi sub fungsi 'center'
        center
        show
    end
    
    #sub fungsi center tulis disini
    def center
        qdw = Qt::DesktopWidget.new
		
		#untuk memperoleh lebar dan tinggi screen, kita gunakan bawaan Qt
		#yaitu qdw.*
		
        screenWidth = qdw.width
        screenHeight = qdw.height
		
		#langkah sederhana untuk cari posisi tengah dilayar
		# x = lebar dibagi 2, dan y = tinggi dibagi 2
        x = (screenWidth - WIDTH) / 2
        y = (screenHeight - HEIGHT) / 2
        
        move x, y
    end
end

#setup script
app = Qt::Application.new ARGV
QtApp.new
app.exec

Dalam script diatas setidaknya kita mempelajari beberapa hal:
– mengenal syntax pendefinisian dalam Ruby (bagian definisi WIDTH dan HEIGHT)
– mengenal eksekusi sebuah method/sub fungsi (lihat bagian fungsi center, sebelum fungsi show ditulis)
– mengenal cara membuat sebuah method/sub fungsi (lihat bagian sub fungsi center, def center dst…)

Jika script anda dieksekusi dan semua berjalan normal maka akan tampil window sbb:

Latihan 2 – Membuat window yang selalu ‘Centered’ di layar

Selamat berjumpa di seri berikutnya!

Leave a Reply