Переключение на Главную Страницу Страницы: [1] 2  ОтправитьПечать
Горячая тема (более 10 ответов) События ТП (число прочтений - 4149 )
ziflex
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 76
Местоположение: Владивосток
Зарегистрирован: 05. Мая 2011
Пол: Мужской
События ТП
02. Ноября 2011 :: 06:42
Печать  
Доброго времени суток!

Начал разбираться с ТП. И застопорился на одном моменте.

Эсть обработка. На ней ЭУ на которой создается ТП.
Формирую колонки и все ок.
Но, почему-то не отрабатывают события.
То ли мои кони тихо ходют, то ли еще что... Не хотел создавать эту ветку, лазил по форуму, но к сожалению ничего не нашел, чтобы решило мою проблему.

Достаточно ли обхявить событие? К примеру:

Код
Выбрать все
Процедура Выбор(ТабличноеПоле,Стр,Колонка,ТипРегиона)
	Сообщить("1");
КонецПроцедуры // ПриАктивизацииКолонки
 

  
Наверх
 
IP записан
 
pavel_tr
Senior Member
****
Отсутствует



Сообщений: 279
Местоположение: Казань
Зарегистрирован: 14. Октября 2006
Пол: Мужской
Re: События ТП
Ответ #1 - 02. Ноября 2011 :: 06:47
Печать  
Событие должно называтьзя ИДкнопкиВыбор
Для кнопки с идентификатором "тпТовары" будет вызываться событие тпТоварыВыбор и по аналогии
  
Наверх
 
IP записан
 
ziflex
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 76
Местоположение: Владивосток
Зарегистрирован: 05. Мая 2011
Пол: Мужской
Re: События ТП
Ответ #2 - 02. Ноября 2011 :: 07:07
Печать  
Семен Семеныыыч! Убил целый день на этой, перерыл кучу тем....
Почему этого нет в документации? (или быть может у меня она старая..)

Спасибо большое! Но чувствую это не последний мой вопрос по ТП Очень довольный
  
Наверх
 
IP записан
 
pavel_tr
Senior Member
****
Отсутствует



Сообщений: 279
Местоположение: Казань
Зарегистрирован: 14. Октября 2006
Пол: Мужской
Re: События ТП
Ответ #3 - 02. Ноября 2011 :: 08:06
Печать  
Ничего, у меня в самом начале тоже был такой вопрос. На самом деле в доке всё есть, надо просто внимательно читать:

Табличное поле может генерировать события в виде вызова процедур модуля формы, на которой оно расположено, имена которых должны быть составлены из имени реквизита формы и имени события. Каждое событие, кроме описанных параметров, всегда имеет первый параметр, имеющий значение объекта - источника событий (само табличное поле).

Про первый параметр тоже всегда надо помнить, в als в описании событий он опущен
  
Наверх
 
IP записан
 
ziflex
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 76
Местоположение: Владивосток
Зарегистрирован: 05. Мая 2011
Пол: Мужской
Re: События ТП
Ответ #4 - 02. Ноября 2011 :: 09:41
Печать  
То ли у меня голова к концу дня уже опухла, то ли описание немного мутное )))

P.s. ммм не понял, какой первый параметр? "ТабличноеПоле" ?
  
Наверх
 
IP записан
 
ziflex
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 76
Местоположение: Владивосток
Зарегистрирован: 05. Мая 2011
Пол: Мужской
Re: События ТП
Ответ #5 - 02. Ноября 2011 :: 10:10
Печать  
А как насчет удаления строки кнопочкой Del... ?) так все красиво и не хочется пркручивать отдельную для этого кнопку.
  
Наверх
 
IP записан
 
Satans Claws
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 721
Зарегистрирован: 29. Ноября 2010
Re: События ТП
Ответ #6 - 02. Ноября 2011 :: 10:38
Печать  
ziflex писал(а) 02. Ноября 2011 :: 10:10:
А как насчет удаления строки кнопочкой Del... ?) так все красиво и не хочется пркручивать отдельную для этого кнопку.


Событие Формекса "ПриОтжатииКнопкиКлавиатуры"
Опционально - смотри активный элемент диалога, чтоб обрабатывать именно для нужного ТП.
  
Наверх
 
IP записан
 
ziflex
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 76
Местоположение: Владивосток
Зарегистрирован: 05. Мая 2011
Пол: Мужской
Re: События ТП
Ответ #7 - 02. Ноября 2011 :: 10:50
Печать  
Зашел удалить сообщение, т.к. как раз именно так данный вопрос, а уже ответ Улыбка

А скролл бар у всех нормально работает? Вот у меня он почему-то сразу встает на середину, как только я спущусь вниз немного.
  
Наверх
 
IP записан
 
pavel_tr
Senior Member
****
Отсутствует



