Имя: Пароль:
1C
 
Добавление элементов формы
0 Yorik
 
06.09.10
15:10
Доброе время суток всем, собственно продолжение начатой темы об програмном добавлении элементов управления, у меня следующий затык; имеются переключатели уже добавленные на форму но загвоздка в том что не присваивается параметр "ВыбираемоеЗначение" у меня идет как истина или ложь....в чем жеж дело?

          Переключатель.ВыбираемоеЗначение = Истина;
1 Mitriy
 
06.09.10
15:11
у ВыбираемоеЗначение тип число...
2 Mitriy
 
06.09.10
15:12
(1)* гоню ))
3 Yorik
 
06.09.10
15:16
...неопределено
4 Mitriy
 
06.09.10
15:17
(3) никогда переключатели не добавлял... но чую, геморно это...
5 anatoly
 
06.09.10
15:23
ничего геморного. тип ВыбираемоеЗначение зависит от того какой реквизит в данных. главное правильно порядок на форме настроить и ПервыйВГруппе.
6 Yorik
 
06.09.10
15:24
тип Булево, и порядок проставлен
7 Mitriy
 
06.09.10
15:26
(5) и все это программно... не говоря о том, что нужен реквизит, который программно не сделаешь...
8 Yorik
 
06.09.10
15:29
....мне не нужно его создавать он уже есть, ругается на присвоение атрибуту "ВыбираемоеЗначение" значения истина
9 Mitriy
 
06.09.10
15:30
(8) код в студию...
10 Yorik
 
06.09.10
15:32
(0)
11 Mitriy
 
06.09.10
15:36
(10) мля... ты реквизиту, что ли, выбираемое значение пытаешься присвоить?
элементу надо присваивать...
12 Mitriy
 
06.09.10
15:37
(11)+ сбил ты меня с панталыку своим "программным добавлением элементов"...
13 Yorik
 
06.09.10
15:41
Переключатель = ЭтаФорма.ЭлементыФормы.Добавить(Тип("Переключатель"),"Перек1",Истина,ЭлементыФормы.Панель31);
           Переключатель.Данные = "ВключитьСвет";        
           Переключатель.Верх = 36;
           Переключатель.Высота = 19;
           Переключатель.Ширина = 390;
           Переключатель.Лево = 19;
           Переключатель.ПорядокОбхода = 1;
           Переключатель.ПервыйВГруппе = Истина;
14 Yorik
 
06.09.10
15:43
черт там еще выбираемое значение я убрал
15 Yorik
 
06.09.10
15:46
2 Переключатель

           Переключатель = ЭтаФорма.ЭлементыФормы.Добавить(Тип("Переключатель"),"Перек2",Истина,ЭлементыФормы.Панель31);
           Переключатель.Верх = 92;
           Переключатель.Высота = 19;
           Переключатель.Ширина = 390;
           Переключатель.Лево = 19;
           Переключатель.ПорядокОбхода = 2;
           Переключатель.ВыбираемоеЗначение = 2=3;
           Переключатель.ПервыйВГруппе = Ложь;
16 Yorik
 
06.09.10
15:47
(11)(12) что ты рассказываешь где я тут к данным значение присваиваю?
17 Yorik
 
06.09.10
16:00
Ну что там?
18 НЕА123
 
06.09.10
16:03
Типа значения не видать.
19 Mitriy
 
06.09.10
16:11
(16) это не я рассказываю, это ты в (10) код зажал... так что не пеняй на мою телепатию...
20 Yorik
 
06.09.10
16:13
а в (13) показал и что твоя телепатия?
21 Yorik
 
06.09.10
16:14
(18) что то вроде
22 НЕА123
 
06.09.10
16:17
23 Aprobator
 
06.09.10
16:17
(21) тебе ж в (13)сказали - тип значения кто будет задавать?
Где Переключатель.ТипЗнач = Новый ОписаниеТипов("Булево");
Или до расширений элементов управления в форме не дочитал?
24 Yorik
 
06.09.10
16:19
...а разве "Данные" значения не задают?
25 Mitriy
 
06.09.10
16:20
(20) есть догадка, но мне стало скучно в этой ветке...
26 НЕА123
 
06.09.10
16:20
вообще-то ответ, как и во многих ветках в(1)
27 Yorik
 
06.09.10
16:21
(25) ну и что за догадка
28 Aprobator
 
06.09.10
16:22
(25) да здесь догадок то куча. Хотя бы то, что переключатели помещаются в группу (рамка группы), а не в панель. Т.е. надо сначала рамку группы создать, а потом в нее все вешать. А тут группы нет, но переключатель первый - на панели что ли?
29 Yorik
 
06.09.10
16:23
рамка группы есть, типзначения как и говорил присваивается данными, переключатель на странице панели...
30 Aprobator
 
06.09.10
16:24
ЭлементыФормы.Панель31 - рамка группы?
31 НЕА123
 
06.09.10
16:25
(29)
ну ты и упертый.
на кой куй ветку создал?
32 Aprobator
 
06.09.10
16:25
а стоп - торможу
33 Yorik
 
06.09.10
16:26
(30)Нет это панель, на ней еще есть страницы
34 НЕА123
 
06.09.10
16:26
(32)
пр рамку - да.
35 Aprobator
 
06.09.10
16:27
(34) про нее самую )
36 Yorik
 
06.09.10
16:27
(31) ага день похерил и не таким станешь:(
37 Yorik
 
06.09.10
16:32
ну так что уважаемые есть какие то идеи?
38 Aprobator
 
06.09.10
16:40
Нарисуй все для теста на форме и через отладчик глянь, как там свойства разлеглись.
39 Yorik
 
06.09.10
16:44
(38)...да в том то и дело что мое злочасное ВыбираемоеЗначение сидит как булево с соответствующим значением, те получает что добавить интерактивно можно....
40 НЕА123
 
06.09.10
16:48
пэздэц.
автор, ты строчку из (23) можешь вставить?
41 Yorik
 
06.09.10
16:50
....ставил, ругается.......ТЕБЕ СКАЗАЛ ЖЕ ТИП ЗАДАЕТСЯ ИЗ ДАННЫХ
42 Yorik
 
06.09.10
16:50
...сам пэздэц
43 Yorik
 
06.09.10
16:56
...либо от данные надо отказываться, задавая тип , что мне не нужно, любо прописывать данные
44 Aprobator
 
06.09.10
17:08
Что такое данные - "ВключитьСвет" реквизит формы?
45 Шапокляк
 
06.09.10
17:09
Переключатель.Данные = "ВключитьСвет";
Вот это, действительно, пэздэц
46 Yorik
 
06.09.10
17:20
...реквизит документа
47 Yorik
 
06.09.10
17:21
...булево
48 Шапокляк
 
06.09.10
17:24
тогда убери кавычки:
Переключатель.Данные = ВключитьСвет;
49 Aprobator
 
06.09.10
17:25
(48) почитай СП внимательней.
50 Yorik
 
06.09.10
17:25
...ага и чо свет включится?
51 Yorik
 
06.09.10
17:30
....уважаемая    Шапокляк  ошибка при установке аттрибута Данные контектса....
52 Aprobator
 
06.09.10
17:32
(50) попробуй строку данных так подсунуть: "ДокументОбъект.ВключитьСвет".
53 Aprobator
 
06.09.10
17:33
(51) гы - вот проверять это явно не стоило )
54 Шапокляк
 
06.09.10
17:43
(50) прочитала. Вы правы.
Данные (Data)
Использование:
Чтение и запись.
Описание:
Тип: Строка. Содержит имя связанной переменной. Для элементов управления, редактирующих данные, изменение значения в элементе управления автоматически влечет изменение значения связанной переменной. Для элементов управления, в которых не осуществляется редактирование, позволяет связать элемент управления и данные для удобства работы.
Недоступно на сервере 1С:Предприятие. Не используется в модуле внешнего соединения.
Примечание:
При установке поля ввода или табличного поля в качестве владельца формы, свойство становится недоступно.
(52) Ваше предложение, конечно,интереснее...И его, безусловно, стоит проверить.
55 Yorik
 
06.09.10
17:45
(53)....гыыы чо проверил?
56 Aprobator
 
06.09.10
17:46
(54) предложение создано по мотивам примера из СП (к методу Добавить для эдементов формы):

ПолеРегистра = ЭлементыФормы.Добавить(Тип("ТабличноеПоле"),
       СтрокаТаблицы.Имя,
       Истина,
       ЭлементыФормы.ОсновнаяПанель);
ПолеРегистра.Данные = "ДокументОбъект.Движения." + СтрокаТаблицы.Имя;
57 Aprobator
 
06.09.10
17:47
(55) даже мыслей не было.
58 Aprobator
 
06.09.10
17:49
кстати, при добавлении элемента его свойство Доступность какое значение принимает?
59 Шапокляк
 
06.09.10
17:50
(57) чтением СП навеяло :)
Переключатели используют в тех случаях, когда требуется выбрать только одно ЧИСЛОВОЕ значение из небольшого числа возможных фиксированных вариантов. Переключатели, определяющие одно значение, относятся к одной группе. Для каждой группы переключателей необходимо назначить первый в группе элемент, которому присваивается имя изменяемого значения. Относящиеся к одной группе переключатели должны следовать строго друг за другом в порядке обхода после первого в группе.
Недоступен на сервере 1С:Предприятие. Не используется в модуле внешнего соединения.
60 Yorik
 
06.09.10
17:55
...а какое захочу такое и примет, а что?
61 Yorik
 
06.09.10
17:55
...кстати у меня 8.2
62 Aprobator
 
06.09.10
17:56
(5) в конфе УПП переключатели используются для булева значения. Причем связанное с реквизитом документа. Специально смотрел. Например, Справочник  "Показатели схем мотивации".
(61) ппц - раньше сказать не мог?
63 Aprobator
 
06.09.10
17:56
(62) к (59) и (61)
64 Yorik
 
06.09.10
17:57
(63) а шо ето меняет?
65 lxs
 
06.09.10
17:58
Для Индекс = 1 По 5 Цикл
       
       ПереключательХ = ЭлементыФормы.Добавить(Тип("Переключатель"), Истина,);
       
       ПереключательХ.Верх = 50 + Индекс*15;
       ПереключательХ.Лево = 10;
       ПереключательХ.Данные = "Переключатель";
       ПереключательХ.Заголовок = "Переключатель " + Строка(Индекс);
       ПереключательХ.ПорядокОбхода = Индекс;
       ПереключательХ.Значение = Индекс;
       ПереключательХ.Имя = "Переключатель" + Строка(Индекс);
       
       Если Индекс = 1 Тогда
           
           ПереключательХ.ПервыйВГруппе = Истина;
           
       КонецЕсли;
       
       
   КонецЦикла;
66 Шапокляк
 
06.09.10
17:59
(63) Как отправил СП читать, так и почитала :). Иногда, и правда, полезно лишний раз к СП обратиться.
67 Yorik
 
06.09.10
17:59
...и шо?(65)
68 Yorik
 
07.09.10
14:49
....все сделал.........САМ:)