Кастомный элемент управления на основе сторонней графики с и

Обсуждение, связанное с разработкой ПО верхнего уровня
Ответить
Аватара пользователя
Mifodiy1977
beginner
beginner
Сообщения: 47
Зарегистрирован: 10 янв 2012, 14:00
Версия LabVIEW: 11
Контактная информация:

Кастомный элемент управления на основе сторонней графики с и

Сообщение Mifodiy1977 »

Кастомный элемент управления на основе сторонней графики с изменяемый цветом. Такое возможно? Вот, например, набор сильвер. Вроде бы как похож на самопальный, но есть в нем основа, которая раскрашивается. Вот как они эту основу делают? Все эти прямоугольнички с 3д эффектами и градиентами? Может это какой-нибудь векторный формат? Или все таки это приколочено гвоздями и никакая сторонняя графика не раскрашивается? Обидно ведь сто раз рисовать одну и ту же кнопку, если требуется только цвет поменять. Вот по логике, что такое раскрашиваемый объект? Это некий объект в градациях серого с наложенным цветом, по сути цвет умножается на яркость. Ведь используют же прозрачность! По сути отдельный канал цвета (альфа-канал), так почему же не покрасить? И с масштабированием тоже фигня. Ну с растром понятно всё. А импортировать какой либо векторный рисунок и чтоб масштабировался? В общем старые нерешенные вопросы. Помогите ответить на них, или скажите, что решение не существует или не найдено. Но ведь что-то же лежит в основе всей ихней графики?
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: Кастомный элемент управления на основе сторонней графики

Сообщение mzu2006 »

По моим сведениям, внутри имеется custom векторный формат специфичный для маков той далекой эпохи, когда разрабатывались первые версии :labview:. Т.е. для нас, всё "приколочено гвоздями". Решения вижу 2:
1. Делать Xcontrol на базе picture
2. Делать сторонний (ActiveX или .NET) элемент управления.
Аватара пользователя
Mifodiy1977
beginner
beginner
Сообщения: 47
Зарегистрирован: 10 янв 2012, 14:00
Версия LabVIEW: 11
Контактная информация:

Re: Кастомный элемент управления на основе сторонней графики

Сообщение Mifodiy1977 »

Спасибо за ответ. Вот я так и подумал, что какой-то очень внутренний формат. До X-Controls руки никак не дойдут, знаю, что вещь интересная. Но сейчас времени их изучать совсем нет.

Есть еще вопрос. По скроллбару. Он, зараза такая, не красится и не меняется почти никак, если только в кастомизации поменять ширину полосы, и на этом всё. Нет никакого другого альтернативного скроллбара? На сером фоне всё в порядке, но на чёрном, миль пардон - такая лажа, почти белая полоса на черном фоне, ужс. Или придется использовать слайдеры и свойства скроллируемого объекта? Помнится, в старых лабвью (4-6) скроллбар красился, а может это у меня дежавю.
Аватара пользователя
Mifodiy1977
beginner
beginner
Сообщения: 47
Зарегистрирован: 10 янв 2012, 14:00
Версия LabVIEW: 11
Контактная информация:

Re: Кастомный элемент управления на основе сторонней графики

Сообщение Mifodiy1977 »

Кстати, интересные наблюдения. Делал картинки с гиф анимацией и вставлял в ринг, ринг в кластер, кластер в массив. Так вот, в том ринге были как анимированые гифы, так и статичные png, так было нужно. И вот результат. Если активная ячейка массива с анимированным гифом, то анимация идет во всех элементах массива, стоит ткнуть в ячейку массива с неанимированным элементом ринка - все ячейки встают, курсором над массивом водишь - иногда кадры меняются. Вот такой глюк. Лечение - все элементы ринга делать анимированными, если анимация не нужна, то все равно делать анимацию с одинаковыми кадрами, во тогда все всегда двигается. Вот такой он, наш лабвью, любимый и ненавистный :)
Аватара пользователя
Mifodiy1977
beginner
beginner
Сообщения: 47
Зарегистрирован: 10 янв 2012, 14:00
Версия LabVIEW: 11
Контактная информация:

Re: Кастомный элемент управления на основе сторонней графики

Сообщение Mifodiy1977 »

Еще одно замечание. Если в указанной выше ситуации кадры Gif анимации буду иметь разную длину, то также может случиться затык анимации. Причем, во всех картинках ринга структура кадров одинаковая, но один из кадров намного длиннее других, в результате случаются неравномерности анимации и вообще затыки. Короче, анимация в LabView сделана как-то коряво, видимо это от желания сэкономить машинное время и память.
Резюме: для использования gif анимации в рингах, помещенных в массив требуется использовать картинки с одинаковой структурой кадров, одинаковым числом кадров, одинаковой длительностью кадров, другие форматы не добавлять в этот ринг.
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Лицевая панель»