|
#1
|
||||
|
||||
Есть проблемa
Дело вот в чем смотрим внизу
Код:
procedure TForm1.Button1Click(Sender: TObject);//создать begin memo1.Lines.Insert(5, 'Electronic_Arts'); end; если еще добавить так то уже этот не будет на 5ом линнии |
#2
|
||||
|
||||
Код:
procedure TForm1.Button1Click(Sender: TObject); var i: integer; begin for i := 0 to Memo1.Lines.Count-1 do if Memo1.Lines[i] = 'Electronic_Arts' then begin Memo1.Lines.Delete( i ); Break; end; end; |
#3
|
||||
|
||||
Все ОК!
А как после добавлении текста изменить ту месту где находится текст из edit1 Код:
begin memo1.lines.insert(5, 'Electronic_Arts'+edit1.text); end; |
#4
|
||||
|
||||
Код:
// Заменить часть строки, содержащей подстроку из Edit procedure TForm1.Button1Click(Sender: TObject); var i: integer; begin for i := 0 to Memo1.Lines.Count-1 do if Pos( Edit1.Text, Memo1.Lines[i] ) > 0 then begin Memo1.Lines[i] := StringReplace( Memo1.Lines[i], Edit1.Text, 'Новое значение', [] ); Break; end; end; // Заменить всю строку, содержащей подстроку из Edit procedure TForm1.Button2Click(Sender: TObject); var i: integer; begin for i := 0 to Memo1.Lines.Count-1 do if Pos( Edit1.Text, Memo1.Lines[i] ) > 0 then begin Memo1.Lines[i] := StringReplace( Memo1.Lines[i], Memo1.Lines[i], 'Новое значение', [] ); Break; end; end; |
#5
|
||||
|
||||
Мне скорее всего подходит вот этот
Код:
procedure TForm1.Button2Click(Sender: TObject); var i: integer; begin for i := 0 to Memo1.Lines.Count-1 do if Pos( Edit1.Text, Memo1.Lines[i] ) > 0 then begin Memo1.Lines[i] := StringReplace( Memo1.Lines[i], Edit1.Text, 'Новое значение', [] ); Break; end; end; я изменил там 'Новое значение' на Edit1.Text и поставил процедуру на KeyPress что бы добавления изменились при нажатии клавиш (добавления по буквам) но что то не получается ЧТО ДЕЛАТЬ? |
#6
|
||||
|
||||
Найди индекс строки, в которую собираешься добавлять, и делай так:
Memo1.Lines[i] := Memo1.Lines[i] + Edit1.text |
#7
|
||||
|
||||
Если можно кодик пожалуста а то мне худа придется
ЗАРАНИЯ СПОСИБО |
#8
|
||||
|
||||
Я понял ты имел введу так
Код:
var i:integer; begin for i := 0 to Memo1.Lines.Count-1 do if Pos( Edit1.Text, Memo1.Lines[i] ) > 0 then begin Memo1.Lines[i] := Memo1.Lines[i] + Edit1.text; Break; end; продолжительность добавления E+El+Ele+Elec+Elect+................+и так до конца.. что делать? |
#9
|
||||
|
||||
Посмотри... primer.zip
|
#10
|
||||
|
||||
|
#11
|
||||
|
||||
primer_new.zip
Зачем тебе нужно такое извращение? |
#12
|
||||
|
||||
Спосибо за все
остался последний вопрос Если в одной строке 2 таких мест например code.code "edit1.text" code="edit2.text" |
#13
|
||||
|
||||
Точно так-же, только вставлять текст из эдитов нужно в разные места строки, в зависимости от того, содержимое какого эдита меняется.
|