Имя: Пароль:
1C
1C 7.7
v7: Не работает Общие.Форма.Привязки
,
0 dimm7310
 
23.09.13
11:34
Когда - то использовал привязки в V7.7 (но примеры использования потеряны), попросили привязать в форме документа два новых реквизита формы  (кнопка и стока текста), что бы они не съезжали вниз, а были привязаны к верху и левому краю (при развороте формы). FormEx подключена 2.0.5.101 (используется для раскраски строк).
Пробую как:

Процедура НастроитьПривязки()
    оПривязки = СоздатьОбъект("Общие.Форма.Привязки");
    оПривязки.Добавить("ВыборАдресаДоставки1", "ВВ", "Форма", "ЛЛ", "Форма");
    оПривязки.Добавить("ТекстАдресДоставкиОсновнаяЗакладка", "ВВ", "Форма", "ЛЛ", "Форма");
КонецПроцедуры


вызов НастроитьПривязки() - прописал в Приоткрытии() и ПриВыбореЗакладки().      

Не работает.  Как правильно ?
1 antoneus
 
23.09.13
11:40
ПослеОткрытия и ПриИзмененииРазмераОкна забыл.
2 dimm7310
 
23.09.13
11:45
(1) спасибо
3 Mikeware
 
23.09.13
11:51
Формексовские процедуры в коде есть?
//********************* FormEx { ******************************************************//
Процедура ПриИзмененииРазмераОкна(ТипСобытия, Ширина, Высота)
        Перем Верх, Ширина1, Высота1;
    оПривязки.ПриИзмененииРазмераОкна(ТипСобытия, Ширина, Высота);
КонецПроцедуры

Процедура ПриДвиженииМыши(Сост, Лево, Верх, ФСО)
    оПривязки.ПриДвиженииМыши(Сост, Лево, Верх, ФСО);
КонецПроцедуры

Процедура ПриНажатииЛевойКнопки(Сост, Лево, Верх, ФСО)
    оПривязки.ПриНажатииЛевойКнопки(Сост, Лево, Верх, ФСО);
КонецПроцедуры

Процедура ПриОтжатииЛевойКнопки(Сост, Лево, Верх, ФСО)
    оПривязки.ПриОтжатииЛевойКнопки(Сост, Лево, Верх, ФСО);
КонецПроцедуры
///********************* } FormEx ******************************************************//
4 dimm7310
 
23.09.13
12:37
(3) да .

не совсем корректно работает :    если открываю форму документа в минимизированном виде (неполный размер формы), то работает нормально. Если открываю документ сразу в полный размер, то новые реквизиты улетают вниз.
Сейчас в коде :

Процедура НастроитьПривязки()
    оПривязки = СоздатьОбъект("Общие.Форма.Привязки");
    оПривязки.Добавить("ВыборАдресаДоставки1", "ВВ", "Форма", "ЛЛ", "Форма");
    оПривязки.Добавить("ТекстАдресДоставкиОсновнаяЗакладка", "ВВ", "Форма", "ЛЛ", "Форма");
КонецПроцедуры

Процедура ПриИзмененииРазмераОкна(ТипСобытия, Ширина, Высота)
    оПривязки.ПриИзмененииРазмераОкна(ТипСобытия, Ширина, Высота);
КонецПроцедуры

Процедура ПриДвиженииМыши(Сост, Лево, Верх, ФСО)
    оПривязки.ПриДвиженииМыши(Сост, Лево, Верх, ФСО);
КонецПроцедуры

Процедура ПриНажатииЛевойКнопки(Сост, Лево, Верх, ФСО)
    оПривязки.ПриНажатииЛевойКнопки(Сост, Лево, Верх, ФСО);
КонецПроцедуры

Процедура ПриОтжатииЛевойКнопки(Сост, Лево, Верх, ФСО)
    оПривязки.ПриОтжатииЛевойКнопки(Сост, Лево, Верх, ФСО);
КонецПроцедуры

приоткрытии()
НастроитьПривязки();
КонецПроцедуры

роцедура ПослеОткрытия()
    РФорма = СоздатьОбъект("РасширениеФормы");
    РФорма.РаскрашиватьТаблицу("МногострочнаяЧасть");
    Сервис = СоздатьОбъект("Сервис");


    оПривязки.ПослеОткрытия();
КонецПроцедуры
5 ADirks
 
