nasıl bir algoritma ile olur?

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
forumsad
Üye
Mesajlar: 296
Kayıt: 29 Tem 2010 10:47

nasıl bir algoritma ile olur?

Mesaj gönderen forumsad »

Resim

bir veya bir kaç editin içini sildikten sonra boşlukları doldur btonuna tıklayına sıralı olarak editlerin kayması lazım
nasıl yapacağımı bilemedim..

örnek 5-6 cı editi sildik diyelim butona tıklayınca 7-8 5-6 nın yerine kayacak 9-10 boş kalacak

bu konuda fikirlerinize ihtiyacım var

saygılarımla
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: nasıl bir algoritma ile olur?

Mesaj gönderen SimaWB »

Öncelikle Index'i girilen Edit varsa bunu bize TEdit olarak döndüren bir fonksiyona ihtiyaç var:

Kod: Tümünü seç

function GetEditBox(Index: integer; var edt: TEdit): Boolean;
var c: TComponent;
begin
  Result := False;
  c := FindComponent('Edit'+IntToStr(Index));
  if (c<>nil) and (c is TEdit) then
  begin
    edt := TEdit(c);
    Result := True;
  end;
end;
Edit sayısı kadar bir döngü içinde bu fonksiyon yardımıyla ilk boş olan TEdit'i bulup sırasıyla ondan sonrakilerin içeriğini bir önceki edit'e atalım:

Kod: Tümünü seç

const
  EditCount = 10;
var
  tmpEdit1, tmpEdit2: TEdit;
  i,j: integer;
begin
  for i := 1 to EditCount-1 do
  begin
    if GetEditBox(i, tmpEdit1) then
    begin
      if (tmpEdit1.Text='') then
        for j := i+1 to EditCount do
        begin
          if GetEditBox(j, tmpEdit2) then
          begin
            tmpEdit1.Text := tmpEdit2.Text;
            tmpEdit1 := tmpEdit2;
            tmpEdit2.Text := '';
          end;
        end;
    end;
  end;
end;
There's no place like 127.0.0.1
forumsad
Üye
Mesajlar: 296
Kayıt: 29 Tem 2010 10:47

Re: nasıl bir algoritma ile olur?

Mesaj gönderen forumsad »

çok teşekkürler hocam

saygılar
Cevapla