Страница 1 из 1

?Image

Добавлено: 16 Апрель 2008, 12:02
seawolf
Народ! подскажите!
Есть окно к нем рисуем всякие точки и линии (Box, Line). Далее надо подложить картинку чтобы не забивалось то что нарисовано. Свойство окна Wallpaper не подходит так оно подгоняет картинку под размер окна (оригинал меньше). Пробовал Tiled, Centered. Далее повесил Image и задал его размеры и вывалил картинку, по размерам все ОК, но она забивает все что нарисовано. В доке вычитал про атрибуты TRN элементов. Если явно описать String, Line с этим атрибутом то нет проблем, но я рисую командами Line, Box и не знаю меток. Можно как нибудь эти метки добыть или есть какой-нибудь вариант обхода?

Re: ?Image

Добавлено: 16 Апрель 2008, 12:49
Andrew Listiev
А имидж рисуешь когда до линий или после?

Re: ?Image

Добавлено: 16 Апрель 2008, 13:55
seawolf
Уже попробовал по всякому (думаю что после правильно). Сейчас буду пытаться делать Create (?Line) затем присваивать TRN этой линии и далее ее отрисовывать.

Re: ?Image

Добавлено: 16 Апрель 2008, 14:42
seawolf
Примерно заработало так (отказываемся от рисования командами Line, Box)

Create(?,Create:Line) !Создаем контрол линия
LastField(){prop:xpos}= !позиция начала линии по Х
LastField(){prop:ypos}= !позиция начала линии по Y
LastField(){prop:width}=!длина линии по Х
LastField(){prop:height}=!длина линии по Y
Unhide(LastField()) ! показать поле

При этом неважно когда заливается Image (до и ил после этого кода но все видно)

Re: ?Image

Добавлено: 17 Апрель 2008, 13:13
seawolf
А как сменить стиль линии (SetPenStyle после и до создания контрола не проходит)?
Для цвета срабатывает LastField(){prop:color} = задаем цвет

Re: ?Image

Добавлено: 18 Апрель 2008, 22:54
Stalker
Просмотри тему Clarion и графика, там обсуждался вопрос накладки двух графических объектов,
есть хорошие ссылки на контролы для работы с графикой

Re: ?Image

Добавлено: 21 Июнь 2008, 10:52
WadimZapara
добыча меток:
W &Window
e Signed(0)
Code
W &= ANY_Window ! какая-то метка окна
W &= SYSTEM{PROP:Target} ! текущее окно приложения
Loop ! перебор всех экранных объектов
e = W{PROP:NextField, e}
If ~e Then Break.
! e - номер очередного экранного объекта
Case e{PROP:Type}
Of CREATE:Line
! это LINE
Of CREATE:Box
! это BOX
ELSE
! типы см. в Equates.clw
End
End

Re: ?Image

Добавлено: 21 Июнь 2008, 13:37
Admin
seawolf писал(а):Народ! подскажите!
В личку ушел месаг