Сообщений: 279
Местоположение: Казань
Зарегистрирован: 14. Октября 2006
Пол: Мужской
Re: События ТП
Ответ #8 - 02. Ноября 2011 :: 12:26
Печать  
Скролл бар как и в штатных табличных формах себя ведёт (для sql баз). Если у табличного поля поставщик данных таблица значений, работать будет как надо, с отображением верной позиции. При поставщике данных odbc информация получается из базы порциями, поэтому когда курсор не в самом верху или в самом низу скролл бар тупо рисуется в центре т.к. точная позиция курсора относительно всего количества записей 1Сой не выясняется
  
Наверх
 
IP записан
 
pavel_tr
Senior Member
****
Отсутствует



Сообщений: 279
Местоположение: Казань
Зарегистрирован: 14. Октября 2006
Пол: Мужской
Re: События ТП
Ответ #9 - 02. Ноября 2011 :: 12:27
Печать  
ziflex писал(а) 02. Ноября 2011 :: 09:41:
P.s. ммм не понял, какой первый параметр? "ТабличноеПоле" ?


Для всех событий ТП. В доке написано так: Синтаксис: Выбор(Строка, Колонка, ТипРегиона), на самом деле так: Синтаксис: Выбор(тп, Строка, Колонка, ТипРегиона)
  
Наверх
 
IP записан
 
zk96
Senior Member
****
Отсутствует


1C++ rocks!

Сообщений: 320
Местоположение: Киев
Зарегистрирован: 15. Ноября 2009
Пол: Мужской
Re: События ТП
Ответ #10 - 02. Ноября 2011 :: 13:02
Печать  
В доке написано так:
Цитата:
Табличное поле может генерировать события в виде вызова процедур модуля формы, на которой оно расположено, имена которых должны быть составлены из имени реквизита формы и имени события. Каждое событие, кроме описанных параметров, всегда имеет первый параметр, имеющий значение объекта - источника событий (само табличное поле).
  
Наверх
 
IP записан
 
ziflex
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 76
Местоположение: Владивосток
Зарегистрирован: 05. Мая 2011
Пол: Мужской
Re: События ТП
Ответ #11 - 02. Ноября 2011 :: 22:55
Печать  
pavel_tr писал(а) 02. Ноября 2011 :: 12:26:
Скролл бар как и в штатных табличных формах себя ведёт (для sql баз). Если у табличного поля поставщик данных таблица значений, работать будет как надо, с отображением верной позиции. При поставщике данных odbc информация получается из базы порциями, поэтому когда курсор не в самом верху или в самом низу скролл бар тупо рисуется в центре т.к. точная позиция курсора относительно всего количества записей 1Сой не выясняется


У меня ИТ. Я понял в каких случая он встает колом. Когда устанавливается индекс по какой-нибудь колонке (просто при ДобавитьИндекс(х,х) или Сортировать(х)). Отключаешь индекс/сортировку - и скролл бар работает так как нужно.
Это баг или фича?)))

И еще в этом случае когда меняешь значение ТП (и соответсвенно ИТ в поставщике) оно автоматически сортируется и позиционирование с него не слетает но ТП не отображает передвижение этого элемента. Т.е. отрисовывается по новой но не фокусируется на нем. (Хотя если нажать на клавишу стрелочки вниз или вверх, то фокусируется на элементе который ниже или выше соответсвенно).
  
Наверх
 
IP записан
 
Dmitry The Wing
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 839
Местоположение: Где-то в Сибири
Зарегистрирован: 18. Августа 2009
Пол: Мужской
Re: События ТП
Ответ #12 - 03. Ноября 2011 :: 04:25
Печать  
ziflex писал(а) 02. Ноября 2011 :: 22:55:
И еще в этом случае когда меняешь значение ТП (и соответсвенно ИТ в поставщике) оно автоматически сортируется и позиционирование с него не слетает но ТП не отображает передвижение этого элемента. Т.е. отрисовывается по новой но не фокусируется на нем. (Хотя если нажать на клавишу стрелочки вниз или вверх, то фокусируется на элементе который ниже или выше соответсвенно).
Потому что текущая строка ТП никак не связана с текущей строкой поставщика (в твоем случае ИТ).
  
Наверх
 
IP записан
 
Necytij
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 12
Зарегистрирован: 15. Сентября 2008
Re: События ТП
Ответ #13 - 03. Ноября 2011 :: 10:27
Печать  
Уважаемые гуру, у меня другая грабля - как заставить размер ТП зависеть от размера формы - чтобы при разворачивании формы, размер увеличивался. В методах ничего подобного не нашел. Сам не хочет. Версия платформы 27, версия 1с++ 3.2.3.1
Как с ТЗ? - Не должно быть полей ввода правее и/или ниже чем на форме находиться сама ТЗ? Не вижу таких...
Опять же 2 ТЗ в одной форме, на разных вкладках никак не хотят увеличиваться обе. С ТП можно этот момент обойти?
Спасибо.
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: События ТП
Ответ #14 - 03. Ноября 2011 :: 10:42
Печать  
  

1&&2&&3
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 
ОтправитьПечать