formun üzerindeki elemanların boyutu

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
ssoyut
Üye
Mesajlar: 12
Kayıt: 14 Ağu 2003 06:21

formun üzerindeki elemanların boyutu

Mesaj gönderen ssoyut »

arkadaslar formun üzerindeki elemanlari pencere boyutuna göre büyültüp küçültmem lazim. yani her eleman aynı oranda büyüyüp küçülecek. formun boyutu degisirse görüntüsünde bir bozukluk olmayacak. hepsi iyi de nasil yapcaz bu isi? ben ugrastim baya ama bir elemanı ayarlasam digerleri bozuluyo.
hadi kolay gele....
Kullanıcı avatarı
lazio
Moderator
Mesajlar: 1527
Kayıt: 11 Tem 2003 04:55
Konum: İstanbul

Mesaj gönderen lazio »

en basit

Kod: Tümünü seç

Edit1.Left := 10;
Edit1.Width := Form1.Width - 30;
gibi..
tabi formun resize ında
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7601
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

Merhaba,

bunun için bileşenlerin Align ve Anchor özelliklerini kullanman lazım. Tekrar boyutlandırmaya gerek yok.

Mesela bir panelin Align özelliğini alBottom verirseniz, pencereyi naparsanız yapın ekranın altında kalır.

Anchor'da bileşenlerin pencerenin hangi kenarına göre konumlanacağını belirler. Mesela bir butonun sağ pencere kenarında kalmasını istiyorsan, [akRight] yapmalısın.

Bileşenleri koyup biraz deneme yap, çözersin olayı :wink:

Kolay gelsin.
Kullanıcı avatarı
Unyeli
Üye
Mesajlar: 11
Kayıt: 10 Ağu 2003 09:46
Konum: Ordu

Mesaj gönderen Unyeli »

Merhaba
biraz uğraştıracak bir yöntem ama istersen dene form üzerindeki her nesne için çalışması lazım.

öncelikle ilkyukseklik ve ilkgenislik değişkenlerini real olarak tanımla (private veya public kısmında)
daha sonra kodu yaz ben sadece button1 nesnesini değiştiriyorum ihtiyacın kadar değiştirirsin.

Kod: Tümünü seç

procedure TForm1.FormResize(Sender: TObject);
begin
button1.Height:=round(button1.Height/(ilkyukseklik/form1.Height));
button1.Width:=round(button1.Width/(ilkgenislik/form1.Width));
button1.Left:=round(button1.left/(ilkgenislik/form1.Width));
button1.top:=round(button1.top/(ilkyukseklik/form1.Height));
ilkyukseklik:=form1.Height;
ilkgenislik:=form1.Width;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
ilkyukseklik:=form1.Height;
ilkgenislik:=form1.Width;
end;
Umarım işine yarar kolay gelsin.
Cevapla