Listboxa kelimeleri nasıl aktarabilirim?

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
executenon
Üye
Mesajlar: 6
Kayıt: 02 Nis 2013 01:53

Listboxa kelimeleri nasıl aktarabilirim?

Mesaj gönderen executenon »

Merhaba hocam zorlu bir ödevin son noktasına geldik.Bir editboxın içindeki cumleyi kelime kelime listboxa aktarmam gerekiyor.Örnek vermek gerekirse ;

bugün hava oldukça güzel.Ama akşama serinleyecekmiş.Öyle söyledi haberler.

Şeklinde ki cümleyi listboxa şu şekilde atmam gerekiyor.Yardım edebilicek birisi varmı acaba?.Şimdiden teşekkürederim.

bugun
hava
oldukça
güzel.
Ama
akşama
serinleyecekmiş.
Öyle
söyledi
haberler.
Kullanıcı avatarı
greenegitim
Üye
Mesajlar: 713
Kayıt: 28 Nis 2011 10:33
Konum: İstanbul

Re: Listboxa kelimeleri nasıl aktarabilirim?

Mesaj gönderen greenegitim »

Boşluklardan yola çıkman lazım şöyleki

Kod: Tümünü seç

     function Segment(Var S:String;Sp:Char):String;
Var Ix:Integer;
begin
  S:=TrimLeft(S);
  Ix:=Pos(Sp,S);
  if IX<>0 then
  begin
    Segment:=Copy(S,1,Ix-1);Delete(S,1,Ix);
  end
  else begin
    Segment:=S;S:=''
  end;
end;
Buttonun click olayına

Kod: Tümünü seç

  S:=Edit1.Text;
  While S<>'' do
  begin
     Seg:=Segment(S,' ');
     if Seg<>'' then ListBox1.Items.Add(Seg); // kelimeleri listbox a yükle
Mücadele güzelleştirir!
executenon
Üye
Mesajlar: 6
Kayıt: 02 Nis 2013 01:53

Re: Listboxa kelimeleri nasıl aktarabilirim?

Mesaj gönderen executenon »

tamamda hep boşluk yokki noktada var o kelimeyi nasıl aldırıcam?
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: Listboxa kelimeleri nasıl aktarabilirim?

Mesaj gönderen SimaWB »

Noktalardan sonra boşluk olsaydı şu şekilde çok kolaydı:

Kod: Tümünü seç

ListBox1.Items.Delimiter := ' ';//boşluk
ListBox1.Items.DelimitedText := Edit1.Text;
There's no place like 127.0.0.1
executenon
Üye
Mesajlar: 6
Kayıt: 02 Nis 2013 01:53

Re: Listboxa kelimeleri nasıl aktarabilirim?

Mesaj gönderen executenon »

Gerçektende böyle çok kolaymış.Ama hoca işte illa zor olucak :).Yinede teşekkürederim.
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: Listboxa kelimeleri nasıl aktarabilirim?

Mesaj gönderen SimaWB »

Önce cümlede noktadan sonraki kısımlara boşluk atayıp sonra daha önce verdiğim kodu kullanabilirsiniz:

Kod: Tümünü seç

var
  i, len: integer;
  s: string;
begin
  s := Edit1.Text;
  len := Length(Edit1.Text);
  for i := len downto 1 do
  begin
    if (s[i] = '.') and (i<len) then
      Insert(' ', s, i+1);
  end;
  ListBox1.Items.Delimiter := ' ';//boşluk
  ListBox1.Items.DelimitedText := s;
end;
There's no place like 127.0.0.1
Cevapla