AXForum  
Вернуться   AXForum > Microsoft Dynamics NAV > NAV: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 15.08.2005, 18:17   #1  
rootadmin is offline
rootadmin
Участник
Аватар для rootadmin
 
224 / 10 (1) +
Регистрация: 25.03.2003
Адрес: Москва
После пробования всяческих разных календарей пришел к выводу, что наилучший к использованию - тот, что есть.
Есть формочка такая - 7609. После незначительных переработок привел ее к виду, когда можно выбрать дату, нажать на кнопку ОК (ее я сделал) и выбрать дату.
Внимание, вопрос! Возможно ли сделать так, чтобы заработал дабл-клик по лукапу (или лукап по дабл-клику... ) ? Чтобы не надо было нажимать лишний раз на кнопку.

З.Ы. Вечная тема, блин, календарь... Почему не было таких проблем в 1С?
__________________
С уваженем,
rootadmin
Старый 15.08.2005, 18:27   #2  
SVG is offline
SVG
Участник
 
201 / 10 (1) +
Регистрация: 15.11.2004
Надо кнопку Ok сделать дефолтной.
А вообще оно точно надо - интерфейс для ввода даты?
Руками набрать не быстрее? Тем более что в нави в отличие от 1С можно набрать ТОЛЬКО число, или только число с месяцем.
Всяка быстрее будет чем мышкой бегать туда-сюда....
Старый 15.08.2005, 18:27   #3  
Yoil is offline
Yoil
NavAx
NavAx Club
Лучший по профессии 2017
Лучший по профессии 2009
 
1,574 / 70 (6) ++++
Регистрация: 20.11.2002
Адрес: Msk
Ну типа эта...
На OnPush (или на OnLookup, или еще куда) взять время (и дату) клика. Дальше два случая:
1) У нас уже есть записанное время клика. Если он случился меньше, чем N мс назад - это был даблклик - выполняем какое-нить действие (запускаем лукап) и обнуляем время записи последнего клика.
2) У нас записано нулевое время (до этого уже выполнен даблклик) или промежуток больше N - перезаписываем время.
__________________
"Моей лошадке ядрышком полмордочки снесло..."
А.В.Суворов, письма к дочери
Старый 15.08.2005, 18:35   #4  
rootadmin is offline
rootadmin
Участник
Аватар для rootadmin
 
224 / 10 (1) +
Регистрация: 25.03.2003
Адрес: Москва
to SVG
Иногда надо. Особенно, если надо выбрать, скажем, второй понедельник от текущей даты. А текущая дата - среда.

Вобще это неправильно - брать что-то одно. Надо стараться взять все хорошее от всего, от чего только можно (главное - не переборщить )

to Дуд - любопытно, сейчас попробую
__________________
С уваженем,
rootadmin
Старый 15.08.2005, 18:39   #5  
rootadmin is offline
rootadmin
Участник
Аватар для rootadmin
 
224 / 10 (1) +
Регистрация: 25.03.2003
Адрес: Москва
Стоп. Как это попробуем.....?
Нет у матрикса ни он-клика, ни он-дабл-клика, ни чего, что можно было бы использовать.

Если дабл-клик по лукапу работает только на TableBox, то видимо не судьба.
__________________
С уваженем,
rootadmin
Старый 15.08.2005, 18:58   #6  
Шрэк is offline
Шрэк
Участник
Аватар для Шрэк
 
645 / 24 (2) +++
Регистрация: 09.02.2004
Адрес: Москва
Да, полезная вещь получилась бы. Может идею Дуда как-нибудь можно использовать в тригере Day - OnBeforInput?
__________________
MBS Certified Master in Navision Developer
Старый 15.08.2005, 19:27   #7  
rootadmin is offline
rootadmin
Участник
Аватар для rootadmin
 
224 / 10 (1) +
Регистрация: 25.03.2003
Адрес: Москва
не, там импута нету. (Editable=no)
На самом деле максимум, что можно сделать, это кнопку Ок сделать дефолтной (как предложил SVG). Enter, он конечно не дабл-клик, но тоже ничего.
__________________
С уваженем,
rootadmin
Старый 16.08.2005, 09:03   #8  
DA_NEAL is offline
DA_NEAL
Участник
Аватар для DA_NEAL
Лучший по профессии 2017
Лучший по профессии 2009
 
788 / 54 (3) ++++
Регистрация: 05.08.2002
Адрес: Королев
Вроде как триггер Day - OnBeforInput срабатывает в любом случае.
__________________
Want to believe...
Старый 16.08.2005, 10:10   #9  
Шрэк is offline
Шрэк
Участник
Аватар для Шрэк
 
645 / 24 (2) +++
Регистрация: 09.02.2004
Адрес: Москва
Цитата:
Сообщение от DA_NEAL
Вроде как триггер Day - OnBeforInput срабатывает в любом случае.
Ну, дык! Я потому его и предложил.
__________________
MBS Certified Master in Navision Developer
Старый 16.08.2005, 10:14   #10  
SVG is offline
SVG
Участник
 