23.09.13
12:38
(0) ну и этта... как бы сказать...  Привязки "ВВ", "Форма", "ЛЛ", "Форма"  - как-то немножко бессмысленны
6 Ёпрст
 
23.09.13
12:39
(4) сними галку изменять размер в свойствах формы.
7 Ёпрст
 
23.09.13
12:40
(5) это точно.
8 dimm7310
 
23.09.13
12:40
(5) как правильно для моего случая? Мне нужна привязка к верху и левому краю формы, что бы мои реквизиты оставались на месте при увеличении размеров формы (как и реквизиты находящиеся выше на форме)
9 Ёпрст
 
23.09.13
12:40
(5) слушай, ты никакое ограничение в своём классе не лепил, на счет растягивания сплиттеров ?
10 Ёпрст
 
23.09.13
12:41
(8) сделай (6) и не привязывай их, вообще.
11 Ёпрст
 
23.09.13
12:42
+9 или только "псевдо" ограничители пихать ?
12 dimm7310
 
23.09.13
12:45
(10) не подходит, реквизиты и таблица на других закладках должны перемещаться (кнопки и показатели док-та), и табличная часть должна растягиваться.
13 ADirks
 
23.09.13
12:46
(9) нет, ничего такого не надо было
а какого рода ограничение надо?
14 Mikeware
 
23.09.13
12:48
(11) а что ты называешь "псевдоограничителями"?
15 Mikeware
 
23.09.13
12:49
(12) они кверху-клеву кабы автопривязываются.
16 ADirks
 
23.09.13
12:50
хм... щас посмотрел, есть такая фигня  МинимальныеРазмеры(ИмяАтр, МинШирина, МинВысота)
не знаю, работает или нет  :)
17 Ёпрст
 
23.09.13
12:51
(16) не, эта шляпа не работает.. вообще :)
18 Mikeware
 
23.09.13
12:53
(17) у меня работала. Правда, как-то странно ТЗ уменьшала, не помню уже точно...
19 Mikeware
 
23.09.13
12:53
+(18) правда, класс мне Олег давал, а не с сайта....
20 Ёпрст
 
23.09.13
12:54
Ну, тут кому-то лепил форму на основе твоего класса,
грубо, три ряда таблиц значений и 3 колонок из них же, т.е 9х9
поле из ТЗ.. к каждой ТЗ справа кнопки, между всеми ТЗ - сплиттеры.
Задача - чтоб ТЗ растягивались сплиттером до нижней границы кнопок.

Приходилось втыкать "псевдо" сплиттеры.. А так, задал бы МинимальныеРазмеры и привет, но, это не работает.
21 Ёпрст
 
23.09.13
12:54
Грубо, нужно ограничитель какой-нить внятный.
22 dimm7310
 
23.09.13
13:01
народ, а по (4) есть что сказать?
23 Ёпрст
 
23.09.13
13:02
(22) ага, см (10).

А так, при использовании привязок, надо всегда убирать эту галку с формы и все контролы делать через привязки.
24 Ёпрст
 
23.09.13
13:02
в том числе и многострочную часть твою.
25 Ёпрст
 
23.09.13
13:03
Иначе, можешь получить не тот эффект, что ожидаешь.
26 Mikeware
 
23.09.13
13:04
(20) сетевые крестики-нолики?
27 dimm7310
 
23.09.13
13:05
(23) ясно , если убирать галку , то до фига придется прописывать, поведение всех остальных контролов меня устраивает
28 dimm7310
 
23.09.13
13:09
я писал в (4) что если открываю док  в минимизированном виде, и потом растягиваю, то все ОК, а если сразу максимизированным, то кнопки уезжают.  Может как то можно ТОЛЬКО при формировании формы их привязать , а то уж очень не хочется снимать галку и прописывать привязки для всех контролов (уж очень из дофига)
29 Mikeware
 
23.09.13
13:09
(27) где-то на инфосраневалалась обработка для расстановки привязок. автор -вроде бы  Ёпрст
30 Ёпрст
 
23.09.13
13:10
(26) не, просто документ такой..
31 Ёпрст
 
23.09.13
13:12
(29) есть  такая, я её так и не довёл до ума, бросил.
Хотя есть даже алгоритм для turbomd в башке, ради чего всё и затевалось и реализацию недолго написать, но , лень мне
:))
32 Mikeware
 
23.09.13
13:14