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

Вниз

Лимит строк в RichEdit   Найти похожие ветки 

 
Greenchel ©   (2006-11-09 11:46) [0]

Как задать лимит строк в RichEdit, например, чтобы при достижении 50 строк те что в конце стирались бы.


 
Vlad Oshin ©   (2006-11-09 12:06) [1]

procedure TForm1.RichEdit1Change(Sender: TObject);
begin
if    Richedit1.Lines.Count>5 then Richedit1.Lines.Delete(0);


 
Anatoly Podgoretsky ©   (2006-11-09 12:06) [2]

> Greenchel  (09.11.2006 11:46:00)  [0]

Таких свойств или сообщений не существует


 
RASkov   (2006-11-09 12:08) [3]


> Vlad Oshin ©   (09.11.06 12:06) [1]

Так будут стираться в начале


 
Palladin ©   (2006-11-09 12:18) [4]

Ну подумать и догадаться что для конца будет

Richedit1.Lines.Delete(Richedit1.Lines.Count-1);

совсем соображалки нехватает?


 
Palladin ©   (2006-11-09 12:19) [5]


> RASkov   (09.11.06 12:08) [3]

упс... пп :) думал что это автор написал :)


 
Greenchel ©   (2006-11-09 12:20) [6]

Выдаёт ошибку: RichEdit line insertion error


 
Vlad Oshin ©   (2006-11-09 12:23) [7]

действительно...
так ведь удаляет

ну так смотреть, обработать, можть что еще


 
Greenchel ©   (2006-11-09 12:24) [8]

А у меня даже не удаляет :D Просто пишет ошибку и всё ))


 
Greenchel ©   (2006-11-09 12:27) [9]

Начало удаляться :D
Не получается отключить ошибку через
try...
except...


 
RASkov   (2006-11-09 13:28) [10]


> Greenchel ©   (09.11.06 12:27) [9]

Покажи свой "ограничитель строк" Т.е. кусок кода где ты пытаешься решить проблему. Подправим...


 
Greenchel ©   (2006-11-09 15:21) [11]

procedure TForm1.RichEdit1Change(Sender: TObject);
begin
if Richedit1.Lines.Count>5 then Richedit1.Lines.Delete(0);
end;


Строку удаляет при этом выдаёт:
RichEdit line insertion error


 
Ketmar ©   (2006-11-09 15:49) [12]

>[11] Greenchel(c) 9-Nov-2006, 15:21
>RichEdit line insertion error
D7. не выдаёт. печатаю, удаляет. курсор, правда, прыгает в начало, но это уже домашнее задание.


 
Greenchel ©   (2006-11-09 15:54) [13]


> D7. не выдаёт. печатаю, удаляет. курсор, правда, прыгает
> в начало, но это уже домашнее задание.

1) У меня тоже D7, но ошибку как выдавал так и выдаёт
2) Курсор прыгающий в начало уже не проблема, здесь меня этому научили :D


 
Ketmar ©   (2006-11-09 16:05) [14]

>[13] Greenchel(c) 9-Nov-2006, 15:54
>1) У меня тоже D7, но ошибку как выдавал так и выдаёт
значит, ошибка не там.


 
Greenchel ©   (2006-11-09 16:26) [15]

хм... но появляется она только при достижении заданного порога - если больше 5 строк


 
Gloomer ©   (2006-11-09 16:27) [16]


> Greenchel ©   (09.11.06 16:26) [15]
> хм... но появляется она только при достижении заданного
> порога - если больше 5 строк

А где в приведенном примере 17-ая строка типа
RichEdit1.Lines.Add("...") ???


 
Greenchel ©   (2006-11-09 16:31) [17]


> А где в приведенном примере 17-ая строка типа
> RichEdit1.Lines.Add("...") ???

При чём здесь это? O_o


 
Gloomer ©   (2006-11-09 16:36) [18]


> Greenchel ©   (09.11.06 16:31) [17]
При чём здесь это? O_o

Хочешь сказать, что ошибка происходит не при использовании метода Insert? (Add так же его использует)


 
Greenchel ©   (2006-11-09 16:41) [19]

Я добавляю строку так:
AddColoredLine(RichEdit1, Edit1.Text, ColorBox1.Selected);
Через процедуру:
procedure AddColoredLine(ARichEdit: TRichEdit; AText: string; AColor: TColor);
begin
with ARichEdit do
 begin
   SelStart := Length(Text);
   SelAttributes.Color := AColor;
   Lines.Add(AText);
 end;
end;


 
Gloomer ©   (2006-11-09 16:45) [20]

Ответа на вопрос [0] так и не было:
while Richedit1.Lines.Count>=50 do
 Richedit1.Lines.Delete(Richedit1.Lines.Count-1);


 
Gloomer ©   (2006-11-09 16:46) [21]

procedure AddColoredLine(ARichEdit: TRichEdit; AText: string; AColor: TColor);
begin
with ARichEdit do
begin
  SelStart := Length(Text);
  SelAttributes.Color := AColor;
  while Lines.Count>48 do
     Lines.Delete(Lines.Count-1);
  Lines.Add(AText);
end;
end;

???


 
Greenchel ©   (2006-11-09 16:52) [22]


> Gloomer

ЫЫЫ, спасибо :)
вот тот кусок который мне был нужен
while Lines.Count>5 do
Lines.Delete(0);


 
Ketmar ©   (2006-11-09 16:54) [23]

>[22] Greenchel(c) 9-Nov-2006, 16:52
>вот тот кусок который мне был нужен
ах, если бы... не это тебе надо, совсем не это...


 
Greenchel ©   (2006-11-09 16:55) [24]


> Ketmar

Почему? O_o кажется всё работает... Первые строчки при достижении предела стираются... Правда для чата мне нужно немножко другое: надо чтобы стиралась не строка а фраза участника, но сойдёт и так :)


 
Gloomer ©   (2006-11-09 16:59) [25]

> Greenchel ©   (09.11.06 16:52) [22]
>вот тот кусок который мне был нужен
while Lines.Count>5 do
Lines.Delete(0);

Странные представления о конце...

> Ketmar ©   (09.11.06 16:54) [23]
> ах, если бы... не это тебе надо, совсем не это...

точно - для начала надо научиться корректно задавать вопросы :-)


 
Greenchel ©   (2006-11-09 17:01) [26]


> Gloomer

Представления о конце нормальные, в чате сообщения идут сверху вниз, так получилось ))



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

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

Наверх





Память: 0.5 MB
Время: 0.057 c
15-1163131418
Slider007
2006-11-10 07:03
2006.11.26
С днем рождения ! 10 ноября


3-1159344071
DancerMan
2006-09-27 12:01
2006.11.26
SQL функция IIF


15-1162586445
ProgRAMmer Dimonych
2006-11-03 23:40
2006.11.26
Наверное, уже неоднократно этот вопрос задавали, но...


3-1158748245
Alek_1
2006-09-20 14:30
2006.11.26
Вопрос по безопасности..


4-1152782207
17Landgraf
2006-07-13 13:16
2006.11.26
Как увидеть скрытый объект?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский