powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Маска "Краткий формат времени"
15 сообщений из 15, страница 1 из 1
Маска "Краткий формат времени"
    #40077232
vgrafin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Win10 + Access10
Форма с полем "Краткий формат времени" и с той же маской ввода. Вводим 0100. ОК - получаем 01:00.( Если в пустое поле вводить 0100000 - лишние нули отсекаются (4 знака по маске)). Выделяем повторно поле. Начинаем ввод -010000 - вся последовательность попадает в поле и даёт ошибку "Введенное значение не соответствует маске...." . Это может начаться со 2 или 3 попытки перезаписи.
Ограничение по маске "потерялось".
Поискал по форумам - ничего не выловил.
Это объяснимо или "недокументированная" возможность?
...
Рейтинг: 0 / 0
Маска "Краткий формат времени"
    #40077310
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vgrafin,
-01000 - а сколько это минут(часов,суток,годов)
...
Рейтинг: 0 / 0
Маска "Краткий формат времени"
    #40077625
vgrafin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdku, Какая разница сколько. Идёт забой большого числа полей с временем. Пользователи долбят по клавиатуре почти не глядя. Иногда случается неправильный ввод. Исправили - опять не то. Попадаем на повторный ввод несколько раз. Выдели мышкой или Tab -ом с другого поля - вот и получаем описанный результат. Рука задержалась на 4-ой цифре - и ага, маска не ограничила ввод.
...
Рейтинг: 0 / 0
Маска "Краткий формат времени"
    #40077676
Eugene-LS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vgrafin
Начинаем ввод -010000 - вся последовательность попадает в поле и даёт ошибку "Введенное значение не соответствует маске...." . Это может начаться со 2 или 3 попытки перезаписи.

Придумалось пока нечто такое:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Private Sub ПолеКраткоеВремя_Change()
Dim s$
    s = Me.ActiveControl.Text
    If Len(s) > 4 And IsNumeric(s) = True Then
        Me.ActiveControl.Text = Mid(s, 1, 4)
        Me.ActiveControl.SelStart = 5
        Me.ActiveControl.SelLength = 0
    End If
End Sub

Private Sub ПолеКраткоеВремя_GotFocus()
    Me.ActiveControl.SelStart = 0
    Me.ActiveControl.SelLength = 1
End Sub
...
Рейтинг: 0 / 0
Маска "Краткий формат времени"
    #40077703
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.
...
Рейтинг: 0 / 0
Маска "Краткий формат времени"
    #40077708
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Стесняюсь спросить:а зачем в поле дата\время краткого формата времени маска???
При всем упорстве юзера он не сможет задать этому полю неверное значение.
Обычно, до нормальных людей, это "доходит" со 2-3 попытки ввода неправильного значения и больше они так не делают
Ну а если он введет 12:12 вместо 11:12,то откуда "ящику"-РС знать чего хотел юзер
И почитайте на досуге про формат и маску ввода
...
Рейтинг: 0 / 0
Маска "Краткий формат времени"
    #40077795
ИВП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdku
Стесняюсь спросить:а зачем в поле дата\время краткого формата времени маска???
При всем упорстве юзера он не сможет задать этому полю неверное значение.
Обычно, до нормальных людей, это "доходит" со 2-3 попытки ввода неправильного значения и больше они так не делают
Ну а если он введет 12:12 вместо 11:12,то откуда "ящику"-РС знать чего хотел юзер
И почитайте на досуге про формат и маску ввода

Когда-то очень хорошо был организован ввод даты в 1С(((
...
Рейтинг: 0 / 0
Маска "Краткий формат времени"
    #40077801
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vgrafin
Идёт забой большого числа полей с временем. Пользователи долбят по клавиатуре почти не глядя. Иногда случается неправильный ввод. Исправили - опять не то


интересно, это так всегда будет?
Может костыли модернизировать?
--------------------------------------------
Например, два поля со списком с определенными текстовыми значениями (часы 00-23 и минуты 00-59)
Ограничиться списком поставить везде - Да
Алгоритм ввода такой:
Ввод часов - Enter - Ввод минут - Enter - программно получаем (Часы:Минуты)
Ну и показывать результат вверху с размером шрифта с 30-ку для контроля...
---------------------------------------------
Можно и не долбить не глядя (уйти от клавы и реально смотреть что происходит)
- Вертикально делаем 24 кнопки с часами (00 - 23)
- Горизонтально кнопки с минутами (можно в несколько рядов, например в два ряда 00 - 30 и 31 - 59)
Юзеру нужно будет вместо долбежа по клаве не глядя, осмысленно нажать две кнопки мышкой...
Ну и для контроля показывать последние введенные штук 5-10 значений
---------------------------------------------
Можно программно записать в один список все варианты часов и минут от 0000 до 2359
и тоже поставить Ограничиться списком - Да
---------------------------------------------
мдя... никогда бы не подумал, что придется такое писать и советовать...
...
Рейтинг: 0 / 0
Маска "Краткий формат времени"
    #40077808
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В крайнем случае можно и так:
vmag
...Например, два поля со списком с определенными текстовыми значениями (часы 00-23 и минуты 00-59)
Но я сильно сомневаюсь что это будет быстрее чем с клавы набрать 4 цифры с разделителем двоеточие. Не надо "изобретать" велосипед в котором нет никакой нужды.
vgrafin
...Пользователи долбят по клавиатуре почти не глядя....
А чё у них ни глаз ни мозгов нет(только дятлы долбят не думая-мозгов то нет и зарплату им не платят). Создайте программу которой сможет пользоваться даже дурак и только он то и будет ей пользоваться
...
Рейтинг: 0 / 0
Маска "Краткий формат времени"
    #40077817
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vgrafin
Идёт забой большого числа полей с временем. Пользователи долбят по клавиатуре почти не глядя.

мои операторы предпочли ввод данных для зарплаты без мышки
-2 текстовых поля по 2 символа с автопереходом, контроль по списку значений 00-24 и 00-60
-расчетное поле - часы и минуты переводились в часы
...
Рейтинг: 0 / 0
Маска "Краткий формат времени"
    #40077984
Eugene-LS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ИВП
Когда-то очень хорошо был организован ввод даты в 1С(((

Ну нечто такое есть ...
...
Рейтинг: 0 / 0
Маска "Краткий формат времени"
    #40078271
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vgrafin
Начинаем ввод -010000 - вся последовательность попадает в поле и даёт ошибку "Введенное значение не соответствует маске...." .
здесь Вы глубоко заблуждаетесь-это значение отображено на экране,но в поле его нет и не будет пока access "молча не проглотит" то что отображено в поле
...
Рейтинг: 0 / 0
Маска "Краткий формат времени"
    #40085515
vgrafin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdku, Не мерял глубину моих заблуждений, но полагаю, что маска и прочие ограничения на поля формы для того и существуют, чтоб ограничить попадание кривых данных в поля таблиц на стадии ввода. В чём Вы совершенно правы - проще ткнуть четыре цифры с клавы, чем мышкой гонять всякие прокрутки, выборы из списков и т.д., и т.п.
Для стебальщиков ещё раз поясню ситуацию. У вас стопка документов высотой с монитор. Там 20 полей и среди них Дата, Начало работы, Конец работы (и ещё ~15полей) .Работать надо быстро, быстро, а то закончите в следующем квартале. Одна рука (левая) листает документы, а вторая(правая) -клава и мышь. Там где есть много однообразных заполнений-лафа, Нажал что-нибудь( по образцу, по умолчанию и т.д. и готово. А если идёт ералаш - сидят и ТУПО ДОЛБЯТ( для осмысления есть другие области). И чем эргономичнее организованы переходы и вводы, тем меньше стонов. Если на поля навешаны обработчики - тормозно - забивают действительно быстро.
Думаешь, что забиваешь в следующее поле, а форма с предыдущим ковыряется. Иногда быстрее сделать общую проверку после забоя, чем ковырять каждое поле.
По поводу 1000000 - в форматированное поле вводим 1 затем задерживаемся на 0 и 10:00 готово. Ошиблись -выделяем - набираем снова 200000 - должны получить 20:00, а шишь. НО ЭТО не всегда, вся хрень в том, что не могу понять в какой момент это возникает - не с первого раза. Не смертельно, но от пользователей прилетает.
...
Рейтинг: 0 / 0
Маска "Краткий формат времени"
    #40085566
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vgrafin
Для стебальщиков ещё раз поясню ситуацию. У вас стопка документов высотой с монитор. Там 20 полей и среди них Дата, Начало работы, Конец работы (и ещё ~15полей)

По ходу там косяки вылазят (не глядя) еще до ввода времени, то есть чел думает, что он вбивает номер паспорта, а на самом деле уже курсор в поле часов или минут... я б на изменение поля которое перед часами поставил раза три Beep и надел на всех наушники...
Сидит чел долбит и тут в ухо Beep - ага часы щас вбивать нужно... просыпается + контроль где твой палец на листе (на часах ли) + повышение внимания на проблемном участке ввода (единственном)
...
Рейтинг: 0 / 0
Маска "Краткий формат времени"
    #40085713
vgrafin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vmag, раньше биппер заряжал на некоторые события, а сейчас коробочки не бибикают
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Маска "Краткий формат времени"
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]