Имя: Пароль:
1C
1С v8
Как в УФ перейти на следующую страницу?
0 RomaH
 
naïve
14.10.11
13:59
Собственно - надо при переходе по элементам с первой страницы уходить не на кнопку по умолчанию а на следующую страницу формы
1 Леха Дум
 
14.10.11
14:13
можно попробовать назначить сочетание клавиш
2 RomaH
 
naïve
17.10.11
07:03
(1) ага - а на кнопку повесить вин шелл и это сочетание клавишь передавать програмно?
3 БибиГон
 
17.10.11
07:13
сделать кнопку "переход" кнопкой по умолчанию?
4 RomaH
 
naïve
17.10.11
07:39
(3) а смысл?

кнопка есть, она нажимается
но сейчас код выглядит примерно так:
&НаКлиенте
Процедура ПерейтиНаСледующуюСтраницу(Команда)
   
   Если ЭтаФорма.ТекущийЭлемент = Элементы.ПерейтиНаСледующуюСтраницу1 Тогда
       ЭтаФорма.ТекущийЭлемент = Элементы.__КИ_Поле1;
   ИначеЕсли ЭтаФорма.ТекущийЭлемент = Элементы.ПерейтиНаСледующуюСтраницу2 Тогда
       ЭтаФорма.ТекущийЭлемент = Элементы.НаправившееУчреждение;
   ИначеЕсли ЭтаФорма.ТекущийЭлемент = Элементы.ПерейтиНаСледующуюСтраницу3 Тогда
       ЭтаФорма.ТекущийЭлемент = Элементы.Полисы;
   КонецЕсли;
   
КонецПроцедуры

а хотелось ы без если  - просто как-то хитро узнать в какой группе страниц находимся, на какой по номеру странице - и перейти на следующую
5 RomaH
 
naïve
17.10.11
10:27
получилось вот так:

&НаКлиенте
Процедура ПерейтиНаСледующуюСтраницу(Команда)
   
   УстановитьСледующуюСтраницуТекущей = Ложь;
   
   Для Каждого СтраницаДокумента Из Элементы.СтраницыДокумента.ПодчиненныеЭлементы Цикл
       
       Если УстановитьСледующуюСтраницуТекущей Тогда
           Элементы.СтраницыДокумента.ТекущаяСтраница = СтраницаДокумента;    
           УстановитьСледующуюСтраницуТекущей = Ложь;
           Прервать;
       КонецЕсли;
       
       Если Элементы.СтраницыДокумента.ТекущаяСтраница = СтраницаДокумента Тогда
           УстановитьСледующуюСтраницуТекущей = Истина;    
       КонецЕсли;
       
   КонецЦикла;
   
   Если Не УстановитьСледующуюСтраницуТекущей Тогда
       ТекущийЭлемент = УстановитьТекущийЭлементНаСтранице(Элементы.СтраницыДокумента.ТекущаяСтраница);
   КонецЕсли;
   
КонецПроцедуры

&НаКлиенте
Функция УстановитьТекущийЭлементНаСтранице(ГруппаФормы)
   
   Для Каждого ЭлементГруппы Из ГруппаФормы.ПодчиненныеЭлементы Цикл
       
       Если ТипЗнч(ЭлементГруппы) = Тип("ПолеФормы") Тогда
           Возврат ЭлементГруппы;
       КонецЕсли;
       
       Возврат УстановитьТекущийЭлементНаСтранице(ЭлементГруппы);
           
   КонецЦикла;
   
   
КонецФункции
6 RomaH
 
naïve
17.10.11
10:31
теперь вопрос - а как вообще убрать кнопку с формы, но что бы команда отрабатывала?
сейчас кнопка команды располагается сразу за группой страниц по которым переходим - т.е. при уходе с последнего поля на текущей странице активируется эта кнопка - следующим энтером она нажимается и выходим на следуюущую страницу группы страниц

а вот как избавиться от кнопки?
7 RomaH
 
naïve
17.10.11
10:33
по сути тут бе ВК никак? - ибо события активации/потери фокуса 1С не обрабатывает, а без них ведь никак?

... ну ВК есть, но так извращаться - только если попросят
8 anastasia1188
 
17.10.11
10:33
А если использовать ЭлементыФормы.ТекущийЭлемент?)
9 RomaH
 
naïve
17.10.11
10:36
(8) когда?
10 RomaH
 
naïve
17.10.11
10:41
теперь бы ще унифицировать код

   Для Каждого СтраницаДокумента Из Элементы.СтраницыДокумента.ПодчиненныеЭлементы Цикл

вот это место

допустим переход по кнопке - кнопка сразу за группой страниц - вопрос как узнать закакой она группой через код?
метода не нашел
вижу только так:

Для Каждого ЭлементФормы Из Кнопка.Родитель.Элементы Цикл
Если ЭлементФормы = КнопкаПерехода Тогда
Прервать;
КонецЕсли;
НужнаяГруппа = ЭлементФормы;
КонецЦикла;

т.е. тут находим перебором (за синтаксис не ручаюсь)
а мотодов никаких нет?