Clarion 11-12
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
-
- ✯ Ветеран ✯
- Сообщения: 4676
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 5 раз
- Поблагодарили: 3 раза
Clarion 11-12
Решил в кои-то веки графикой заняться. Ну надо. Вот такая х...:
Интересует работа в режиме Disable и Stretched. Можно как-то полечить буйство мыслей и фантазий программеров из SV?
И туда же. Не удаётся в рантайме к Image применить prop:Disable. Удаётся только через prop:Hide.
Первое слева фото - обычное (в режиме Stretched, размер меньше реального), второе - оно же (только в режиме Disable), третье - оно же (только в режиме Disable), четвертое - оно же (видно, что картинка ка-то странно растягивается в зависимости от местоположения на экране), пятое - фото в режиме Disable и Centered.Интересует работа в режиме Disable и Stretched. Можно как-то полечить буйство мыслей и фантазий программеров из SV?
И туда же. Не удаётся в рантайме к Image применить prop:Disable. Удаётся только через prop:Hide.
We are hard at work… for you. 

- Губин Игорь
- ✯ Ветеран ✯
- Сообщения: 2052
- Зарегистрирован: 16 Сентябрь 2005, 16:35
- Откуда: Москва
- Поблагодарили: 2 раза
Clarion 11-12
А можно проект в студию, чтобы не плодить?
Это я только кажусь дураком! На самом деле я полный идиот!
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 3971
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 3 раза
- Поблагодарили: 9 раз
Big .dct
64 разряда не будет никогда, если RZ продолжить "руководить" процессом разработки. Он на чистом американском сказал, что дорабатывать компилятор нет перспективы (у него в голове, другие спокойно делают 64). Переход на другие готовые компиляторы (голубая мечта RZ в последние 15 лет со времен попытки сделать Clarion.Net) приведет к очень сильным изменениям, что никому не нужно. Теперь речь только о готовом компиляторе c++. Среда, единственное, что принципиально переделали из наследия топспида на "готовое" (sharp developer), работает с кучей багов, исправлять которые никто не собирается. Я такого вообще не понимаю. Дальнейшее развитие клариона будет за счет комьюнити, в котором остаются достаточно компетентные люди, в отличии от SV.Игорь Столяров писал(а): ↑03 Ноябрь 2022, 13:15Видимо да. Я всегда был против левых шаблонов - они сильно закакивают проекты.
Ну и с нетерпением ждём-с обещанный Clarion 12 с генерацией x64 приложений ...![]()
Это для другой темы пост.

C6/C11, ШВС, tps/btrieve.
- Игорь Столяров
- Ветеран движения
- Сообщения: 6753
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 5 раз
- Поблагодарили: 26 раз
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 3971
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 3 раза
- Поблагодарили: 9 раз
Big .dct
Опен сорс не надо. Надо постепенно передавать разработку отдельных направлений за пределы sv. Других вариантов не видно. Например, тот же драйвер кит. Все СУБД имеют библиотеки доступа на с++, драйвер кит, как я понимаю, позволяет стандартизировать их вызовы в наборы команд клариона для работы с базами данных. Струменский делал свою реализацию ip драйвера, видимо, где-то удалось получить драйвер кит (его короткое время продавали, насколько знаю). Меня бы в большей степени интересовало исправление багов в среде. Компиляторы 64 бита сейчас уже все популярные среды разработки имеют. Хотя я не думаю, что 32 бита похоронят совсем в ближайшие лет 10.Игорь Столяров писал(а): ↑03 Ноябрь 2022, 13:43Точно ! Видимо пойдём по пути Clipper: OpenSource, форки от идиотов с кучей ошибок и забвение.![]()
C6/C11, ШВС, tps/btrieve.
-
- ✯ Ветеран ✯
- Сообщения: 4676
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 5 раз
- Поблагодарили: 3 раза
Clarion 11-12
Собрал тест. На простом окне четыре одинаковые картинки. Над ними четыре региона. При нажатии мышкой на картинку (регион) картинка дизейблится и наоборот. Если посмотреть эмбедсы, там всё просто - prop:Disable. Только приходится делать через prop:Hide, что тоже косяк (на мой взгляд).
- Вложения
-
- TI.ZIP
- (19.04 КБ) 29 скачиваний
We are hard at work… for you. 

