Просмотр полной версии : findialog memo
У меня в Memo1 текст
РОССИЯ
Отправьте SMS сообщение
с текстом 40956 пробел 1224002 на номер 3649
Если SMS не отправляется на номер 3649, попробуйте отправить на 1171
Я ищу финддиалогом '40956 пробел' находит и выделает, Мне нужно чтобы например в Label1 записало строку мемо содержащий это слово '40956 пробел'.
spider-intruder
25.03.2009, 13:37
Покажи мне того человека который учил писать тебя ТЗ - я его лично задушу собственными руками. Из того что ты написал непонятно НИХРЕНА! Давай поновой!
стандартный пример из Delphi World + парочку строк отсебятины
var
FSelPos: integer;
procedure TForm1.Button1Click(Sender: TObject);
begin
FindDialog1.Execute;
end;
procedure TForm1.FindDialog1Find(Sender: TObject);
var
S:string;
startpos:integer;
line:integer;
x:integer;
begin
with TFindDialog(Sender) do
begin
if FSelPos=0 then Options:=Options-[frFindNext];
if frfindNext in Options then
begin
StartPos:=FSelPos+Length(Findtext);
S:=Copy(Memo1.Lines.Text, StartPos, MaxInt);
end
else
begin
S:=Memo1.Lines.Text;
StartPos:=1;
end;
FSelPos:=Pos(FindText, S);
if FSelPos>0 then
begin
FSelPos:=FSelPos+StartPos-1;
s:=memo1.Lines.Text;
line:=1;
for x:=1 to FSelPos-1 do if (s[x]=#13) and (s[x+1]=#10) then inc(line);
label1.Caption:=inttostr(line)+': '+memo1.lines.Strings[line-1];
Memo1.SelStart:=FSelPos-1;
Memo1.SelLength:=Length(FindText);
Memo1.SetFocus;
end
else
begin
if frfindNext in Options then S:=Concat('There are no further occurences of "', FindText,'" in Memo1.')
else S:=Concat('Could not find "', FindText, '" in Memo1.');
MessageDlg(S, mtError, [mbOK], 0);
end;
end;
end;
Чето я тупанул(
можно сделать так, вот из текста:
РОССИЯ
Отправьте SMS сообщение
с текстом 40956 пробел 1224002 на номер 3649
Если SMS не отправляется на номер 3649, попробуйте отправить на 1171
нашел '40956 пробел' и добавить последующие 8 символов?
т.к. они генерируются и всегда разные показывают
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot