Component Sırasını Belirleme

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
schumi
Üye
Mesajlar: 41
Kayıt: 18 Şub 2005 04:04

Component Sırasını Belirleme

Mesaj gönderen schumi »

Arkadaşlar yine ben ve yine bir sorun :)

Ben bol butonlu ve editli bir programile uğraşıyorum. Bu yüzden bu editlere girişleri TEdit(Components[no]).Text:='xxx'
olarak yapıyorum.

Components bilindiği üzre edit,buton,image gibi alanları kapsamakta. 1den 100e kadar editlerimiz ve butonlarımız var. Ve "no" yazan kısıma denk gelen sayılar şöyle 1den 100e kadar editler ve 101den 200 e kadar da butonlar. Buraya kadar herşey normal. Sorun şurda;

Ben bu 100 editten sonra bir edit eklediğimde, program bunu dizilimde 101.ci sıraya koyuyor ve doğal olarakta butonların rakamları kayıyor. yani 101 olan buton 102 oluyor. Bunu nasıl engellerim.

Bu sıranın farkına şöyle vardım;
Form'a sağ tıklayıp View as Text dediğimizde componentlerin numaraları ordaki dizilime göre yapılmakta.

Şimdi ben bir edit eklediğimde bunu 101.ci sıraya değilde en sona eklenmesini nasıl sağlarım.

Biraz karışık bir mevzu ama bilenlerin yardımlarını bekliyorum. Umarım derdimi anlatabilmişimdir. Anlatamadıysam sorularınızla konuyu açmaya çalışırım.
Kullanıcı avatarı
naile
Admin
Mesajlar: 1873
Kayıt: 11 Haz 2003 10:11

Mesaj gönderen naile »

Eğer sıradan kastın taborder sa
TEdit(Components[no]).TabOrder := 102;
diye numara vererek yapamıyor musun?
schumi
Üye
Mesajlar: 41
Kayıt: 18 Şub 2005 04:04

Mesaj gönderen schumi »

Yok sıradan kastım taborder değil.

Formun üstünde sağ tık "View as Text" yapınca kod görünüm açılıyor. Burda komponentler belli bir sırada. Ben yeni bir komponent eklediğimde bu komponenti sona değil de ortaya bir yere yerleştiriyor. Komponentten kasıt buton,edit,image vs.

Yukarıda da söylediğim gibi ben bu yeni eklediğim komponenti en sona eklemesini istiyorum fakat bunu kendine göre bir sıraya koyuyor. Mesela butonları önce editleri sonra diziyor. Ben bir buton ekleyince editlerin sıra numarası kayıyor bunu engellemek istiyorum nasıl yapabilirim.
bukentay
Üye
Mesajlar: 44
Kayıt: 16 Şub 2004 07:21

Mesaj gönderen bukentay »

sanirim Delphinin idesinden yeni componentin nereye eklenecegine mudehale edemessiniz. zaten bende sizin dediginiz gibi olmuyor, ne eklersem sona ekliyor. componentlerin ComponentIndex ozelligi read only degil. yani formun OnCreate olayina Edit1.ComponentIndex:=999 yazarsaniz Edit1 i formdaki en son component yaparsiniz (formunuzda 999 komponent olmadigini varsayiyorum)
schumi
Üye
Mesajlar: 41
Kayıt: 18 Şub 2005 04:04

Mesaj gönderen schumi »

Evet dediğin gibi yapmayı denedim. Dediğin gibi yapmaktan başka çare yok. Ama bende sendeki gibi sona eklemiyor o sorun işte. Ama olsun componentindex ile yapacaz artık. Saolasın eyvallah
Cevapla