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

Индивидуальный цвет недоступного контрола

СообщениеДобавлено: 12.10.2023 15:27:57
ssnakess
Подскажите, как можно задать контролу, например TEdit, какой-то свой цвет заливки, если ему поставить свойство Enabled:=False;
Т.е. другой цвет заливки фона контрола, не стандартный бледно-серый, при его недоступности к редактированию.
Причем конкретного контрола, а не всех :)

Добавлено спустя 50 минут 3 секунды:
пока придумал такой финт ушами
покрасил Color своим цветом и повесил обработчик на получение фокуса
Код: Выделить всё
procedure TForm1.Edit1Enter(Sender: TObject);
begin
  TEdit(Sender).Parent.SelectNext(TWinControl(Sender),true,true);
end;

Re: Индивидуальный цвет недоступного контрола

СообщениеДобавлено: 12.10.2023 18:24:32
Sharfik
Можно посадить lebel перед Edit или tbevel вокруг, edit в панель с полями посадить. И подсветить их уже. Будет нормально.

**На Хабре была статья, где человек доходчико описывал где видал программистов делающих "продвинутый" ГУЙ. Потому что в нем работать людям с проблемами зрения невозможно. Изменений от штатных настрое ОС должно быть минимум.

Re: Индивидуальный цвет недоступного контрола

СообщениеДобавлено: 15.10.2023 11:09:51
Alex2013
Sharfik писал(а):**На Хабре была статья, где человек доходчиво описывал где видал программистов делающих "продвинутый" ГУЙ. Потому что в нем работать людям с проблемами зрения невозможно. Изменений от штатных настрое ОС должно быть минимум.

По моему нужно просто делать настройку цветов и несколько цветовых схем созданных заранее ( включая "системную" схему создаваемую из настроек ОС ). И кстати не факт что если "Изменения от стандартных настроек будет минимальным" они реально совпадут с настройкой в ОС.

Re: Индивидуальный цвет недоступного контрола

СообщениеДобавлено: 15.10.2023 12:09:25
RRYTY
Alex2013 писал(а):По моему нужно просто делать настройку цветов и несколько цветовых схем созданных заранее


Правильнее будет брать все цвета из схемы ОС, предоставив пользователю выбирать целиком тему оформления. Если, конечно, нет цели довести пользователя до бешенства своими "гениальными" вырвиглазностями и "оптимальными" цветовыми решениями. Вкусы разработчика и пользователя совпадут, только если обоих поместить в вакуум. Либо обоих совместить физически.
Насчет "просто сделать настройку" - логика изменения/применения/сохранения элементарных настроек/параметров проекта shell2shell отточен уже до интуитивно-понятного уровня совершенства, вы имеете представление, что это такое. Так вот - с цветами все намного хуже. Можно принять к сведению, что какой-то функциональный параметр имеет при изменении какие-то особенности (хорошо, если это описано в документации). Но если каждый раз невольно моргаешь от какого-то ублюдочного цветосочетания (которое, конечно же, можено специальной пляской поменять к лучшему), то это приведет к решительным мерам в отношении ПО, заставляющим моргать.

Re: Индивидуальный цвет недоступного контрола

СообщениеДобавлено: 16.10.2023 14:32:55
Alex2013
В принципе согласен... но есть нюансы :
1. ОС тоже делали разработчики, а не пользователи.
2. Далеко не все "стандартные значения цветов" в программе совпадают с "темой ОС" .
3. Сами стандартные и даже "пользовательские темы" охватывают далеко не все .
( В результате даже в настройках ОС ( причем при совершенно стандартных темах ) можно увидеть "белые на белом" хинты и тому подобные чудеса )
4 Большинство программ не имеющих настроек цветов, ни как, от текущей цветовой темы ОС не зависят и люди используют такие программы просто по принципу "ешь что дают".
Зы
В моем проекте shell2shell я вообще еще до цветов не добрался. ( Цветовое решение внешней рамки над веб интерфейсом и консолью и все прочие просто завязана на идею "малозаметности" и тамошние "50-ть оттенков серого" можно вообще заменить чуть размытой затененной и обесцвеченной прозаичностью потому что это что-то типа стандартной темы классического Дос-навигатора так сказать "ДОС-пехи для призрака" . То есть я сознательно чуть ухудшил читабельность информации неактуальной в рабочем режиме но зато добился эффекта "запустил и забыл" . )
.

Re: Индивидуальный цвет недоступного контрола

