Переключение на Главную Страницу Страницы: [1] 2 3 ... 32 ОтправитьПечать
Очень популярная тема (более 25 ответов) ТП: Прямое редактирование значений (число прочтений - 188393 )
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
ТП: Прямое редактирование значений
11. Февраля 2008 :: 21:26
Печать  
Итак, разрешите всех нас поздравить с днем рождения еще одной возможности.
Спасибо всем, чьи идеи и комментарии помогали в работе. Улыбка

Наброски документации:

--> Методы ТП:
РедактироватьЗначение(стр, кол, рег, знач, длина, точность, идентификатор, флаги)

- Открывает окно для редактирования значения по заданным координатам.

Параметры:
стр, кол, рег: строка, колонка, регион - координаты окна
знач: значение, определяет тип контрола и начальные данные
длина: доп. характеристика типа для чисел и строк
точность: доп. характеристика типа для чисел
идентификатор: идентификатор элемента управления (может быть пустым)
флаги: параметры создаваемого контрола; могут задаваться числом и строкой, в том числе шестнадцатиричной (с префиксом 0x)

ЗавершитьРедактированиеЗначения()

- Завершает редактирование с вызовом события
- Возвращает флаг успешности операции (1 или 0)

ОтменитьРедактированиеЗначения()

- Отменяет редактирование без вызова события
- Возвращает флаг успешности операции (пока всегда 1)

--> События ТП:
ПриРедактированииЗначения(стр, кол, рег, знач, фсо)

- Завершает успешный ввод значения

Параметры:
стр, кол, рег: строка, колонка, регион - координаты окна
знач: введенное значение
фсо: флаг стандартной обработки

ПриОтменеРедактированияЗначения(стр, кол, рег)

- Завершает отмену ввода значения

Параметры:
стр, кол, рег: строка, колонка, регион - координаты окна

ПослеРедактированияЗначения(стр, кол, рег)

- Вызывается после успешного ввода значения (и отработки события ПриРедактированииЗначения)
- Событие может быть использовано для запуска нового редактирования значения

Параметры:
стр, кол, рег: строка, колонка, регион - координаты окна завершенного редактирования


Флаги:
dpDoNotTab 0x00000004 // пропускать при вводе
dpQuickChoice 0x00000008 // быстрый выбор
dpUseHelpString 0x00000010 // использовать описание (в качестве подсказки)
dpHasButton 0x00000020 // имеет кнопку выбора
dpDisableAutoChoice 0x00000200 // автовыбор выкл
dpUndefined 0x00100000 // неопределенный тип (тип может быть назначен)

Прошу любить и жаловать; но при этом рассматривать как бету, с интерфейсом, в котором возможны изменения.
Здесь публикуется с целью предварительного ознакомления, отладки и просто для обмена мнениями.

JohnyDeath писал(а) 16. Ноября 2007 :: 06:43:
kms писал(а) 15. Ноября 2007 :: 19:21:
И, конечно, прямой ввод в ячейку ТП - совсем не помешает.

Вооо! Вот этого давно жду! Думал, что никогда не будет.

Да ладно! Все еще только начинается. Улыбка



2008-02-15
[+] добавлена поддержка прямого доступа ко временным атрибутам
(*) изменена отрисовка 3D заголовков

2008-02-16
[!] исправлены проблемы совместимости
[-] исправлена потеря ESC при первом нажатии

2008-02-17
[-] исправлено AV в событии Выбор()

2008-02-18
[+] добавлена поддержка модального режима

2008-02-19
[!] исправлено обновление групповых контекстов

2008-02-23
[-] исправлено падение при закрытии модальной формы во время редактирования
[+] добавлена поддержка кнопок по умолчанию

2008-02-28
[-] Исправлена привязка шаблонов таблиц в событии Выбор()

2008-03-26
[!] Сборка icpp/3.0/EV
[-] 3633 - ошибка в логике обновления ТП при изменении состава видимых колонок
[-] 3635 - ТП теряет синхронизацию с селект-листом при переустановке провайдера
[-] 3650 - нарушение синхронизации селект-листа для поставщиков шапки и подвала
[!] 3656 - изменен интерфейс события ПриОкончанииБыстрогоПоиска
[-] 3674 - невозможно создать шрифт на основании автоматического шрифта
[-] 3681 - падение при установке в качестве поставщика неверного агрегатного значения
[-] 3684 - не отображаются маленькие чекбоксы
[-] 3689 - потеря объектов GDI при установке шрифта ТП
[-] 3690 - некорректная обработка параметров по-умолчанию для шрифтов

2008-03-27
[+] 3655 - получение текстового ИД документа

2008-03-28
[+] 3460 - по имени атрибута формы получить объект ТП или АктивИкс
и т.д.

2008-04-10
[!] синхронизация ООП c 1cpp/2.5 (artbear)
[-] 3460 ПолучитьЭлементУправления не возвращает иерархию для наследников АктивИкс

2008-04-15
(-) 3742 Изменение момента снятия выделения строк для поддержки D&D


==
2008-07-22

Все изменения по данной ветке являются частью проекта icpp
http://www.1cpp.ru/index.php/Image:Icpp-latest.rar

==
2009-12-09

Цитата:
В событии ПриРедактированииЗначения модификация реквизитов формы недопустима.

http://www.1cpp.ru/forum/YaBB.pl?num=1260265701

==
2010-02-03

Добавлен микропример для иллюстрации базовых возможностей EV

==
2010-12-08

[+] 4517 - Добавлено событие ПриОтменеРедактированияЗначения
[+] 4518 - Добавлен ФСО в событие ПриРедактированииЗначения

==
2011-02-11

[+] 4528 - ТП: Добавить событие ПослеРедактированияЗначения
« Последняя редакция: 11. Февраля 2011 :: 11:21 - kms »  

TF_EV_Example.ert ( 7 KB | Загрузки )

De quelle planète es-tu?
Наверх
 
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: ТП: Прямое редактирование значений
Ответ #1 - 11. Февраля 2008 :: 21:51
Печать  
Гм... Ну ты даешь.
А я только спать собрался Улыбка
  
Наверх
ICQ  
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: ТП: Прямое редактирование значений
Ответ #2 - 11. Февраля 2008 :: 21:58
Печать  
Работает. На любых типах значений.
Акуеть! (не могу сдержать эмоций) Очень довольный
  
Наверх
ICQ  
IP записан
 
maljaev
Senior Member
****
Отсутствует


Классический секс с 1С
надоел. Хочется изврата...

Сообщений: 405
Местоположение: Нижний Новгород
Зарегистрирован: 19. Октября 2006
Пол: Мужской
Re: ТП: Прямое редактирование значений
Ответ #3 - 11. Февраля 2008 :: 23:14
Печать  
Зачетно! Радости у народа должно быть полные штаны...
Блин, как надоела 1С, кто бы знал... Только подобные чудеса еще как-то поддерживают интерес к ней.
  
Наверх
 
IP записан
 
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: ТП: Прямое редактирование значений
Ответ #4 - 12. Февраля 2008 :: 04:08
Печать  
Только вот с подчиненными справочниками беда...
Попробовал
Спр = СоздатьОбъект("Справочник.Подчиненный");
Спр.ИспользоватьВладельца(ЭлементВладелец);
,"","0x00000020");

и в итоге сначала выбрать владельца надо, а потом только подчиненные... вот
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: ТП: Прямое редактирование значений
Ответ #5 - 12. Февраля 2008 :: 06:12
Печать  
(0)
не видел, но одобряю  Подмигивание
  

1&&2&&3
Наверх
 
IP записан
 
Uzhast
1c++ power user
Отсутствует



Сообщений: 1341
Зарегистрирован: 30. Августа 2006
Пол: Мужской
Re: ТП: Прямое редактирование значений
Ответ #6 - 12. Февраля 2008 :: 06:47
Печать  
kms писал(а) 11. Февраля 2008 :: 21:26:
Итак, разрешите всех нас поздравить с днем рождения еще одной возможности.

Ну, едреныть, здорово как получилось!  Улыбка Улыбка Улыбка

Думал, не доживу Улыбка

И даже с агрегатными значениями нормально работает.

PS. Колись, как реализовано. Особенно про агрегатные значения. А вне формы такой ввод работать будет? Улыбка
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: ТП: Прямое редактирование значений
Ответ #7 - 12. Февраля 2008 :: 07:31
Печать  
Круто! Спасибо, Миша!
П.С. после редактирования значения куда-то пропадает один "esc", т.е. отредактировал, бегаяю по ячейкам, хочу закрыть форму обработки по ESC, но первое нажатие уходит вникуда, второе - отрабатывает нормально.
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: ТП: Прямое редактирование значений
Ответ #8 - 12. Февраля 2008 :: 09:35
Печать  
А можно ещё пару флагов добавить:
чтоб при окончании редактирования текущей ячейкой становилась либо "нижняя" либо "правая"? Я, конечно, понимаю, чтоэто всё и самому можно былоб написать, но, ИМХО, так краше будет.  Подмигивание
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: ТП: Прямое редактирование значений
Ответ #9 - 12. Февраля 2008 :: 22:37
Печать  
vip писал(а) 11. Февраля 2008 :: 21:58:
Работает. На любых типах значений.
Акуеть! (не могу сдержать эмоций) Очень довольный

Да можно не сдерживать, дети уже спят Улыбка

maljaev писал(а) 11. Февраля 2008 :: 23:14:
Блин, как надоела 1С, кто бы знал... Только подобные чудеса еще как-то поддерживают интерес к ней.

Очень хорошо знаю. Кстати, твои чудеса мы тоже видели. Подмигивание

vandalsvq писал(а) 12. Февраля 2008 :: 04:08:
Только вот с подчиненными справочниками беда...

Принято.
Выбор подчиненных и групп в эту серию не прошел из-за ограничений по бюджету Улыбка

JohnyDeath писал(а) 12. Февраля 2008 :: 07:31:
П.С. после редактирования значения куда-то пропадает один "esc", т.е. отредактировал, бегаяю по ячейкам, хочу закрыть форму обработки по ESC, но первое нажатие уходит вникуда, второе - отрабатывает нормально.

Принято.
Теряется загадочно при наличии события ТП. Будем искать... Улыбка

JohnyDeath писал(а) 12. Февраля 2008 :: 09:35:
А можно ещё пару флагов добавить:
чтоб при окончании редактирования текущей ячейкой становилась либо "нижняя" либо "правая"? Я, конечно, понимаю, чтоэто всё и самому можно былоб написать, но, ИМХО, так краше будет.  Подмигивание


Пока все же задача стоит в отладке базовой логики, там видно будет.
Но здесь проще все же в коде реализовать, типа:

Процедура ТаблПолеПриРедактированииЗначения(__тп, __стр, __кол, __рег, __знач)
     Если __рег =3 Тогда
           _всего =__тп.Колонки.Количество();
           _поз =__тп.Колонки.Индекс(__кол) +1;
           _поз =?(_поз =_всего, 0, _поз);
           __тп.ТекущаяКолонка = __тп.Колонки.Получить(_поз);
     КонецЕсли;
КонецПроцедуры

Тем более, что у меня есть масса примеров, когда логика чисто условная, т.е. возможность редактирования ячейки и адрес перехода определяется не колонкой события, а данными строки.

trad писал(а) 12. Февраля 2008 :: 06:12:
(0)
не видел, но одобряю  Подмигивание

Очень довольный

Uzhast писал(а) 12. Февраля 2008 :: 06:47:
Ну, едреныть, здорово как получилось!  Улыбка Улыбка Улыбка

Меня тоже оптимизирует Улыбка
Реально неплохо, тем более, что мы-то знаем, чего это стоило в целом.

Цитата:
Думал, не доживу Улыбка

Э, ну во-первых это же не ты думал. Улыбка
И потом я не понял, ты тоже за это время дедушкой стал что ли?

... вечно молодым, вечно пьяным...

Цитата:
И даже с агрегатными значениями нормально работает.
PS. Колись, как реализовано. Особенно про агрегатные значения.

Непременно. Сейчас вот пиво мы допьем...

Цитата:
А вне формы такой ввод работать будет? Улыбка

Неа. Я, конечно, начал с того описания простых контролов в вике, а закончил все равно контролами формы.
В модифицированном виде - с добавлением и удалением в нужном месте... в нужное время...
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: ТП: Прямое редактирование значений
Ответ #10 - 12. Февраля 2008 :: 22:39
Печать  
Фигасе! Мих, ты просто мегачувак! Улыбка Только все заснуло в проекте, так ты опять подбросишь дров в топку...
Огромный тебе пасиб!
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: ТП: Прямое редактирование значений
Ответ #11 - 12. Февраля 2008 :: 22:51
Печать  
Arta писал(а) 12. Февраля 2008 :: 22:39:
Фигасе! Мих, ты просто мегачувак! Улыбка Только все заснуло в проекте, так ты опять подбросишь дров в топку...
Огромный тебе пасиб!

Хорошо сказал. Очень довольный
С тебя тоже тогда отзывы и предложения по теме Улыбка
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: ТП: Прямое редактирование значений
Ответ #12 - 12. Февраля 2008 :: 22:56
Печать  
Ты изменения в найтбилд еще не закоммитил? Или пока ждешь отзывов?
Уже прочел Улыбка


kms писал(а) 11. Февраля 2008 :: 21:26:
Здесь публикуется с целью предварительного ознакомления, отладки и просто для обмена мнениями.


  
Наверх
 
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: ТП: Прямое редактирование значений
Ответ #13 - 13. Февраля 2008 :: 05:50
Печать  
Arta писал(а) 12. Февраля 2008 :: 22:56:
Ты изменения в найтбилд еще не закоммитил? Или пока ждешь отзывов?
Уже прочел Улыбка


kms писал(а) 11. Февраля 2008 :: 21:26:
Здесь публикуется с целью предварительного ознакомления, отладки и просто для обмена мнениями.




А все-таки хотелось бы что-то вроде отдельной ветки сборки TF с этим функционалом. Если не очень напряжно. Или сразу внести в ветку TF. Если я правильно понимаю, в ветке TF есть все изменения основной ночной сборки.
Все равно эту ветку на свой страх юзают отдельные энтузиасты (я Улыбка). А лучшего тестирования, чем боевое применение, не придумаешь.
  
Наверх
ICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: ТП: Прямое редактирование значений
Ответ #14 - 13. Февраля 2008 :: 06:32
Печать  
vip писал(а) 13. Февраля 2008 :: 05:50:
А все-таки хотелось бы что-то вроде отдельной ветки сборки TF с этим функционалом. Если не очень напряжно. Или сразу внести в ветку TF. Если я правильно понимаю, в ветке TF есть все изменения основной ночной сборки.
Все равно эту ветку на свой страх юзают отдельные энтузиасты (я Улыбка). А лучшего тестирования, чем боевое применение, не придумаешь.

+1
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 3 ... 32
ОтправитьПечать