![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как из RichEdit вырезать столбец ширинов в несколько пиксел [D3, Win95/98, Win2k]
SuperVK © (2002-10-31 04:46:00)Есть ли возможность из RichEdit (точнее из отображения) удалить столбец шириной 1,2,3... пиксела (не букв, а именно пикселов, т.е. вплоть до того, чтобы обрезались половинки букв)? Т.е. организовать что-то вроде прокрутки посреди текста. (Сам контрол RichEdit находится в режиме просмотра, т.е. озаботиться тем как оно будет себя вести при редактировании не придётся).
Единственное, что я придумал пока, так это вставить два RichEdit впритык и организовать в них автоматический скроллинг, но такое решение мне самому не по душе. Хочется элегегантней, да и заморочек потом много возникать будет.
MBo (2002-11-01 06:12:00) [1]procedure TForm1.Button1Click(Sender: TObject);
var r:Trect;
begin
r.left:=50;
r.top:=0;
r.Right:=200;
r.Bottom:=richedit1.handle;
scrollwindow(RichEdit1.Handle,-40,0,@r,nil);
end;
SuperVK (2002-11-01 04:34:00) [2]Всем спасибо.
Vint (2002-10-31 12:46:00) [3]Если только для просмотра, то
1. создаешь BitMap
2. на Canvas рисуешь, пишешь текст, и т.д.
3. обрабатываешь его (вырезаешь линии и т.д.)
4. выводишь результат не в RichEdit, а например в Image.
вроде все, удачи.
Lmatveev (2002-10-31 12:31:00) [4]Может прикрывать сверху другим контролом? Панелью, например...
SuperVK (2002-10-31 12:19:00) [5]Как я понимаю, в API нет возможности сдинуть одну часть контрола, не трогая другую?
Севостьянов Игорь (2002-10-31 11:17:00) [6]Только самому перерисовывать (вместо Windows это делать [WM_PAINT])
Song (2002-10-31 11:02:00) [7]Убрать символы можно и по рядам. А вот убрать часть, это нужно полностью переписывать отображение компонента.. не думаю, что кто-нибудь таким извращением занимался.
SuperVK (2002-10-31 10:34:00) [8]А какой-нибудь сторонний компонент не подскажешь, чтобы имел какие-нибудь методы или свойства (по типу OnDrawCell) или ещё чего чтобы можно было реализовать описанное мною выше (если там понятно написано)?
Такое вообще, в принципе возможно, или я пытаюсь совместить несовместимые вещи?
Song (2002-10-31 08:45:00) [9]Нет, невозможно.