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

Вниз

"Другие" символы в Memo   Найти похожие ветки 

 
click   (2006-11-01 17:52) [0]

Описание:
на форме с Align=Client лежит Memo, форма с изменяемыми размерами.
Задача:
Когда при Resize формы весь текст находящейся в Memo перестанет в него (в Memo) помещаться (визуально) необходимо об этом проинформировать пользователя... (мол ты видиш не все, если растянуть - там еще текст)
скрол бары не пойдут...
есть идея: в такой ситуации в правый нижний угол Memo помещать некие символы например два треугольничка (как это реализовано в ATNotes - если кто пользовался) которые выглядят примерно так |> |>
только закрашенные естественно...
Так вот вопросы:
Как в Мемо вставить символы которых нет на клаве или вообще произвольные символы?
Как узнать какой из всех задействованных Lines в Мемо видим в самом низу, т.е. на котором заканчивается отображение текста...


 
@!!ex ©   (2006-11-01 17:55) [1]

Теме поможет:
OnPaint
Canvas.Draw
Canvas.TextHeight
Canvas.TextWidth
Canvas.Height
Width
Height
Lines.Count


 
@!!ex ©   (2006-11-01 17:55) [2]

Могу пример накатать за 2 wmz


 
click   (2006-11-01 18:01) [3]


> @!!ex ©   (01.11.06 17:55) [1]
> Теме поможет:OnPaintCanvas.DrawCanvas.TextHeightCanvas.TextWidthCanvas.
> HeightWidthHeight

несомневаюсь...
если их рисовать! а если вставить как печатаемые символы???


> >>LinesCount

а вот здесь бы я на примерчик посмотрел, т.к насколько я помню это "линий всего" а не "линий сейчас видно"


 
@!!ex ©   (2006-11-01 18:13) [4]


> несомневаюсь...
> если их рисовать! а если вставить как печатаемые символы?
> ??

А смысл? Хочеш в тексте иметь лишний символ непонятно зачем?


> а вот здесь бы я на примерчик посмотрел, т.к насколько я
> помню это "линий всего" а не "линий сейчас видно"

Надо думать. Думай как зная то что я привел узнать количество видимых строк.


 
@!!ex ©   (2006-11-01 18:31) [5]

Вот примерчик.
http://afera-net.narod.ru/MT.rar
Условия выполняет.
Единственно есть баг с  тем, что кода удаляеш длинную строку или лишнии строки, то символ исчезает только если заставить этот участок перерисовывать.

InvalidateRect - рулит, но я баг заметил тока после того как уже залил. перезаливать влом.


 
click   (2006-11-01 18:45) [6]

@!!ex ©   (01.11.06 18:31) [5]

Спасибо! Вероятно это все же пример с рисованием ... значит так и сделаю!
Нарисовать та я смогу а вот определить весь ли текст видим - это проблема!
Тот кусок исходника который за это отвечает случаем не в твоем распоряжении? ;) гугль рулит - я понимаю , но будет не плохо если искать не прийдется ;) Спасибо!


 
@!!ex ©   (2006-11-01 19:19) [7]


> click   (01.11.06 18:45) [6]

В моем распоряжении.
Я этот код писал.
Сам, кста, заколебешся такое писать. ;)
Сейчас сам писал и удивлялся, СТОКА подводных камней, аж жуть. :))
...
Например у стандартной реализации Memo не предусмотрен Canvas.... :))



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

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

Наверх




Память: 0.46 MB
Время: 0.05 c
15-1162143688
oxffff
2006-10-29 20:41
2006.11.19
Касперский ругается на stdvcll40.dll.


1-1160577324
DelphiLexx
2006-10-11 18:35
2006.11.19
MDI и TTBToolBar


5-1143373988
sirin
2006-03-26 15:53
2006.11.19
работа в рантайме с классами (не обьектами)


15-1162211381
любитель
2006-10-30 15:29
2006.11.19
подскажите как победить


15-1162054980
(Длинный логин не получился:(
2006-10-28 21:03
2006.11.19
Опрос





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