![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
cсобытие enter в memo
Змей © (2006-11-27 19:42:00)после набранного текста в memo хочу после каждой строки чтобы вставлялось '</br>'
при нажатии на энтер в событии OnKeyDown пишу следующееprocedure TForm1.MemoKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=vk_return then
Memo.Lines.Add('</br>');
end;
все ничего но </br> переносится еще на одну строку
пример:
1
</br>
2
</br>
а должно быть
1</br>
2</br>
3</br> etc.
чето я туплю совсем
Змей (2006-11-27 21:15:00) [1]всем спасибо. жаль тут не вставишь смайл с выпученными красными глазами и на выкат до лба:)
Алхимик (2006-11-27 20:49:00) [2]> [4] umbra © (27.11.06 20:39)
Фигня получается...
> Змей © (27.11.06 19:42)
procedure TfrmMain.Memo1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
var
LineNumber: integer;
begin
if key = vk_return then begin
LineNumber := SendMessage(Memo1.Handle, EM_LINEFROMCHAR, word(-1), 0);
Memo1.Lines[LineNumber] := Memo1.Lines[LineNumber] + '</br>';
end;
end;
Но на мой взгляд лучше теги вставлять после ввода всего текста...
umbra (2006-11-27 20:39:00) [3]да, пора домой.
TForm1.MemoKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=vk_return then
if memo.SelLength <> 0 then
memo.SelStart := Memo.Selstart;
Memo.SelText := '</br>'
end;
Змей (2006-11-27 20:28:00) [4]Memo.Lines[Memo.Lines.ItemIndex] := Memo.Lines[Memo.Lines.ItemIndex] +'</br>';
если скопировать выше написанное то вот что получается
Undeclared identifier: 'ItemIndex'
Змей (2006-11-27 19:52:00) [5]ой пасиба :))))))))
umbra (2006-11-27 19:44:00) [6]Memo.Lines[Memo.Lines.ItemIndex] := Memo.Lines[Memo.Lines.ItemIndex] +'</br>';