TabOrder

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
lazio
Moderator
Mesajlar: 1527
Kayıt: 11 Tem 2003 04:55
Konum: İstanbul

TabOrder

Mesaj gönderen lazio »

Bir formun yada panelin üstündeki kontroller den (edit, combobox vs.) taborder ı 0 olanı nasıl alabilirim. yapmak istediğim taborder ı 0 olana focus lanmak. ama focus lanacağım bu kontrol designtime da belli değil.
kolay gelsin.
DeveloperToolKit

..::|YeşilMavi|::..
Kullanıcı avatarı
mnt
Üye
Mesajlar: 57
Kayıt: 30 Eki 2005 12:58
Konum: Kocaeli

Mesaj gönderen mnt »

Kod: Tümünü seç

  for i:=0 to ComponentCount-1 do
  begin
    if (Components[i] is TEdit) then
    if (Components[i] as TEdit).TabOrder=0 then
    begin
      (Components[i] as TEdit).SetFocus;
      exit;
    end;
  end;
veya

Kod: Tümünü seç

var
temp:TControl;
i:integer;
begin
  for i:= 0 to Panel1.ControlCount -1 do
  begin
    temp := Panel1.Controls[i];
    if  (temp is TWinControl) then
    if (temp as TWinControl).TabOrder=0 then (temp as TWinControl).SetFocus;
  end;
end;
Mustafa
Kullanıcı avatarı
lazio
Moderator
Mesajlar: 1527
Kayıt: 11 Tem 2003 04:55
Konum: İstanbul

Mesaj gönderen lazio »

saol hocam cevap için ancak benim esas yapmak istediğim döngüye gerek kalmadan direkt 0 ıncı kontrolu almak.
DeveloperToolKit

..::|YeşilMavi|::..
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

Selam...

- önce TPanel'i Setfocus edersin. Takip eden ilk kontrole geç dersin...

Örneğin Panel1 üzerindeki ilk kontrole focus olmak için aşağıdaki gibi dene;

Kod: Tümünü seç

  Panel1.SetFocus;
  SelectNext(activecontrol,true,true);
- Başarılar...
Resim
Resim ....Resim
Kullanıcı avatarı
lazio
Moderator
Mesajlar: 1527
Kayıt: 11 Tem 2003 04:55
Konum: İstanbul

Mesaj gönderen lazio »

Panel1.SetFocus;
SelectNext(activecontrol,true,true);
tam olarak istediğim buydu, ilgilenenlerden allah razı olsun
DeveloperToolKit

..::|YeşilMavi|::..
Cevapla