Элементы графики

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
Аватара пользователя
AVA
Новичок
Сообщения: 18
Зарегистрирован: 12 Сентябрь 2005, 8:51
Откуда: Пермь

Элементы графики

Сообщение AVA »

Создан элемент CREATE:LINE
При уменьшении значений его свойств prop:xpos и prop:ypos
остается след в виде точек на конце элемента
При увеличении этих координат следа нет
Проверено в С55ЕЕ, С61ЕЕ, С62ЕЕ (ABC)
В чем причина?
След исчезает при возврате фокуса окну, при раскрытии окна в полный экран. Как убрать след?
softcreator
Ветеран движения
Сообщения: 78
Зарегистрирован: 04 Август 2005, 9:35
Контактная информация:

Сообщение softcreator »

для начала выставить PROP:Buffer для окна в 1.
ну или радикально - перерисовать через API
Гость

Сообщение Гость »

Установка PROP:Buffer не помогла
softcreator
Ветеран движения
Сообщения: 78
Зарегистрирован: 04 Август 2005, 9:35
Контактная информация:

Сообщение softcreator »

ну тогда api-шный RedrawWindow должен помочь
Аватара пользователя
AVA
Новичок
Сообщения: 18
Зарегистрирован: 12 Сентябрь 2005, 8:51
Откуда: Пермь

Сообщение AVA »

Радикальных методов не нужно, т.к. BLANK убирает след (оказалось, он работает не так, как написано в Help). Привожу готовый пример.

program
map.

feq long
spin short
Window WINDOW('Caption'),CENTER,SYSTEM,GRAY
SPIN(@n-3b),AT(10,10,35,10),USE(spin)
STRING(''),AT(55,10,35,10),USE(?String1)
END
CODE
open(window)
feq=create(0,CREATE:LINE)
feq{PROP:Xpos} = 100;feq{PROP:Ypos} = 50
feq{PROP:width} = -30;feq{PROP:height} = 30
unhide(feq)
accept
case event()
of event:NewSelection
feq{prop:Xpos}=feq{prop:Xpos}+spin
?String1{prop:text}='Xpos: '&feq{prop:xpos}
clear(spin)
! line(80,50,0,0) ! без этой строки BLANK не работает
BLANK
end
end

При смещении влево остается след от начала отрезка. В чем причина?
BLANK работает только при наличии нарисованных линий, и только до их максимальных начальных позиций.
Аватара пользователя
AVA
Новичок
Сообщения: 18
Зарегистрирован: 12 Сентябрь 2005, 8:51
Откуда: Пермь

Сообщение AVA »

Если решения этой проблемы нет, то может кто-нибудь подскажет, как удобнее всего решить следующую задачу.
Нужно представить данные в виде линейных графиков (с осями координат и подписями). Графики нужно сдвигать и масштабировать. Перерисовывать каждую линию и хранить ее координаты - единственный вариант?
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3133
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 10 раз
Поблагодарили: 28 раз
Контактная информация:

Сообщение Дед Пахом »

Ну ocx же полно в инете на эту тему. Даже в CW2 я пользовал какой-то паскалевский vbx для 16-ти бит, который всю графику и так, и сяк, и об косяк показывал. А уж сейчас-то этого добра...
С уважением, ДП
Аватара пользователя
AVA
Новичок
Сообщения: 18
Зарегистрирован: 12 Сентябрь 2005, 8:51
Откуда: Пермь

Сообщение AVA »

Показывать графику недостаточно. Показать я могу в Excel.
Графики нужно сдвигать и масштабировать нужным мне способом, меняя тем самым исходные данные.
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3133
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 10 раз
Поблагодарили: 28 раз
Контактная информация:

Сообщение Дед Пахом »

От сдвигания и масштабирования исходные данные не меняются вообще-то.
Хорошо, с такими начальными условиями список подходящих ocx уменьшился на 1. Теперь их 999,999
С уважением, ДП
lsgsoftware
Ветеран
Сообщения: 311
Зарегистрирован: 08 Июль 2005, 22:04

Сообщение lsgsoftware »

А не хочешь поюзать графическую библиотеку клары. Начиная с с60
она входит в состав клары и бесплатно. На задаче, похожей на твою,
у меня вроде бы все получилось.
Аватара пользователя
Admin
Администратор
Сообщения: 3959
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 25 раз
Поблагодарили: 22 раза
Контактная информация:

Сообщение Admin »

Очень классный OCX, но как и все хорошее за деньги ...
http://www.steema.com
Ответить