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

Световая индикация путем наложения полупрозрачного фона

Добавлено: 20 июл 2017, 13:48
engineer_7
Добрый день! Подскажите пожалуйста,
Каким образом можно отобразить полупрозрачный фон или изображение поверх элементов управления на лицевой панели по условию?
То есть, к примеру, мы имеем графическую схему пульта управления, задача такая, что бы по нажатию на кнопку(к примеру) расположенную на той же лицевой панели, поверх пульта управления появлялся красный полупрозрачный фон(то есть сам пульт оставался виден).

Re: Световая индикация путем наложения полупрозрачного фона

Добавлено: 20 июл 2017, 15:03
Borjomy_1
Самое простое в данном случае - использовать стандартный способ, это изменять свойство "Disabled". Устанавливать его в Disabled&Grayed, т.е отключен и сделан серым. Особенно удобно, если элементы расположены либо в кластере, либо на Tab Control (у которого сделан прозрачный фон и одна вкладка, без отображения названий вкладок). Тогда, меняя только свойство disabled для родительского контрола (кластер или таб), можно управлять доступностью всех контролов. Таким образом реализуется стандартное поведение интерфейса, которое не требуется пояснять.
Это я к тому, что не следует делать трагедию из того, что пульт был отключен самим пользователем и подкрашивать его красным.

Re: Световая индикация путем наложения полупрозрачного фона

Добавлено: 20 июл 2017, 15:12
Artem.spb
Поддерживаю предыдущего оратора, не всегда надо воростить новое, лучше делать так, как пользователь уже привык.
если же надо всё же извратиться, то фон во внешенм редакторе -> import picture to clipboard -> paste в нужное место.
а дальше свойствами:
decor.png
decor.png (13.39 КБ) 5427 просмотров

Re: Световая индикация путем наложения полупрозрачного фона

Добавлено: 20 июл 2017, 20:42
Jakob Brontfeyn

Re: Световая индикация путем наложения полупрозрачного фона

Добавлено: 21 июл 2017, 10:51
engineer_7
Большое спасибо за ваши ответы, я продвинулся в решении своего вопроса, но к конечного решению еще не пришел.
Brontfeyn, Ваша ссылка оказалась полезной, но увы в той теме не решена именно моя задача.
Borjomy_1, моя задача стоит именно в том что бы после нажатия кнопки поверх элементов появлялся красный прямоугольник, вообще, кнопок в работающем проекте не будет, данная система необходима для оповещения оператора, что "вот этот блок подсвечивается красным, следовательно он не исправен". Суть примерно такая, поэтому к сожалению, мне необходимо сделать костыли.
Artem.spb, собственно Ваше решение похоже на решение Borjomy_1, что к сожалению мне так же не подходит.
[фото должно быть на форуме]
В настоящий момент у меня получается либо целиком перекрыть панель, либо оставить панель не затронутой и отобразить tabcontrol позади.

Re: Световая индикация путем наложения полупрозрачного фона

Добавлено: 21 июл 2017, 11:36
Artem.spb
engineer_7 писал(а): Artem.spb, собственно Ваше решение похоже на решение Borjomy_1, что к сожалению мне так же не подходит.
наши варианты абсолюно не похожи. В первом случае блокируются кнопки, во втором - вкрывается/показывается декорация (изображение).
Вы просили отобразить декорацию, а показал, как это сделать, чем этот вариант не устраивает?

Re: Световая индикация путем наложения полупрозрачного фона

Добавлено: 21 июл 2017, 12:33
Borjomy_1
Ставите булевый индикатор, делаете его поверх ваших элементов управления. Для значения Off делаете его прозрачным, надпись делаете пустую, для значения On - красным и надпись "Панель неисправна". Если надо разрешить/запретить управление панелью - управляете свойством "Visible"
Панель управления размещаете на табе. У него две вкладки - рабочая и нерабочая (на нерабочей размещен транспарант "Неисправность"). Соответственно, программно переключаете вкладки
мне необходимо сделать костыли.
Это вы так думаете, что костыли надо. На самом деле нужно стандартное решение, а не красивое.

Re: Световая индикация путем наложения полупрозрачного фона

Добавлено: 21 июл 2017, 16:42
engineer_7
Borjomy_1 писал(а):Ставите булевый индикатор, делаете его поверх ваших элементов управления. Для значения Off делаете его прозрачным, надпись делаете пустую, для значения On - красным и надпись "Панель неисправна". Если надо разрешить/запретить управление панелью - управляете свойством "Visible"
Панель управления размещаете на табе. У него две вкладки - рабочая и нерабочая (на нерабочей размещен транспарант "Неисправность"). Соответственно, программно переключаете вкладки
мне необходимо сделать костыли.
Это вы так думаете, что костыли надо. На самом деле нужно стандартное решение, а не красивое.
Спасибо, в результате так и поступил.