201 / 10 (1) +
Регистрация: 15.11.2004
Цитата:
Сообщение от rutadmeen
to SVG
Иногда надо. Особенно, если надо выбрать, скажем, второй понедельник от текущей даты. А текущая дата - среда.
Вобще это неправильно - брать что-то одно. Надо стараться взять все хорошее от всего, от чего только можно (главное - не переборщить )
Юзать клавиатуру - это ИМХО правильно.
Далее. Если проблема только в том, чтоб вводить второй понедельник, это можно решить. Есть такая функция в первом кодеюните -
<div class='CALtop'>C/AL</div><div class='CAL'>MakeDateText(VAR DateText : Text[250]) : Integer</div>
Ее можно доработать напильником, чтоб она научилась понимать конструкции типа -2Н1 (минус две недели, понедельник).
Это все элементарно, Ватсон...
Старый 16.08.2005, 10:17   #11  
SVG is offline
SVG
Участник
 
201 / 10 (1) +
Регистрация: 15.11.2004
Кстати по даблклику - как предложил Дуд.
Не совсем понятно как получить число, на котором стоит юзер на OnBeforeInput. Или я торможу без кофе?
Есть красивый и стабильно рабочий способ? (напоминаю что это глючный матрикс)
Старый 16.08.2005, 10:28   #12  
Yoil is offline
Yoil
NavAx
NavAx Club
Лучший по профессии 2017
Лучший по профессии 2009
 
1,574 / 70 (6) ++++
Регистрация: 20.11.2002
Адрес: Msk
А фиг знает. Надо порыться. Но ломает
__________________
"Моей лошадке ядрышком полмордочки снесло..."
А.В.Суворов, письма к дочери
Старый 16.08.2005, 11:01   #13  
rootadmin is offline
rootadmin
Участник
Аватар для rootadmin
 
224 / 10 (1) +
Регистрация: 25.03.2003
Адрес: Москва
Обнаружилось вот что:
1. Число (ячейку), на котором стоит курсор обнаружить не сложно
2. OnBeforInput срабатывает действительно полюбому, но
3. Срабатывает непредсказуемое число раз - иногда два, чаще три, но бывает и один, а то и пять, шесть
4. Не срабатывает при повтороном клике на ячейку
__________________
С уваженем,
rootadmin
Старый 16.08.2005, 11:10   #14  
Шрэк is offline
Шрэк
Участник
Аватар для Шрэк
 
645 / 24 (2) +++
Регистрация: 09.02.2004
Адрес: Москва
Цитата:
Сообщение от rutadmeen
4. Не срабатывает при повтороном клике на ячейку
Должен. Ставил Message, у меня срабатывал, но действительно срабатывает 2 раза при повторном клике, а также при открытии формы н-ное количество раз
__________________
MBS Certified Master in Navision Developer
Старый 16.08.2005, 11:18   #15  
rootadmin is offline
rootadmin
Участник
Аватар для rootadmin
 
224 / 10 (1) +
Регистрация: 25.03.2003
Адрес: Москва
При Message может и срабатывает. а без него нет.
__________________
С уваженем,
rootadmin
Старый 16.08.2005, 11:46   #16  
SVG is offline
SVG
Участник
 
201 / 10 (1) +
Регистрация: 15.11.2004
Хе-хе... А знаете пачиму?! Патамушта нефиг :-D
Старый 16.08.2005, 12:03   #17  
rootadmin is offline
rootadmin
Участник
Аватар для rootadmin
 
224 / 10 (1) +
Регистрация: 25.03.2003
Адрес: Москва
очнь смешно...
на самом деле нормально работает и без дабл-клика. On Enter рулит!
__________________
С уваженем,
rootadmin
Старый 16.08.2005, 12:07   #18  
Kirvisniemi is offline
Kirvisniemi
Moderator
 
342 / 13 (1) ++
Регистрация: 21.12.2004
Предлагаю еще один способ. Вешаем на таймер активацию какого-нибудь ненужного элемента каждые 100ms. А на OnActivate матрицы - обработчик даблклика - с подсчетом дельты по времени между активациями.
Старый 16.08.2005, 12:10   #19  
rootadmin is offline
rootadmin
Участник
Аватар для rootadmin
 
224 / 10 (1) +
Регистрация: 25.03.2003
Адрес: Москва
даже не пробуя - тогда невозможно будет пользоваться клавиатурой, если фокус все время слетать будет.
__________________
С уваженем,
rootadmin
Старый 16.08.2005, 12:12   #20  
Kirvisniemi is offline
Kirvisniemi
Moderator
 
342 / 13 (1) ++
Регистрация: 21.12.2004
Ну почему же? делаем пять кнопок - одну в центре, другие четыре - вокруг. Фокус по таймеру постоянно сбрасываем на центральную кнопку. А остальные будут имитировать нажатие стрелок (см. Sokoban)
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 23:32.