- Губин Игорь
- ✯ Ветеран ✯
- Сообщения: 2052
- Зарегистрирован: 16 Сентябрь 2005, 16:35
- Откуда: Москва
- Поблагодарили: 2 раза
Clarion 11-12
Какая-то старая версия валяется у меня в дистрибутивах...
Это я только кажусь дураком! На самом деле я полный идиот!
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 3971
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 3 раза
- Поблагодарили: 9 раз
Clarion 11-12
Небольшое, но полезное наблюдение. Когда добавляем новый контрол на закладке в оконном дизайнере, чтобы он не улетал на другие закладки или в окно, надо в дереве tab выделить нужную закладку, а потом добавлять. Ставится в конец списка контролов на закладке, но хоть так, чтобы потом долго не таскать по всему дереву.
C6/C11, ШВС, tps/btrieve.
- Губин Игорь
- ✯ Ветеран ✯
- Сообщения: 2052
- Зарегистрирован: 16 Сентябрь 2005, 16:35
- Откуда: Москва
- Поблагодарили: 2 раза
Clarion 11-12
Поигрался в разных вариантах. Да, это глюк рантайма. Единственное, что могу посоветовать - хранить каждую картинку в двух вариантах. И не использовать на Image совершенно бесполезный с точки зрения интерфейса Disable, а подсовывать картинку. Да, я понимаю, что это маразм.
Это я только кажусь дураком! На самом деле я полный идиот!
- Игорь Столяров
- Ветеран движения
- Сообщения: 6753
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 5 раз
- Поблагодарили: 26 раз
Clarion 11-12
Ну, как говорится: если в гору идти не получается - то ведь можно её обойти.

Манипулируем IMAGE прямой записью образа в памяти. В т.ч. и делаем её Grayscale
или мнонхромом любого уровня и т.д. Юзаем библиотеку FreeImage.
Код: Выделить всё
theImage FreeImageClass
Loc:TmpString &STRING
fihMemory FIMEMORY
mem_buffer Long
size_in_bytes UNSIGNED
Code
If theImage.iImage.Load(MyTheFile) = True
! Здесь сохранили в буфер образ "цветной картинки" см. далее
theImage.iImage.ConvertToGrayscale() ! Конвертация картинки в монохромную
FihMemory = FreeImage_OpenMemory() ! Запись картинки в буфер
If FihMemory <> 0
If FreeImage_SaveToMemory(FIF_BMP, theImage.pImage, fihMemory, 0) = True
If FreeImage_AcquireMemory(FihMemory, mem_buffer, size_in_bytes) = True
If size_in_bytes > 0
Loc:TmpString &= New(String(size_in_bytes))
If ~(Loc:TmpString &= Null) then WinApi_memcpy(Address(Loc:TmpString),mem_buffer,size_in_bytes).
end
end
end
FreeImage_CloseMemory(FihMemory)
else
theImage.iImage.TakeError(OUT_OF_MEMORY)
end
! Запись буфера с картинкой в IMAGE
If ~(Loc:TmpString &= Null) then ?Image{Prop:ImageBits} = Loc:TmpString.
....
end
Совершенство достигается не когда нечего добавить, а когда нечего отнять !
-
- ✯ Ветеран ✯
- Сообщения: 4676
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 5 раз
- Поблагодарили: 3 раза
Clarion 11-12
Это фото сотрудников, к которым у разработчиков нет доступа. Объяснять пользователю, который загружает фото в систему, что надо бы загрузить два фото, и одно из них надо графическим редактором подработать, мягко говоря нехорошо.
Использовать FreeImage вариант. Но небось подводных камней насобираешь. Чёрно-белая картинка при такой конвертации становится "серой"?
Игорь Губин, может зашлём проблему в SV? Чего сидят, ничего не делают?
Использовать FreeImage вариант. Но небось подводных камней насобираешь. Чёрно-белая картинка при такой конвертации становится "серой"?
Игорь Губин, может зашлём проблему в SV? Чего сидят, ничего не делают?
We are hard at work… for you. 

- Губин Игорь
- ✯ Ветеран ✯
- Сообщения: 2052
- Зарегистрирован: 16 Сентябрь 2005, 16:35
- Откуда: Москва
- Поблагодарили: 2 раза
Clarion 11-12
Можно попробовать. Постараюсь не затягивать. Но, имхо, безнадёга это. Явно слишком глубоко в рантайме сидит глюк, да и не критичный.
Честно сказать, я бы, при такой ситуации, обошёл бы ошибку онанизмом преобразования загружаемой картинки во второй экземпляр для disable через перехват экрана через WinAPI. Ну или наложением маски (сеточка или ещё что) вместо перевода в disable. Будет быстрее.
Это я только кажусь дураком! На самом деле я полный идиот!
- Губин Игорь
- ✯ Ветеран ✯
- Сообщения: 2052
- Зарегистрирован: 16 Сентябрь 2005, 16:35
- Откуда: Москва
- Поблагодарили: 2 раза
Clarion 11-12
Хочешь поржать? Под AnyScreen всё идеально работает.
Это я только кажусь дураком! На самом деле я полный идиот!
- Игорь Столяров
- Ветеран движения
- Сообщения: 6753
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 5 раз
- Поблагодарили: 26 раз
Clarion 11-12
Загрузив картинку в FreeImage Вы сможете переключать в ней если не всё, то многое.
Контрастность, яркость, гамма-коррекцию ... Можно сделать оригинально и стильно.

Совершенство достигается не когда нечего добавить, а когда нечего отнять !