Delphi Can

Orjinalini görmek için tıklayınız: for ile oluşturulan butonun visible durumu
Şu anda (Arşiv) modunu görüntülemektesiniz. Orjinal Sürümü Görüntüle internal link
Sayfalar: 1 2 3
merhaba iyi günler ben for ileortalama 40 adet buton oluşturuyorum ve oluştuturken visiblelerini false yapıyorum istediğim yerde açmak istiyorum tüm oluşturulan butonların şu kodu yazıyorum tek bir buton visiblesi true oluyor kod bu

butonları oluşturduğum yer burası
or I := 0 to Length(EnigmaAPI.Categories.turkdizi) - 1 do
  begin

  türkdizifilmbutton:=Tbutton.create(self);

  türkdizifilmbutton.top:=100;
  türkdizifilmbutton.left:=100;
  türkdizifilmbutton.height:=45;
  türkdizifilmbutton.width:=150;
  türkdizifilmbutton.Font.Size:=15;
  türkdizifilmbutton.parent:=(ScrollBox5);
  ScrollBox5.Height:=form2.Height-150;
  türkdizifilmbutton.Align:=altop;
  türkdizifilmbutton.tag:=strtoint( EnigmaAPI.Categories.turkdizi[i].category_id);
  türkdizifilmbutton.caption:=  EnigmaAPI.Categories.turkdizi[i].category_name;
  türkdizifilmbutton.OnClick := türkdiziButtonlarClick;
 end;

visinlelerini true yaptığım yerde burası 

türkdizifilmButton.Visible:=true;

yardımcı olurmusunuz?

@Fesih ARSLAN lütfen konuya bakarmısın abi
(04-07-2018, Saat: 11:00)arsl01 Adlı Kullanıcıdan Alıntı: [ -> ]merhaba iyi günler ben for ileortalama 40 adet buton oluşturuyorum ve oluştuturken visiblelerini false yapıyorum istediğim yerde açmak istiyorum tüm oluşturulan butonların şu kodu yazıyorum tek bir buton visiblesi true oluyor kod bu

butonları oluşturduğum yer burası
or I := 0 to Length(EnigmaAPI.Categories.turkdizi) - 1 do
  begin

  türkdizifilmbutton:=Tbutton.create(self);

  türkdizifilmbutton.top:=100;
  türkdizifilmbutton.left:=100;
  türkdizifilmbutton.height:=45;
  türkdizifilmbutton.width:=150;
  türkdizifilmbutton.Font.Size:=15;
  türkdizifilmbutton.parent:=(ScrollBox5);
  ScrollBox5.Height:=form2.Height-150;
  türkdizifilmbutton.Align:=altop;
  türkdizifilmbutton.tag:=strtoint( EnigmaAPI.Categories.turkdizi[i].category_id);
  türkdizifilmbutton.caption:=  EnigmaAPI.Categories.turkdizi[i].category_name;
  türkdizifilmbutton.OnClick := türkdiziButtonlarClick;
 end;

visinlelerini true yaptığım yerde burası 

türkdizifilmButton.Visible:=true;

yardımcı olurmusunuz?

@Fesih ARSLAN  lütfen konuya bakarmısın abi

Smile
 

TButton(FindComponent(EnigmaAPI.Categories.turkdizi[i].category_name)).Visible:=True;

i yerine 1,2,3...n yazabilirsiniz.
(04-07-2018, Saat: 11:11)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: [ -> ]
(04-07-2018, Saat: 11:00)arsl01 Adlı Kullanıcıdan Alıntı: [ -> ]merhaba iyi günler ben for ileortalama 40 adet buton oluşturuyorum ve oluştuturken visiblelerini false yapıyorum istediğim yerde açmak istiyorum tüm oluşturulan butonların şu kodu yazıyorum tek bir buton visiblesi true oluyor kod bu

butonları oluşturduğum yer burası
or I := 0 to Length(EnigmaAPI.Categories.turkdizi) - 1 do
  begin

  türkdizifilmbutton:=Tbutton.create(self);

  türkdizifilmbutton.top:=100;
  türkdizifilmbutton.left:=100;
  türkdizifilmbutton.height:=45;
  türkdizifilmbutton.width:=150;
  türkdizifilmbutton.Font.Size:=15;
  türkdizifilmbutton.parent:=(ScrollBox5);
  ScrollBox5.Height:=form2.Height-150;
  türkdizifilmbutton.Align:=altop;
  türkdizifilmbutton.tag:=strtoint( EnigmaAPI.Categories.turkdizi[i].category_id);
  türkdizifilmbutton.caption:=  EnigmaAPI.Categories.turkdizi[i].category_name;
  türkdizifilmbutton.OnClick := türkdiziButtonlarClick;
 end;

visinlelerini true yaptığım yerde burası 

türkdizifilmButton.Visible:=true;

yardımcı olurmusunuz?

@Fesih ARSLAN  lütfen konuya bakarmısın abi

Smile
 

TButton(FindComponent(EnigmaAPI.Categories.turkdizi[i].category_name)).Visible:=True;

i yerine 1,2,3...n yazabilirsiniz.

süpersina bi teşekkürler hemen uyguluyorum

(04-07-2018, Saat: 11:11)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: [ -> ]
(04-07-2018, Saat: 11:00)arsl01 Adlı Kullanıcıdan Alıntı: [ -> ]merhaba iyi günler ben for ileortalama 40 adet buton oluşturuyorum ve oluştuturken visiblelerini false yapıyorum istediğim yerde açmak istiyorum tüm oluşturulan butonların şu kodu yazıyorum tek bir buton visiblesi true oluyor kod bu

butonları oluşturduğum yer burası
or I := 0 to Length(EnigmaAPI.Categories.turkdizi) - 1 do
  begin

  türkdizifilmbutton:=Tbutton.create(self);

  türkdizifilmbutton.top:=100;
  türkdizifilmbutton.left:=100;
  türkdizifilmbutton.height:=45;
  türkdizifilmbutton.width:=150;
  türkdizifilmbutton.Font.Size:=15;
  türkdizifilmbutton.parent:=(ScrollBox5);
  ScrollBox5.Height:=form2.Height-150;
  türkdizifilmbutton.Align:=altop;
  türkdizifilmbutton.tag:=strtoint( EnigmaAPI.Categories.turkdizi[i].category_id);
  türkdizifilmbutton.caption:=  EnigmaAPI.Categories.turkdizi[i].category_name;
  türkdizifilmbutton.OnClick := türkdiziButtonlarClick;
 end;

visinlelerini true yaptığım yerde burası 

türkdizifilmButton.Visible:=true;

yardımcı olurmusunuz?

@Fesih ARSLAN  lütfen konuya bakarmısın abi

Smile
 

TButton(FindComponent(EnigmaAPI.Categories.turkdizi[i].category_name)).Visible:=True;

i yerine 1,2,3...n yazabilirsiniz.
ama burada live button olduğunu belirtmemişssiz buton çeşisdi çok Tbutton yerine onumu yazacağız

livebutton yazdığımmı hata veriyor
(04-07-2018, Saat: 11:12)arsl01 Adlı Kullanıcıdan Alıntı: [ -> ]
(04-07-2018, Saat: 11:11)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: [ -> ]Smile
 

TButton(FindComponent(EnigmaAPI.Categories.turkdizi[i].category_name)).Visible:=True;

i yerine 1,2,3...n yazabilirsiniz.

süpersina bi teşekkürler hemen uyguluyorum

(04-07-2018, Saat: 11:11)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: [ -> ]Smile
 

TButton(FindComponent(EnigmaAPI.Categories.turkdizi[i].category_name)).Visible:=True;

i yerine 1,2,3...n yazabilirsiniz.
ama burada live button olduğunu belirtmemişssiz buton çeşisdi çok Tbutton yerine onumu yazacağız

livebutton yazdığımmı hata veriyor

Buton tipinizi
türkdizifilmbutton:=Tbutton.create(self);
TButton olarak tanımladığınızdan, işlem yapmak istediğiniz butonu TButton olarak cast etmeniz yeterli olacaktır.
zaten öyle yapıyorum buton oluştururken kodd buü

livebutton(FindComponent(EnigmaAPI.Categories.live[i].category_name)).Visible:=True;
Aşağıdaki gibi bir fonksiyon tanımlayın.
function TForm1.GetLiveButton(LiveButonTag: integer): TButton;
var
 I: Integer;
begin
 for I := 0 to ScrollBox1.ControlCount - 1 do
   if ScrollBox1.Controls[i] is TButton then
   begin
     if ScrollBox1.Controls[i].Tag = LiveButonTag then
     begin
       result := TButton(ScrollBox1.Controls[i]);
       Exit;
     end;
   end;
end;

Tag değerini bildiğiniz bir butonu gizlemek için aşağıdaki kodu kullanabilirsiniz.
GetLiveButton(584).Visible := False;

Tag değerini bildiğiniz bir butonu göstermek için ise aşağıdaki kodu kullanabilirsiniz.

GetLiveButton(584).Visible := True;
çok teşekkürler
Gözden kaçırdığınız bir şey var ama kullanırken. Örneğin;

GetLiveButton(1453).Visible := true;

biçiminde çağırın kodunuzu bakalım ne olacak ;-)
(05-07-2018, Saat: 09:28)Tuğrul HELVACI Adlı Kullanıcıdan Alıntı: [ -> ]Gözden kaçırdığınız bir şey var ama kullanırken. Örneğin;

GetLiveButton(1453).Visible := true;

biçiminde çağırın kodunuzu bakalım ne olacak ;-)

O kısımı özellikle yazmadım Tuğrul hocam. @arsl01 herhangi bir Access violation durumunda, biraz kafa yorsun. Çözümsüz kaldığı noktada tekrar DelphiCan'ın kapısını çalsın. Smile
yaptım hocam uğraştım biraz ama oldu Big Grin
Sayfalar: 1 2 3