RicheditTen boşluk nasıl atılıyor?

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
delphiibo
Üye
Mesajlar: 72
Kayıt: 27 Eki 2005 04:55
Konum: istanbul
İletişim:

RicheditTen boşluk nasıl atılıyor?

Mesaj gönderen delphiibo »

İyi günler. Ben Richedit1'deki metni Richedit2'ye aktarmak istiyorum. Yalnız boşlukların hiçbiri aktarılmayacak.
Ben aşağıdaki yöntemleri denedim neden olmadı acaba?

Kod: Tümünü seç

var
i:integer;
begin
Richedit2.Lines.Clear;
for i:=0 to richedit1.Lines.Count-1 do
Richedit2.Lines.Add(Trim(Richedit1.Lines[i]));
end;
Ayrıca ikinci yönetmi denedim ama boş satırları silmiyor.

Kod: Tümünü seç

function removespaces(s:string) : string;
var
t : string;
i:integer;
begin
t:='';
for i :=1 to length(s) do
  if s[i]<>' ' then t:=t+s[i];
result:=t;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
begin
Richedit2.Lines.Clear;
for i:=0 to richedit1.Lines.Count-1 do
Richedit2.Lines.Add(removespaces(Richedit1.Lines[i]));
end
Onun tek dostu Allah
Hakan Can
Üye
Mesajlar: 634
Kayıt: 04 Mar 2005 04:27
Konum: Ankara

Mesaj gönderen Hakan Can »

AnsiReplaceStr fonksiyonunu kullan (uses kısmına StrUtils'i dahil etmelisin).

Kullanımı:

Kod: Tümünü seç

var
  St1: string;
begin
  St1 := 'Ali Veli vesayre';
  St1 := AnsiReplaceStr(St1, ' ', ''); //boşluklar atılır
end;
Direk şu komutu kullanabilirsin:

Kod: Tümünü seç

Richedit2.Lines.Text := AnsiReplaceStr(AnsiReplaceStr(Richedit1.Lines.Text, ' ', ''), sLineBreak, '');
İyi çalışmalar.
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Re: RicheditTen boşluk nasıl atılıyor?

Mesaj gönderen sabanakman »

delphiibo yazdı:

Kod: Tümünü seç

procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
begin
Richedit2.Lines.Clear;
for i:=0 to richedit1.Lines.Count-1 do
Richedit2.Lines.Add(removespaces(Richedit1.Lines[i]));
end
kodu neredeyse olmuş gibi ek bir kontrol gerekiyor.

Kod: Tümünü seç

procedure TForm1.Button1Click(Sender: TObject);
var
i:integer; S:String;
begin
Richedit2.Lines.Clear;
for i:=0 to richedit1.Lines.Count-1 do begin
//Richedit2.Lines.Add(removespaces(Richedit1.Lines[i]));
S:=removespaces(Richedit1.Lines[i]);
if S<>'' then Richedit2.Lines.Add(S);
end;
end
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Kullanıcı avatarı
delphiibo
Üye
Mesajlar: 72
Kayıt: 27 Eki 2005 04:55
Konum: istanbul
İletişim:

Teşekkür

Mesaj gönderen delphiibo »

:wink: Yardımcı olsuğunuz için çok teşekkür ediyorum. :wink:
Onun tek dostu Allah
Cevapla