Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2013.06.16;
Скачать: [xml.tar.bz2];

Вниз

Как вставить строку в TkolMemo?   Найти похожие ветки 

 
Nikfel   (2009-06-26 18:28) [0]

Подскажите, пожалуйста. Без kol делал так:
memo1.Lines.Insert(0,"Stroka");
Заранее спасибо.


 
MTsv DN   (2009-06-26 18:54) [1]

Я мож чет не помню, но кажись так:
Memo1.Add("sdafasdf");

А ваще читать книгу по KOL!!!


 
Nikfel   (2009-06-26 19:00) [2]


> Я мож чет не помню, но кажись так:Memo1.Add("sdafasdf");
> А ваще читать книгу по KOL!!!


Вообще-то я искал информацию в книге, но её там не нашел. Про Memo1.Add("sdafasdf"); я знаю, но это не то. Мне надо не добавить строку в конец текста, а вставить в нужное место в тексте.

На kol что ли надо самому писать такую функцию для вставки строки после указанной строки?


 
MTsv DN   (2009-06-26 19:08) [3]

Пардон. Такой вариант подойдет?

Memo1.SelStart := ххх;
Memo1.Selection := "text";


 
Nikfel   (2009-06-26 19:25) [4]


> Memo1.SelStart := ххх;Memo1.Selection := "text";


Можно конечно это использовать, но может можно проще? Такой вариант не удобен, т.к. надо знать с какого места вставлять текст.

Ладно завтра попробую написать код. Но вроде должно быть все гораздо проще.


 
MTsv DN   (2009-06-26 19:59) [5]

> memo1.Lines.Insert(0,"Stroka");
А здесь не надо знать куда вставлять? Или Вам надо с начала? Тогда так:
Memo1.Items[0] := "Text";


 
Nikfel   (2009-06-27 16:40) [6]

Вот что придумал:

function InsertStart(strText:string; intID:integer):integer;
var strD:string;
i,d,k:integer;
begin
i:=pos(#13#10,strText);
d:=0;k:=0;
strD:=strText;
if i<>0 then if intID=0 then begin
result:=d;
exit;
end;
while i<>0 do begin
 inc(k);
 strD:=Copy(strD,i+2,Length(strD)-i);
 if k>0 then d:=d+i+1 else d:=d+i+2;
 if k=intID then begin
   result:=d;
   break;
 end;
 i:=pos(#13#10,strD);
end;
end;

procedure TForm1.ButtonClick(Sender: PObj);
begin
memo1.SelStart:=insertstart(memo1.Text,3);
memo1.Selection:="stroka"#13#10;
SendMessage(memo1.Handle,WM_LBUTTONDOWN,MK_LBUTTON,0);
SendMessage(memo1.Handle,WM_LBUTTONUP,MK_LBUTTON,0);
end;


Может можно проще или только так делать?


 
Vladimir Kladov ©   (2009-06-27 22:25) [7]

Item2Pos - возвращает позицию символа в началу указанной строки.
Есть Pos2Item, если что.


 
Nikfel   (2009-06-28 13:08) [8]

Спасибо. Через Item2Pos гораздо проще делать, чем так как я пытался.



Страницы: 1 вся ветка

Форум: "KOL";
Текущий архив: 2013.06.16;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.002 c
15-1359970962
Empleado
2013-02-04 13:42
2013.06.16
compressed http/https


15-1356445425
Oleguslu
2012-12-25 18:23
2013.06.16
Зкспорт cxGrid в Excel


15-1360269005
Юрий
2013-02-08 00:30
2013.06.16
С днем рождения ! 8 февраля 2013 пятница


15-1360249924
Артём
2013-02-07 19:12
2013.06.16
CSS


15-1359835956
TUser
2013-02-03 00:12
2013.06.16
Как научиться вести документацию?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский