Tüm Platformlar için Hızlı Uygulama Geliştirme Kitap Yayın Süreci
Kitap gözden geçirilmek üzere BTG (Bilgi ve Teknoloji Grubu) 'na gönderildi. 05.10.2018-14:10
BTG (Bilgi ve Teknoloji Grubu) tarafından iki sayfalık bir reklam tasarımı bekleniyor. 08.10.2018 - 15:30
Kitap basım talebi değerlendirilmek üzere matbaaya bildirildi. Matbaadan basım süreci hakkında bilgi bekleniyor. 15.10.2018 - 15:34
Kitap 1.000 adet basım talebi ile matbaaya gönderildi. 16.10.2018 - 16:50

Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Form Componetleri Copy & Paste
#1
Uygulamada global olan bir formdaki Edit, CheckBox, ComboBox, değerlerini kopyalayıp, yapıştırmak için bir kodcuk yazmıştım buraya da ekleyeyim Wink

uses ClipBrd;

procedure ClipBoardCopy;
var
 i: integer;
 t: TStringList;
begin
 t := TStringList.Create;
 try
   for i := 0 to ComponentCount - 1 do
   begin
     if (Components[i] is TEdit) then
     begin
       t.Add((Components[i] as TEdit).Name + '=' +
         (Components[i] as TEdit).Text)
     end;
     if (Components[i] is TComboBox) then
     begin
       t.Add((Components[i] as TCheckBox).Name + '=' +
         Booltostr((Components[i] as TCheckBox).Checked))
     end;
     if (Components[i] is TComboBox) then
     begin
       t.Add((Components[i] as TComboBox).Name + '=' +
         inttostr((Components[i] as TComboBox).ItemIndex))
     end;
   end;
 finally
   Clipboard.AsText := t.Text;
   t.Free;
 end;
end;

procedure ClipBoardPaste;
var
 i,a: integer;
 t: TStringList;
begin
 t := TStringList.Create;
 try
  t.Text := Clipboard.AsText;
  for a := 0 to t.Count - 1 do
  begin
  for i := 0 to ComponentCount - 1 do
   begin
     if (Components[i] is TEdit) then
     begin
       if ((Components[i] as TEdit).Name =  Copy(t[a],0,Pos('=',t[a])-1) ) then
           (Components[i] as TEdit).Text := Copy(t[a],Pos('=',t[a])+1,Length(t[a]));
     end;
     if (Components[i] is TCheckBox) then
     begin
       if ((Components[i] as TCheckBox).Name =  Copy(t[a],0,Pos('=',t[a])-1) ) then
           (Components[i] as TCheckBox).Checked := StrToBool(Copy(t[a],Pos('=',t[a])+1,Length(t[a])));
     end;
    if (Components[i] is TComboBox) then
     begin
       if ((Components[i] as TComboBox).Name =  Copy(t[a],0,Pos('=',t[a])-1) ) then
           (Components[i] as TComboBox).ItemIndex := StrToInt(Copy(t[a],Pos('=',t[a])+1,Length(t[a])));
     end;
   end;
  end;
 finally
   t.Free;
 end;

end;
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Kuvvete dayanamayan adalet aciz, 
Adalete dayanamayan kuvvet zalimdir.
WWW
Cevapla
#2
Teşekkürler paylaşım için.

Bende Clipboard üzerinde bu aralar çalışıyordum. Kendi clipboard formatımı oluşturabilirmiyim acaba diye çıktım yola. Sizin paylaşımın önce ne işe yaradığını anlamamıştım. Daha sonra farkettim yaptığınız şeyi. Kendi Clipboard formatını oluşturma hakkında biraz araştırma yaptım ve sizin yaptığınız mantığıda içine alan birşeyler yazdım. 

Clipboard kütüphanesini referans alıp kendi Clipboard kütüphanemi oluşturdum. İçerisinede sizin yapmış olduğunuz mantığı ekledim. Ctrl+c ile bir formdaki bilgileri kopyalayıp başka bir formda aynı bileşen ismindeki bileşenlere bu bilgileri yapıştırıyor. Sadece Edit,Checkbox ve Memo için kodlar var kullanmak istenilen bileşenleri ekleyebilirsiniz.

Bunu biraz daha geliştirip belki form kapanmadan bir geçmiş mantığı yakalanabilir. Böylece eski bilgiler belli bir yere kadar geri getirilebilinir.

Görünüm:
G0k2g7.gif

Dosya:
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol indirebilirsiniz | Yandex Disk
WWW
Cevapla
#3
Yarar sağladığına sevindim.
Bende aynı mantıkta yaptım işi miss gibi oldu Smile
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Kuvvete dayanamayan adalet aciz, 
Adalete dayanamayan kuvvet zalimdir.
WWW
Cevapla

Konuyu Paylaş : facebook gplus twitter





Konuyu Okuyanlar: 1 Ziyaretçi