Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Как получить ширину колонки (число прочтений - 3585 )
Bagirius
Full Member
***
Отсутствует



Сообщений: 135
Зарегистрирован: 19. Февраля 2008
Пол: Мужской
Как получить ширину колонки
10. Февраля 2009 :: 14:49
Печать  
Делаю так

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



Меняю ширину - пофик, результат один, что не так?
  
Наверх
ICQ  
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: Как получить ширину колонки
Ответ #1 - 10. Февраля 2009 :: 15:24
Печать  
Bagirius писал(а) 10. Февраля 2009 :: 14:49:
Делаю так

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



Меняю ширину - пофик, результат один, что не так?


Попробуй перед этим
ФормаРасш.УстановитьАвтоширинуВТаблице("МногострочнаяЧасть",0);
  
Наверх
ICQ  
IP записан
 
Bagirius
Full Member
***
Отсутствует



Сообщений: 135
Зарегистрирован: 19. Февраля 2008
Пол: Мужской
Re: Как получить ширину колонки
Ответ #2 - 10. Февраля 2009 :: 15:33
Печать  
vip писал(а) 10. Февраля 2009 :: 15:24:
Попробуй перед этим
ФормаРасш.УстановитьАвтоширинуВТаблице("МногострочнаяЧасть",0);


Делаб в Процедура ПриЗакрытии()

вылетает 1С
  
Наверх
ICQ  
IP записан
 
АЛьФ
FormEx developer
1c++ developer
Отсутствует



Сообщений: 1538
Местоположение: Санкт-Петербург
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как получить ширину колонки
Ответ #3 - 10. Февраля 2009 :: 20:58
Печать  
Bagirius писал(а) 10. Февраля 2009 :: 14:49:
Делаю так

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



Меняю ширину - пофик, результат один, что не так?

Не забываем, что нумерация колонок начинается с нуля и невидимые колонки так же участвуют в нумерации.
  

FormEx developer
Наверх
www  
IP записан
 
Bagirius
Full Member
***
Отсутствует



Сообщений: 135
Зарегистрирован: 19. Февраля 2008
Пол: Мужской
Re: Как получить ширину колонки
Ответ #4 - 11. Февраля 2009 :: 08:23
Печать  
АЛьФ писал(а) 10. Февраля 2009 :: 20:58:
Bagirius писал(а) 10. Февраля 2009 :: 14:49:
Делаю так

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



Меняю ширину - пофик, результат один, что не так?

Не забываем, что нумерация колонок начинается с нуля и невидимые колонки так же участвуют в нумерации.


Я не смог найти как получить список колонок многострочной части формы справочника, и сделал таким образом

Код
Выбрать все
ФормаРасш = СоздатьОбъект("РасширениеФормы");
ФормаРасш.УстановитьФорму(Форма);
ФормаРасш.УстановитьАвтоширинуВТаблице("МногострочнаяЧасть",0);
НомКол = 0;
Для А = 0 По ФормаРасш.КоличествоАтрибутов() - 1 Цикл
  Тип = ФормаРасш.ПолучитьАтрибут(А).Тип;
  Если  (Тип = 5) ИЛИ (Тип = 9) Тогда
	Сообщить(ФормаРасш.ПолучитьАтрибут(А).Заголовок + " / " + НомКол + " / " + ФормаРасш.ПолучитьШиринуКолонки("МногострочнаяЧасть", НомКол));
	СЗ.ДобавитьЗначение(ФормаРасш.ПолучитьШиринуКолонки("МногострочнаяЧасть", НомКол), "_"+НомКол);
	НомКол = НомКол + 1;
  КонецЕсли;
КонецЦикла; 



Если внинуть эту обработку ПриЗакрытии, вылетает 1С, я так думаю, что разрушается табличная часть, т.к. не может получить атрибут ТЧ.

Как мне правильно сделать?

ЗЫ: если убрать УстановитьАвтоширинуВТаблице, то не правильно ширину берет.
  
Наверх
ICQ  
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать