Переключение на Главную Страницу Страницы: 1 2 [3] 4 5 6 ОтправитьПечать
Очень популярная тема (более 25 ответов) Цвет 1С (число прочтений - 34192 )
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Цвет 1С
Ответ #30 - 30. Января 2013 :: 07:59
Печать  
Eprst писал(а) 30. Января 2013 :: 07:22:
Как бэ.. в классе не хватает метода

УстановитьЦветОдинЭсииПоУмолчаниюДляВсего(<Цвет>)

Улыбка


Можешь поэкспериментировать с функцией GetSysColor, особенно с параметром COLOR_WINDOW Улыбка
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Цвет 1С
Ответ #31 - 30. Января 2013 :: 08:02
Печать  
Eprst писал(а) 30. Января 2013 :: 07:58:
А фон самой формы ?
Я ж у других объектов их "не меняю"
а сейчас - меняется всё, вся 1с-ина. а не только нужная форма.


Ну, дело в том, что 1С использует GetSysColor не только для получения цвета кнопок.
  
Наверх
 
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 850
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: Цвет 1С
Ответ #32 - 30. Января 2013 :: 08:15
Печать  
Да, с COLOR_WINDOW интересно - раскрашивается ТЗ на форме и окно сообщений в цвет формы. Улыбка
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 850
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: Цвет 1С
Ответ #33 - 30. Января 2013 :: 08:17
Печать  
Не совсем понял - отделить раскрашивание всей 1С (главное меню, основное окно, тулбары) от раскрашивания отдельной формы не получается?
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Цвет 1С
Ответ #34 - 30. Января 2013 :: 08:23
Печать  
alyuev писал(а) 30. Января 2013 :: 08:17:
Не совсем понял - отделить раскрашивание всей 1С (главное меню, основное окно, тулбары) от раскрашивания отдельной формы не получается?


Что-то можно отделить конечно, но вот например, закладки рисуются цветом, возвращаемым GetSysColor.
  
Наверх
 
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 850
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: Цвет 1С
Ответ #35 - 30. Января 2013 :: 08:25
Печать  
Спасибо. Важное замечание.
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Цвет 1С
Ответ #36 - 30. Января 2013 :: 08:26
Печать  
С гетсисколор поиграюсь, а сами контролы по-отдельности не получится ?
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Цвет 1С
Ответ #37 - 30. Января 2013 :: 08:40
Печать  
Eprst писал(а) 30. Января 2013 :: 08:26:
С гетсисколор поиграюсь, а сами контролы по-отдельности не получится ?


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



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Цвет 1С
Ответ #38 - 30. Января 2013 :: 08:56
Печать  
Нужно!
Улыбка

Т.е, если я устанавливаю контролу цвет, на него видимость/доступность не "действует", ну т.е цвет не меняется ?
И пофик, это пусть разработчик "заботится" об цвете не активных контролов при установке "доступности"

Хотя, если будут "автоматом" с родным цветом, при не доступности - конечно, лучше было бы.
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Цвет 1С
Ответ #39 - 30. Января 2013 :: 09:48
Печать  
Eprst писал(а) 30. Января 2013 :: 08:56:
Нужно!
Улыбка

Т.е, если я устанавливаю контролу цвет, на него видимость/доступность не "действует", ну т.е цвет не меняется ?
И пофик, это пусть разработчик "заботится" об цвете не активных контролов при установке "доступности"

Хотя, если будут "автоматом" с родным цветом, при не доступности - конечно, лучше было бы.


На счет Видимости я ничего не говорил Улыбка

Я хотел донести вот какую мысль...попробую переформулировать.
Как это сейчас выглядит в 1С:
См. рек 1 и 2.Оба имеют НЕпростой тип.

1- недоступен, 2-доступен. Цвет одинаков - сходу не поймешь, доступен или нет реквизит.

См. рек 3 и 4. Простой тип (число, строка, дата)
По разнице цветов видно, какой доступен, какой нет.

Если установить перехват на процедуры окон этой формы, то, когда мы программно устанавливаем доступность для рек. 1 и 2, в сами процедуры окон не прилетают сообщения как-то сообщающие об изменении доступности.
И наоборот, для рек.3 и 4,  прилетают соответствующие сообщения. Поэтому в последнем случае, можно автоматом устанавливать цвет для Доступных и Недоступных реквизитов такого типа.

Поэтому, если есть желание менять цвета для НЕпростых реквизитов, то это нужно  делать руками.
  

Clipboard03_003.jpg ( 31 KB | Загрузки )
Clipboard03_003.jpg
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Цвет 1С
Ответ #40 - 30. Января 2013 :: 10:01
Печать  
Ну, руками, так руками, это не проблема (при установки Доступность в 0 поменять и цвет).

Вот при Форма.ТолькоПросмотр(1) тоже события не "летят" ? И придётся усю форму оббегать ?
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Цвет 1С
Ответ #41 - 30. Января 2013 :: 10:10
Печать  
Eprst писал(а) 30. Января 2013 :: 10:01:
Ну, руками, так руками, это не проблема (при установки Доступность в 0 поменять и цвет).

Вот при Форма.ТолькоПросмотр(1) тоже события не "летят" ? И придётся усю форму оббегать ?


Для простых типов прилетают.
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Цвет 1С
Ответ #42 - 30. Января 2013 :: 10:16
Печать  
Есть конечно еще один вариант, если передавть в скрипт саму форму, то можно добраться до состояния контролов, как это  возвращает метод Доступность(). Имеет смысл смотреть в этом направлении?
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Цвет 1С
Ответ #43 - 30. Января 2013 :: 10:18
Печать  
chessman писал(а) 30. Января 2013 :: 10:16:
Есть конечно еще один вариант, если передавть в скрипт саму форму, то можно добраться до состояния контролов, как это  возвращает метод Доступность(). Имеет смысл смотреть в этом направлении?


Нужно!
Лучше уж иметь возможность красить контролы в конкретной форме, но правильно!
  
Наверх
 
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 850
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: Цвет 1С
Ответ #44 - 30. Января 2013 :: 10:43
Печать  
То, что "сложный" реквизит (агрегированный тип) не изменяет цвет в режиме Недоступности - это, наверное, 1С-овская недоделка. А если ты сделаешь так, что и их цвет Недоступности можно будет менять - ну, вообще будет красота.
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
Переключение на Главную Страницу Страницы: 1 2 [3] 4 5 6
ОтправитьПечать