Salam coding ^_^
Saat membuat aplikasi, biasanya programmer menentukan ukuran dan letak objek secara hardcode menggunakan nilai pixel. Beda ukuran layar, beda nilai pixel. Jadi jika aplikasi akan digunakan di ukuran layar yang berbeda, programmer akan menyetting ulang nilai pixelnya. Nah lho, apa ga repot tuh bolak balik setting. Misal digunakan di 3 ukuran layar maka ada 3 source, wasting time guys. Yuk kita menghemat waktu kita dengan membuat project yang sudah pasti pas sama ukuran layar.
- Buat projek dengan nama cekResolusiLayar.
- Buka cekResolusiLayar.ui lalu Add pushButton ke workspace.
- Di constructor, tambahkan source ini
QRect screen = QApplication::desktop()->geometry();
misalnya kita ingin membuat pushButton di posisi :
x = titik awal ada di 1/8 lebar layar
y = titik awal ada di 0
lebar = 1/3 lebar layar
tinggi = 1/4 tinggi layar
maka tambahkan source iniui->pushButton->setGeometry(screen.width()/8,0,screen.width()/3,screen.height()/4);
- Taraaam, ini dia hasilnya
jika ingin membuat pushButton fullscreen layar, ganti source iniui->pushButton->setGeometry(screen.width()/8,0,screen.width()/3,screen.height()/4);
dengan yang iniui->pushButton->setGeometry(screen);
inilah hasilnya
Pada poin 3, kita setting pushbutton seperti ini
ui->pushButton->setGeometry(screen.width()/8,0,screen.width()/3,screen.height()/4);
tapi pada poin ke 4, kita setting pushbutton seperti ini
ui->pushButton->setGeometry(screen);
Kenapa bisa berbeda? settingan yang pertama menggunakan
ui->pushButton->setGeometry(int x, int y, int w, int h);
pada settingan yang kedua, screen bertype QRect. QRect ini sebenarnya adalah int x, int y, int w, int h yang dikemas menjadi satu. Karena itulah kita bisa setting geometry objek menggunakan data bertype QRect.
Untuk menghitung posisi x, kita menghitungnya berdasarkan lebar layar karena posisi x adalah horizontal. Sedangkan posisi y di hitungnya berdasarkan tinggi layar.
Ternyata mudah ya.. :D
Selamat mencoba kakak. Ganbatte Kudasai ^_^