|
Как получить числовое значение из типа Цвет | ☑ | ||
---|---|---|---|---|
0
247tsm
09.11.14
✎
15:56
|
Есть цвет фона формы:
ЦветФонаФормы = ЭтаФорма.Панель.ЦветФона; Есть кнопка, цвет фона которой задается, как число, например: ЭлементыФормы.Кнопка01.BackColorContainer = 14214634; Как мне из ЦветФонаФормы с типом ЦВЕТ получить его числовое значение, чтобы можно было записать: ЦветФонаФормы1 = ...что-то...(ЦветФонаФормы); ЭлементыФормы.Кнопка01.BackColorContainer = ЦветФонаФормы1; |
|||
1
247tsm
09.11.14
✎
16:17
|
Дополнение / уточнение:
Я хочу фон кнопки сделать таким же, как фон формы. |
|||
2
247tsm
09.11.14
✎
16:22
|
Если бы как-то узнать значения RGB составляющих цвета фона формы.
|
|||
3
247tsm
09.11.14
✎
16:23
|
Как приятно на форуме вести беседу с умным человеком ;)
Неужели никто не нарушит мой монолог? |
|||
4
vis_tmp
09.11.14
✎
16:24
|
А зачем число?
Нельзя сразу цвету кнопки присвоить цвет формы? |
|||
5
0xFFFFFF
09.11.14
✎
16:29
|
(4) Бинго!!!
|
|||
6
Drac0
09.11.14
✎
16:32
|
(0) Что у тебя за кнопка со свойством "BackColorContainer"?
|
|||
7
vis_tmp
09.11.14
✎
16:35
|
Пропал уже ТС...
|
|||
8
Drac0
09.11.14
✎
16:42
|
Ну, вдруг появится. Есть вариант получить числовое представление цвета формы или еще чего (даже для Авто) - создать ФорматированныйДокумент, покрасить,получить этот цвет и его числовое представление из текста HTML этого документа.
|
|||
9
247tsm
09.11.14
✎
16:49
|
(4) Нет, нельзя, в свойстве кнопки - число
|
|||
10
247tsm
09.11.14
✎
16:50
|
(6) Кнопка 3D Active Button Magic
|
|||
11
247tsm
09.11.14
✎
16:51
|
(8) А проще никак нельзя?
|
|||
12
247tsm
09.11.14
✎
16:52
|
(8) Как то очень в обход и через пень колоду... ;)
|
|||
13
247tsm
09.11.14
✎
16:53
|
(8) А если поменяется структура HTML документа?
|
|||
14
Drac0
09.11.14
✎
17:05
|
(13) Все возможно. Но это HTML описание объекта ФорматированныйДокумент, вряд ли они как-то изменят background-color :)
|
|||
15
247tsm
09.11.14
✎
17:43
|
(14) А по-другому, проще никак нельзя?
|
|||
16
247tsm
09.11.14
✎
18:14
|
(8) Посмотрел я документ HTML, но там не числовое значение, а вот что:
background-color: CadetBlue; А где же числовое значение? |
|||
17
Drac0
09.11.14
✎
18:59
|
(16) вот так делаешь?
пФДок = Новый ФорматированныйДокумент; пФДок.Добавить("1234",Тип("ТекстФорматированногоДокумента")); пФДок.Элементы[0].Элементы[0].ЦветФона = аЦветСтиля; пТекстХТМЛ = ""; пСтр = Новый Структура; пФДок.ПолучитьHTML(пТекстХТМЛ, пСтр); пНомерСимвола = Найти(пТекстХТМЛ,"background-color: #"); пТекстЦвета = Сред(пТекстХТМЛ, пНомерСимвола+19,6); |
|||
18
Flyd-s
09.11.14
✎
19:08
|
||||
19
mdocs
09.11.14
✎
19:09
|
(0) Нуралиев походу не свои цвета ненавидит и хочет чтобы все решения на 1с одинаково выглядели. Отсюда огромные проблемы с управлением внещним видом.
|
|||
20
Chameleon1980
09.11.14
✎
23:09
|
Цвет1 + Цвет2*256+Цвет3*65536 Не?
|
|||
21
Chameleon1980
09.11.14
✎
23:09
|
ну иль найоборот
|
|||
22
247tsm
09.11.14
✎
23:22
|
(20) Верно, вот только откуда взять Цвет1, Цвет2 и Цвет3? Ведь свойство ЭтаФорма.Панель.ЦветФона выдает CadetBlue, а не RGB значения.
|
|||
23
247tsm
09.11.14
✎
23:26
|
(17) Почти, я пробую через ТабличныйДокумент, но похоже.
Сейчас попробую твое предложение. |
|||
24
247tsm
09.11.14
✎
23:30
|
(18) Понял предложение. Забросить в ТЗ все цвета и искать в ней.
Но, как-то не очень красиво... |
|||
25
247tsm
09.11.14
✎
23:38
|
(17) Не катит, ФорматированныйДокумент в 1С82, а у меня 1С81 ;)
|
|||
26
Chameleon1980
09.11.14
✎
23:52
|
ща разрулим
|
|||
27
247tsm
09.11.14
✎
23:52
|
(17) Не получается с ТабличнымДокументом, т.к. в тексте цвет задается также не числом, а именем:
background-color: CadetBlue; |
|||
28
247tsm
09.11.14
✎
23:54
|
Странное дело, уже не первый раз сталкиваюсь с простой задачей и сложностями в получении результата. То не могу ничем отловить событие мышки, то не могу преобразовать цвет... ;)
|
|||
29
247tsm
09.11.14
✎
23:56
|
Кто знает, может Excel поможет?
|
|||
30
Chameleon1980
09.11.14
✎
23:56
|
у цвета прибавь свойство
или .Зеленый .Красный .Синий получишь каждую состовляющую |
|||
31
Chameleon1980
09.11.14
✎
23:57
|
числом получишь
их и перемножай а потом как надо разбирай ты же вчера про хранилище зн? |
|||
32
247tsm
10.11.14
✎
00:02
|
(30) Не катит. Я смотрел в отладчике: у цвета CadetBlue, например, Зеленый=-1, Красный=-1 и Синий=-1.
|
|||
33
247tsm
10.11.14
✎
00:03
|
(31) Да, с хранилищем ты здорово помог.
|
|||
34
Chameleon1980
10.11.14
✎
00:06
|
а что показывает свойство .вид ?
|
|||
35
Chameleon1980
10.11.14
✎
00:07
|
WebЦвет (WebColor)
WindowsЦвет (WindowsColor) Абсолютный (Absolute) АвтоЦвет (AutoColor) ЭлементСтиля (StyleItem) |
|||
36
Chameleon1980
10.11.14
✎
00:11
|
у них остальных у всех RGB -1,-1,-1
Сцпакаук бяка |
|||
37
247tsm
10.11.14
✎
00:12
|
(34) Вид показывает Web Цвет
|
|||
38
Chameleon1980
10.11.14
✎
00:12
|
пока мысли кончились.
|
|||
39
Chameleon1980
10.11.14
✎
00:13
|
ВидЦвета ПеречислениеВидЦвета ПеречислениеВидЦвета
WindowsЦвета WindowsЦвета WindowsЦвета WEbЦвета WebЦвета WebЦвета вот в отладчике просто глянь хоть на чтом остановись |
|||
40
247tsm
10.11.14
✎
00:24
|
(39) Я заметил, что когда выбираешь, например, цвет фона формы правее закладок "Из стиля, WEB, Windows" указаны RGB значения выбранного цвета, например, для CadetBlue Красный=95, Зеленый=158 и Синий=160 или # 5F9EA0.
Вот как их получить из построителя цвета? |
|||
41
Chameleon1980
10.11.14
✎
00:27
|
выписать все или найти где-то таблицу-распарсить
|
|||
42
Chameleon1980
10.11.14
✎
00:29
|
допустим http://www.stm.dp.ua/web-design/color-html.php
а для чего оно в конце если не сикрет? |
|||
43
247tsm
10.11.14
✎
00:32
|
(41) Про таблицу я знаю, но как-то муторно получается, не интеллигентно.
|
|||
44
247tsm
10.11.14
✎
00:38
|
(42) Весь сыр-бор из-за того, что не получается у кнопки 3D Active Button Magic сделать прозрачный фон. А кнопка не прямоугольная, а со скругленными углами. И в углах виден фон. Чтобы его не было видно, я хочу сделать его одного цвета с фоном формы. Но у формы цвет фона задается именем стиля, а у кнопки - числом. Вот и всё.
|
|||
45
247tsm
10.11.14
✎
00:43
|
(41) кстати, как думаешь, что лучше, сделать справочник цветов и работать с ним или внешний текстовый файл или...?
|
|||
46
Chameleon1980
10.11.14
✎
00:43
|
У цвета есть тип Absolute
вот у него цвета раскладываются на числа |
|||
47
Chameleon1980
10.11.14
✎
00:44
|
ВидЦвета (ColorType)
Свойства: WebЦвет (WebColor) WindowsЦвет (WindowsColor) Абсолютный (Absolute) - от оно АвтоЦвет (AutoColor) ЭлементСтиля (StyleItem) |
|||
48
247tsm
10.11.14
✎
00:50
|
(47) Но ведь фон формы может быть и из набора цветов WebЦвет и из набора цветов WindowsЦвет, а не только Абсолютный.
|
|||
49
Chameleon1980
10.11.14
✎
00:55
|
апядь я пока и ниче не скажу
|
|||
50
247tsm
10.11.14
✎
01:03
|
(49) Я пока перекинул таблицу цветов (по твоей ссылке) в Excel и думаю с чем работать.
|
|||
51
Chameleon1980
10.11.14
✎
01:16
|
дык ето я так
|
|||
52
Chameleon1980
10.11.14
✎
01:17
|
в яндексе набрал просто таблица web цветов
|
|||
53
Chameleon1980
10.11.14
✎
01:21
|
||||
54
Chameleon1980
10.11.14
✎
01:24
|
||||
55
Chameleon1980
10.11.14
✎
01:25
|
кста
что покажет Значениевстрокувнутр одного, второго, третьего значения? Закономерность? |
|||
56
247tsm
10.11.14
✎
01:30
|
(55) Уже пробовал. Там набор шестнадцатеричных чисел, не похожих на код для WEB.
|
|||
57
Chameleon1980
10.11.14
✎
01:35
|
шестнадцатеричные тоже не пароль
|
|||
58
Chameleon1980
10.11.14
✎
01:36
|
счас погляжу
|
|||
59
Chameleon1980
10.11.14
✎
01:39
|
чет то ли я слепой?:
Значениевстрокувнутр(WEbЦвета.аквамарин) "{"#",9cd510c7-abfc-11d4-9434-004095e12fc7,2, {3,2, {4} } }" Строка Значениевстрокувнутр(WEbЦвета.акварельносиний) "{"#",9cd510c7-abfc-11d4-9434-004095e12fc7,2, {3,2, {1} } }" Строка Значениевстрокувнутр(WEbЦвета.антикбелый) "{"#",9cd510c7-abfc-11d4-9434-004095e12fc7,2, {3,2, {2} } }" Строка |
|||
60
Chameleon1980
10.11.14
✎
01:41
|
ааа в отладчике не заметно различий
|
|||
61
247tsm
10.11.14
✎
02:07
|
(60) всё, пошёл спать.
|
|||
62
247tsm
10.11.14
✎
09:40
|
Я так понял, что пока есть только одно решение. Загоню таблицу цветов в справочник Цветов и при открытии формы буду искать в нем цвет фона формы и присваивать такой же цвет фону контейнера кнопки.
Более красивое и простое решение никто не предложит? |
|||
63
247tsm
10.11.14
✎
09:44
|
Кстати, а нельзя ли без внешнего воздействия или с помощью метаданных или ещё как-нибудь в цикле перебрать все цвета... упс, забыл, если бы это было возможно, то можно было бы и сразу найти соответствие между именем цвета и его числовым (или RGB) значением.
|
|||
64
247tsm
10.11.14
✎
09:46
|
Получается, что разработчиков платформы 1С8 волнуют только чисто вычислительные моменты, а интерфейсные так, по боку?
|
|||
65
b_ru
10.11.14
✎
09:59
|
Просто у разработчиков платформы 1С8 есть понятие об юзабилити и элементарный вкус.
В отличии от людей, которые пихают на форму 3D Active Button Magic |
|||
66
247tsm
10.11.14
✎
10:12
|
(65) О вкусах не спорят.
И, как говорится, заказчик всегда прав и хочет видеть то, что хочет видеть. |
|||
67
247tsm
10.11.14
✎
10:15
|
(65) "Просто у разработчиков платформы 1С8 есть понятие об юзабилити и элементарный вкус" - т.е. все прочие разработчики: от Microsoft, WEB разработчики и миллион других - это плохая юзабилити и бездарный вкус?
Круто! |
|||
68
hhhh
10.11.14
✎
10:18
|
(67) ну вы ведь копошитесь в окаменелом дерьме 8.1. И в тоже время говорите о юзабилити. Переходите тогда уж на 8.3.
|
|||
69
chudishe
10.11.14
✎
10:19
|
(67) Именно так, дружок. ActiveX должен умереть в страшных муках. Нефиг всякое добро тащить на форму.
|
|||
70
b_ru
10.11.14
✎
10:32
|
(67) Я в продуктах Микрософт такого леденящего душу кошмара как-то не встречал.
|
|||
71
247tsm
10.11.14
✎
11:02
|
(68) (69) (70) Мы немного отвлеклись от (0).
Всё-таки, есть ли возможность выразить цвет, например, CadetBlue через тройку RGB или одним числом? Решение 1. Через таблицу цветов (используя справочник, внешний файл txt, xls...) Решение 2. Через документ HTML. Но оно, по-моему, не корректное, т.к. в тексте HTML документа цвет также задается, как background-color: CadetBlue. Предположения: может есть методы достучаться до построителя цвета? В нем правее закладок "Из стиля, WEB, Windows" указаны RGB значения выбранного цвета, например, для CadetBlue Красный=95, Зеленый=158 и Синий=160 или # 5F9EA0. Вот как их получить из построителя цвета? |
|||
72
necro
10.11.14
✎
11:02
|
Майн гот, я на этот эктив батон глянул... Это же какой-то привет из лихих девяностых, я сам такую для сайтега рисовал...
|
|||
73
necro
10.11.14
✎
11:03
|
(71) Нет ничего такого, все извращаются как могут. Если очень хочется, можно даже какую-нибудь COM-пипетку нацепить.
|
|||
74
247tsm
10.11.14
✎
11:04
|
(72) Можешь предложить, что-нибудь посвежее?
|
|||
75
necro
10.11.14
✎
11:14
|
(74) Может сразу начать с создания HTML, там есть всякие псевдо-стили, события и так далее - что угодно можно нарисовать. А в 1С какой контрол ни вставляй - проблема будет оставаться: тайный смысл своих цветовых констант оно не выдает.
|
|||
76
Chameleon1980
10.11.14
✎
11:17
|
||||
77
Chameleon1980
10.11.14
✎
11:18
|
может отпарсить html и в регистр сведений эту инфу?
|
|||
78
Drac0
10.11.14
✎
11:19
|
Создай табличный документ, покрась фон ячейки, запиши в файл, открой файл ,посмотри цвет. Возможно, он будет преобразован в RGB. Но это лишняя запись на диск и чтение.
|
|||
79
247tsm
10.11.14
✎
12:00
|
(76) (77) Нет, наверно, лучше загрузить цвета в справочник и работать с ним.
|
|||
80
247tsm
10.11.14
✎
12:01
|
(78) Чем так, лучше загрузить цвета в справочник, думаю так правильнее.
|
|||
81
Drac0
10.11.14
✎
12:06
|
(80) Это неуниверсально будет. Если для форм зададут цвет вручную (по RGB),а в форме будет Авто, сможешь найти?
|
|||
82
Chameleon1980
10.11.14
✎
12:14
|
рс мне для такого больше приглянулся
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |