powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Не выводится текст на канву (drawtext)
4 сообщений из 4, страница 1 из 1
Не выводится текст на канву (drawtext)
    #39769789
Фотография Tech N9ne
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет!

Есть скроллбокс, на нём image.
на скроллбоксе, поверх image в рантайме создаю richedit.
вот таким кодом растягиваю richedit по нужным мне координатам (всегда разные)
Код: pascal
1.
2.
     SetWindowLong(RICH.Handle, GWL_STYLE, GetWindowLong(RICH.Handle, GWL_STYLE) xor WS_THICKFRAME);
 SetWindowPos(RICH.Handle, HWND_TOP, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE or SWP_NOZORDER or SWP_DRAWFRAME or SWP_NOACTIVATE);



После того как растянул richedit, ввожу в него текст
До этого момента всё нормально..
я хочу вывести текст на канву image, по координатам richedit`a.
Делаю таким образом:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
VAR
  S: string;
  R: TRect;
begin
  R := Rect(RICH.Left, RICH.Top, RICH.Width, RICH.Height);
  sImage1.Canvas.Font.Name := 'Arial';
  sImage1.Canvas.Font.Size := 8;
  sImage1.Canvas.Font.Color := sColorSelect1.ColorValue;
  sImage1.Canvas.Font.Style := [fsBold];
  sImage1.Canvas.Brush.Style := bsClear;
  s :=  RICH.Text;
  DrawText(sImage1.Canvas.Handle, PChar(s), -1, R,  TA_LEFT or   DT_WORDBREAK);
   FreeAndNil(RICH);
end;


Но текст, зараза, не всегда рисуется!
Если слишком широко растянуть richedit, иногда прорисовывается.

Гуру программирования, где я тупанул?)

В кратце, пытаюсь сделать графический редактор, для своего скриншотера..
Richedit служит в качестве рамки как в paint
...
Рейтинг: 0 / 0
Не выводится текст на канву (drawtext)
    #39769790
asviridenkov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tech N9ne,

Rect() вроде как right, bottom ожидает
...
Рейтинг: 0 / 0
Не выводится текст на канву (drawtext)
    #39769794
Фотография Tech N9ne
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
asviridenkov,
у richedita нет этих свойств..
не подскажите что делать?)))
Возможно получить эти значения использую left, top, width и height ?
...
Рейтинг: 0 / 0
Не выводится текст на канву (drawtext)
    #39769840
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: pascal
1.
R := RICH.BoundsRect;
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Не выводится текст на канву (drawtext)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]