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

Вниз

Проблема с ограничением размера текста в TMemo   Найти похожие ветки 

 
SergP   (2003-08-10 00:19) [0]

Нужно вести протокол работы проги, использую TMemo, но при его заполнении новые строки не добавляются. (memo1.lines.add(...))
Думаю что лучше было бы понемногу удалять начало текста. Но не знаю как определить его текущий размер. По количеству строк его даже приблизительно не определишь, так как строки разной длины.
А мне нужно чтобы если осталось n байт до ограничения - то удалять одну или несколько первых строк. Вобщем посоветуйте как быть. Если есть возможность определить текущий размер текста то подскаджите как это делается, если нет, то предложите другой более удобный вариант для ведения протокола работы проги...


 
Vulko   (2003-08-10 00:24) [1]

Можно сохранить в файл, и судуть по его размеру.


 
Anatoly Podgoretsky   (2003-08-10 00:24) [2]

Сменить на TRichEdit


 
Shuric   (2003-08-10 00:26) [3]

if Memo1.Lines.Count > 1000 do Memo1.Delete(1000)
либо Memo1.Lines.Delete(1000), не помню точно :)


 
Marser   (2003-08-10 00:33) [4]


> if Memo1.Lines.Count > 1000 do Memo1.Delete(1000)
> либо Memo1.Lines.Delete(1000), не помню точно :)

Memo1.Lines.Delete(1000) естественно.


 
Anatoly Podgoretsky   (2003-08-10 00:36) [5]

Vulko © (10.08.03 00:24)
Сохранять не к чему, свойство TEXT это полностью весь текст, к которому можно применить Length


 
SergP   (2003-08-10 01:07) [6]


> Anatoly Podgoretsky © (10.08.03 00:36)
> Vulko © (10.08.03 00:24)
> Сохранять не к чему, свойство TEXT это полностью весь текст,
> к которому можно применить Length


Вот блин. Действительно. Как-то сразу я не врубился...
Кстати еще вопрос: Какой все таки макс. размер текста может быть?
Я хочу перед добавлением новой строчки написать:
while length(memo1.lines.Text)>max-200 do memo1.Lines.Delete(0);
т.е. нужно хранить в TMEMO как можно больше и удалять первые строчки только по мере острой необходимости (когда не будет хватать места для новой строчки).
Где-то читал что макс. размер около 64Кбайт. Но вот у меня перед глазами книга в которой написано что 40976 байт. Чему верить?


 
TButton   (2003-08-10 01:19) [7]

64Kb. исправленому верить, а в книге поди старая мемка... я такую цифру в хелпе к 1й Дельфе видел.


 
SergP   (2003-08-10 01:42) [8]


> TButton © (10.08.03 01:19)
> 64Kb. исправленому верить, а в книге поди старая мемка...
> я такую цифру в хелпе к 1й Дельфе видел.


Книга Delphi 6 (В.Фаронов)


 
Anatoly Podgoretsky   (2003-08-10 11:16) [9]

SergP © (10.08.03 01:07)

Где-то читал что макс. размер около 64Кбайт.
Но вот у меня перед глазами книга в которой написано что 40976 байт.


Первое значение это теорический предел для мемо на прлатформе Win9x, второй это более реальный размер, поскольку эти 64к используются не только для мемо, но и для других объектов ОС.
Реально можешь расчитывать на 32-36к

Чему верить?
Так что более верь второму, если ты проведешь эксперименты с многократной повторной загрузкой файла, то увидишь, что эта величина будет меняться в пределах нескольких килобайт.

Может тебе не мучиться, а использовать RichEdit? у него предел 2 гб вне зависимости от ОС. И вместо ограничения длины, лучше ограничить количество строк.



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

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

Наверх




Память: 0.46 MB
Время: 0.008 c
14-81868
Man
2003-08-08 13:07
2003.08.25
неинициализация параметрами при >1 объекте данного класса


3-81592
RDA
2003-07-29 17:22
2003.08.25
Проблема с импортом большого числа записей


14-81916
SPIRIT
2003-08-07 13:03
2003.08.25
А ДАВАЙТЕ *.EXE ФАЙЛ УМЕНЬШИМ


1-81713
AlexKniga
2003-08-08 19:10
2003.08.25
Сортировка массива с минимальным числом перестановок элементов


4-81998
den
2003-06-24 10:24
2003.08.25
файловая система





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