Форум: "Прочее";
Текущий архив: 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.049 c