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


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

Сообщений: 850
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Цвет 1С
14. Января 2013 :: 13:34
Печать  
Выделил в отдельную тему пожелание, описанное здесь: http://www.1cpp.ru/forum/YaBB.pl?num=1206671269/35#35

Задать цвет для формы целиком - с тулбарами, реквизитами и пр.

Можно и для всего приложения целиком, если при этом останется возможность изменять цвет формы, хотя бы методом Formex.

  

ZamenaCveta1_001.jpg ( 35 KB | Загрузки )
ZamenaCveta1_001.jpg

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



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Цвет 1С
Ответ #1 - 22. Января 2013 :: 13:56
Печать  
Пока получается вот в таком ключе.
  

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



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



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Цвет 1С
Ответ #3 - 23. Января 2013 :: 06:48
Печать  
Eprst писал(а) 23. Января 2013 :: 05:03:
Круто, И когда увидим это детище ?
И.. каждый атрибут в отдельности можно красить, или только все сразу ?


Думаю, что в какое-то ближайшее разумное время можно подготовить релиз.

Теоритически можно задавать фон/цвет шрифта для любого атрибута, но для этого нужно только организовать удобный интерфейс между скриптом и 1С-ом.

На данный момент все сделано для 1С-а в целом: перехватываются 3 функции, 2 из которых являются процедурами для классов окон 1С (AfxWndProcBase из MFC42.DLL и еще одна из BR32.DLL). Такой подход хорош тем, что перехватил один раз три функции и дальше пользуешься этим для всех форм. Тут есть один нюанс - помимо самих форм, цвет поменяют многие "системные" окна 1С-ки, например "Выбор периода", Серсис и т.д.
Если для каждой формы хочется устанавливать свои правила, то это несколько усложняет процесс, но вроде тоже реально.

Какой подход выбрать?
  
Наверх
 
IP записан
 
zk96
Senior Member
****
Отсутствует


1C++ rocks!

Сообщений: 320
Местоположение: Киев
Зарегистрирован: 15. Ноября 2009
Пол: Мужской
Re: Цвет 1С
Ответ #4 - 23. Января 2013 :: 07:10
Печать  
Так понятно ж какой хочется - последний, т.е. для каждой формы .
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Цвет 1С
Ответ #5 - 23. Января 2013 :: 07:23
Печать  
zk96 писал(а) 23. Января 2013 :: 07:10:
Так понятно ж какой хочется - последний, т.е. для каждой формы .


Тогда каждую форму придется скармливать классу.
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Цвет 1С
Ответ #6 - 23. Января 2013 :: 07:28
Печать  
Ну и ладно.
Скармливать то при открытии небось надо будет ?
И настройки до атрибутов.. тоже неплохо бы.
Я б на нескольких формах чего-нить "понавыделял" бы красным цветом для особо одаренных товарищей.
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Цвет 1С
Ответ #7 - 23. Января 2013 :: 07:42
Печать  
Eprst писал(а) 23. Января 2013 :: 07:28:
Ну и ладно.
Скармливать то при открытии небось надо будет ?
И настройки до атрибутов.. тоже неплохо бы.


В ПослеОткрытия, поскольку окон еще не создано в ПриОткрытии.
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Цвет 1С
Ответ #8 - 23. Января 2013 :: 07:51
Печать  
Желательно , конечно, изменять еще цвет "на-ходу" в уже открытой форме.
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Цвет 1С
Ответ #9 - 23. Января 2013 :: 08:37
Печать  
Eprst писал(а) 23. Января 2013 :: 07:51:
Желательно , конечно, изменять еще цвет "на-ходу" в уже открытой форме.


Это реально.
  
Наверх
 
IP записан
 
alyuev
God Member
*****
Отсутствует


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

Сообщений: 850
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: Цвет 1С
Ответ #10 - 23. Января 2013 :: 10:13
Печать  
Здорово!
Тогда может сделать так - задать цвет всей 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С
Ответ #11 - 29. Января 2013 :: 12:57
Печать  
Выкладываю версию для дальнейшего обсуждения - куда двигаться дальше.

В составе класс и тестовая обработка.
  

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



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Цвет 1С
Ответ #12 - 29. Января 2013 :: 13:37
Печать  
Невозможно создание объекта контейнером ActiveX: 'DynamicWrapperX'
Ошибка выполнения Microsoft VBScript

DWX.WndProc::УстановитьФорму(НеизвестныйОбъект Форма=) : Ошибка выполнения Microsoft VBScript: Требуется объект: 'oServ'
ScrptCtrl.Run("setForm", рФорма.Дескриптор);
{...\DWX.WndProc.ert(515) }

теперь другие

DWX.WndProc::УстановитьФорму(НеизвестныйОбъект Форма=) : Ошибка выполнения Microsoft VBScript: Несоответствие типа: 'Wrap.HeapFree'
ScrptCtrl.Run("setForm", рФорма.Дескриптор);
{\DWX.WndProc.ert(515) }

wndProc.УстановитьФорму(Форма);
{F:\BASE\ТОРГОВЛЯ\CLASSES\ЦВЕТАТРИБУТОВ\TEST.ERT(25)}: DWX.WndProc::УстановитьФорму(НеизвестныйОбъект Форма=) : Ошибка выполнения Microsoft VBScript: Несоответствие типа: 'Wrap.HeapFree'
ScrptCtrl.Run("setForm", рФорма.Дескриптор);
{DWX.WndProc.ert(515) }


Это, мот кинешь свою dynwrapx.dll ?
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Цвет 1С
Ответ #13 - 29. Января 2013 :: 14:08
Печать  
  
Наверх
 
IP записан
 
alyuev
God Member
*****
Отсутствует


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

Сообщений: 850
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: Цвет 1С
Ответ #14 - 29. Января 2013 :: 14:48
Печать  
У меня заработало. Но цвет панелей закрашивается не полностью - только сами кнопки. Главное меню осталось серым.
  

ColorTest1.jpg ( 32 KB | Загрузки )
ColorTest1.jpg

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