СообщениеДобавлено: 16.10.2023 17:48:24
RRYTY
Alex2013 писал(а):1. ОС тоже делали разработчики, а не пользователи.


Бета тестеры обеспечивают обратную связь. Из опыта создания графических приложений - интерфейс у программы, запущенной в эксплуатацию и используемой каждый день, отлаживается год. При чем тут ОС - вообще не понял.

Alex2013 писал(а):Большинство программ не имеющих настроек цветов, ни как, от текущей цветовой темы ОС не зависят


"Не зависят" !!! %-) Чуть на личности не перешел. :-(
Специально такого размера, чтобы заметно было! }:-)

sen_classic.png
sen_black.png


Alex2013 писал(а):и люди используют такие программы просто по принципу "ешь что дают".


Именно поэтому, учитывая приведенные скрины, и
RRYTY писал(а):Правильнее будет брать все цвета из схемы ОС, предоставив пользователю выбирать целиком тему оформления.

Re: Индивидуальный цвет недоступного контрола

СообщениеДобавлено: 17.10.2023 10:29:37
Alex2013
1 Про "не зависимость" от темы. Я не конкретно про лазарус писал ( полно программ которые не как на смену темы не реагируют или реагируют криво (см скрин) ).
(Увы мне! Shell2Shell пока что в основном "не реагирует", а настройки чуть кривятся ( цвет шрифта стандартный, а фон окна изменён ) но это как я писал временно (как минимум я на это надеюсь бо нормальная настройка цветов и тем запланирована заранее ))
2 "Бета тестеры обеспечивают обратную связь." это хорошо и замечательно но как показывает практика ни один бета тестер не может влезть во все дыры и тем более в пользовательские настойки тем . (Плюс режим " высокой контрастности " вообще строго говоря говоря не стандартная тема, а нечто включаемое принудительно. Но кстати спасибо! Я про этот режим совсем забыл, а зря! Нужно будет в обязательном порядке проверять как будут смотреться программа при его включении, а то выйдет как-то так )

Изображение

Зы
Кстати, интересно можно ли как-то проверить включение режима " высокой контрастности " что-бы своевременно отключить все лишние "цветение сакуры" (нестандартные цвета в программе )?
Зы Зы
Вообщем, видимо хорошим тоном в любой программе будет наличие галки " стандартный интерфейс/цвета" на самом видном месте в настройках .
Что-то вроде этого.
Изображение

Добавлено спустя 1 час 11 минут 9 секунд:
RRYTY писал(а):Правильнее будет брать все цвета из схемы ОС, предоставив пользователю выбирать целиком тему оформления.

Это хорошее благое пожелание увы может очень легко разбиться при использовании любых нестандартных визуальных элементов ( например "фоновое поле" редактора и сетка грида ) и просто графики вроде иконок или разных полезных украшательств вроде вертикальной закладки "Свойства" в моем "редакторе форм и страниц".

Re: Индивидуальный цвет недоступного контрола

СообщениеДобавлено: 17.10.2023 12:29:56
RRYTY
Alex2013 писал(а):Это хорошее благое пожелание увы может очень легко разбиться при использовании любых нестандартных визуальных элементов ( например "фоновое поле" редактора и сетка грида ) и просто графики вроде иконок или разных полезных украшательств вроде вертикальной закладки "Свойства" в моем "редакторе форм и страниц".


Абсолютно верно! Отсюда вывод - любое (любое!) украшательство это злобное зло. Все влезания в цвета только для функционала, с оговорками и извенениями перед публикой.

Re: Индивидуальный цвет недоступного контрола

СообщениеДобавлено: 31.10.2023 09:44:15
Снег Север
Недавно прочитал на хабре отличный афоризм: "Плохой интерфейс - это как шутка, смысл которой надо объяснять".

Re: Индивидуальный цвет недоступного контрола

СообщениеДобавлено: 31.10.2023 10:09:53
sts
любой интерфейс приходится объяснять
если объяснять ненужно это значит объяснили ранее
эх помню как нортон коммандер объяснял

Re: Индивидуальный цвет недоступного контрола

СообщениеДобавлено: 31.10.2023 21:39:16
Снег Север
sts писал(а):любой интерфейс приходится объяснять

А как насчет такой штуки, как "интуитивно понятный интерфейс"? Нет, конечно, если человек до того вообще никаких интерфейсов в глаза не видал, то объяснять придется...