Форум: "Основная";
Текущий архив: 2005.01.23;
Скачать: [xml.tar.bz2];
ВнизПрограммно подсветить строку. Найти похожие ветки
← →
Jeka (2005-01-12 15:15) [0]Скажите вот в TListBox можно подсветить строку написав:
Form1.ListBox.ItemIndex := номер строки!
А как сделать тоже самое в TMemo?
← →
Александр Иванов © (2005-01-12 15:18) [1]Memo1.SelStart:=
Memo1.SelLength:=
Memo1.SetFocus;
← →
Orc © (2005-01-12 15:20) [2]Ставишь курсор на начало искомой строки:
Memo1.JumpTo(n,0);
И делаешь что-то типа (если память не изменяет)
Memo1.SelStart:=0;
Memo1.SelLength:=100;
← →
Jeka (2005-01-12 15:21) [3]тогда встречный вопрос:
вот мне известно только номер строки - как мне узнать начальный и конечный номер символа?
← →
Александр Иванов © (2005-01-12 15:30) [4]Jeka (12.01.05 15:21) [3]
result:=0;
for i:=0 to Min(Memo1.Lines.Count-1,Number) do
result:=result+Length(Memo1.Lines[i]);
Result:=Result+Number*2;
Result - номер первого символа, строки Number
← →
KSergey © (2005-01-12 15:31) [5]> [2] Orc © (12.01.05 15:20)
> Memo1.JumpTo(n,0);
А можно подробнее?
Или это после D5 появилось?
> [3] Jeka (12.01.05 15:21)
> тогда встречный вопрос:
> вот мне известно только номер строки
> как мне узнать начальный и конечный номер символа?n := Memo1.Perform(EM_LINEINDEX, {номер строки с 0}, 0);
if n >= 0 then // тогда нет ошибок, в n = номер символа
> конечный номер символа?
Можно попробовать тоже самое, но строку на 1 больше передать и откакиться назад за 2 (обычно) символа перевода строки
← →
KSergey © (2005-01-12 15:33) [6]Даже вру в [5]
Тогда надо EM_LINELENGTH применить аналогичным образом
← →
KSergey © (2005-01-12 15:34) [7]в [6] имеется в виду вторая часть из [5], т.е. по поводу конечного символа
← →
begin...end © (2005-01-12 15:35) [8]> [6] KSergey © (12.01.05 15:33)
Можно и Length(Memo.Lines[...]).
← →
Jeka (2005-01-12 15:42) [9]
> Александр Иванов
не отрабатывает Memo1.SetFocus;Form1.Memo1.SelStart:=2;
Form1.Memo1.SelLength := 3;
Form1.Memo1.SetFocus;
← →
Александр Иванов © (2005-01-12 15:43) [10]Не отрабатывает - это как? Что происходит?
← →
Jeka (2005-01-12 15:47) [11]вообще ничего!
даже если выделяю текст вручную, то после выполнения тех строчек теряеться выделение.
P.S я ети 3 строчки вписал в обработчик кнопки и хочу чтоб выделялся текст, когда я нажал на кнопку!
← →
KSergey © (2005-01-12 16:02) [12]Возможно, попадает на переводы строк
Попробуй в Memo внести текст в первую же строку длиной не менее 6 символов
← →
Александр Иванов © (2005-01-12 16:06) [13]KSergey © (12.01.05 16:02) [12]
Даже если встречаются переводы должно работать корректно
← →
KSergey © (2005-01-12 16:11) [14]> [13] Александр Иванов © (12.01.05 16:06)
> Даже если встречаются переводы должно работать корректно
А оно и работает корректно, я думаю
Просто может там в Memo вбиты 10 пустых строк вначале? Или того прикольнее - там большой текст и Memo проскроллирован в конец ;)
← →
Jeka (2005-01-12 16:23) [15]у меня всего там 2 строчки в каждой по 10 символов!
← →
Neznaika © (2005-01-12 16:53) [16]
> не отрабатывает Memo1.SetFocus;
> <_____
> Form1.Memo1.SelStart:=2; |
> Form1.Memo1.SelLength := 3; |
> Form1.Memo1.SetFocus;--------
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.01.23;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.038 c