Arşiv Anasayfa Delphi ipuçları
Sayfalar: 1
sahaları kolay boşaltın Gönderen: ahmetkılıç Tarih: 19 October 2007 11:11:28
form üzerinde kullandığını combobox,edit,..... ları kolayca boşaltın.


procedure saha_bos;
var
a:integer;
  begin
  for a:=0 to form4.ControlCount-1 do begin
 if form4.Controls[a].ClassType=Tedit then
   (Form4.Controls[a] as Tedit).Text:='';
   if form4.Controls[a].ClassType=Tcombobox then
  (Form4.Controls[a] as Tcombobox).Text:='';
   if form4.Controls[a].ClassType=Tmaskedit then
  (Form4.Controls[a] as Tmaskedit).Text:='';
  if form4.Controls[a].ClassType=TMemo then
  (Form4.Controls[a] as TMEMO).Text:='';
     end;
  end;
kullanımı

procedure TForm1.FormActivate(Sender: TObject);
begin
saha_bos;
end;
veya nerde isterseniz kullanın

Ynt: sahaları kolay boşaltın Gönderen: kocaturk Tarih: 20 October 2007 04:15:34
 Wink Paylaşım için teşekkürler.
Ynt: sahaları kolay boşaltın Gönderen: cLaW Tarih: 16 November 2007 00:25:03
güzel fikir Very Happy benim aklıma gelmezdi doğrusu Very Happy
Ynt: sahaları kolay boşaltın Gönderen: RewriteRule Tarih: 19 February 2008 17:00:31
Bu procedure'u şu şekilde değiştirebiliyor muyuz?

procedure saha_bos;
var
 I: integer;
 mySender: String;
begin
 mySender := (Sender as TComponent).Name;
 for I:=0 to mySender.ControlCount-1 do
 begin
   if mySender.Controls[I].ClassType = TEdit then
     (mySender.Controls[I] as TEdit).Text := '';
 
   if mySender.Controls[I].ClassType = TDBEdit then
     (mySender.Controls[I] as TDBEdit).Text := '';
 
   if mySender.Controls[I].ClassType = TMemo then
     (mySender.Controls[I] as TMemo).Text := '';
 
   if mySender.Controls[I].ClassType = TDBMemo then
     (mySender.Controls[I] as TDBMemo).Text := '';
 
   if mySender.Controls[I].ClassType = TDBLookupComboBox then
     (mySender.Controls[I] as TDBLookupComboBox).Text := '';
 end;
end;

yani sender'i bir string değişkene atayıp sonra o şekilde kullanmak. böylece her defasında form adı vermekten kurtuluruz. ama delphi bunu kabul edecek mi?