Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как из 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]

Нет, невозможно.


Наверх

Титульная страница Поиск, карта сайта Написать письмо