Witam. Piszę program i <ort>niewiem</ort> jak rozwiać pewien problem:
<ort>otóż </ort>mam program z takimi komponentami:
Edit1
Edit2
Button1
Memo1
Chcę osiągnąć coś takiego:
Po wprowadzeniu ciągu znaków do Edit1 i nacisnieciu Button1, program znajduje linię zawierającą owy ciąg znaków w któreś ort! Memo1 i wyświetla ją w całości w Edit2.
Spróbuje to jakoś pokazać:
Edit1 --> Button1 --> Memo1 --> Edit2
ciąg: "szar" naciskam "ładna pogoda" efekt: wyśw. "szary dzień"
"szary dzień"
"zła droga"
Stworzyłem taki kod:
procedure TForm1.Button1Click(Sender: TObject);
var
Line : integer;
begin
if pos(edit1.text, Memo1.text) > 0 then
Line:= Memo1.Lines.IndexOf(Edit1.Text);
(edit2.text:=Memo1.Lines.Strings[line]);
end;
Program oczywiście nie działa po mojej myśli, ponieważ linia:
Line:= Memo1.Lines.IndexOf(Edit1.Text);
znajduje numer<ort> lini </ort>po zawartości całej ort! Memo1. Jeżeli wpiszę całe zdanie z jakieś lini Memo1 do Edit1 i nacisnę Button1 to oczywiście program znajdzie linię i ją wyświetli w Edit2. Jak chcę zrobić aby wystarczyło wpisać jakiś kawałek ort! a program wyświetli w Edit2 całą linię która zawiera owy ciąg wpisany o do Edit1.
Jeżeli ktoś zrozumiał o co mi chodzi prosiłbym o odpowiedź jak poprawić kod który napisałem. Zapewne chodzi tu o jakąś funkcję która określi numer <ort>lini </ort>po pozycji ciągu znaków w <ort>lini </ort>Memo1. A może jest inny lepszy sposób aby zrobić taki program. Z góry dziekuję za wszystkie odpowiedzi, bo przeszukałem mnóstwo stron w internecie w poszukiwaniu wiedzy jak zrobić ten program, całą książkę Delphi 7 kompendium wiedzy i nie potrafię zrobić, aby program działał prawidłowo. Życzę wszystkim napisania wielu udanych programów. Pozdrawiam Delphiuser.
//pisz sensowne tytuły topiców - następnym razem topic poleci do śmieci. moderator pq