Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.10.25;
Скачать: [xml.tar.bz2];

Вниз

Исчезает окно предупреждения.   Найти похожие ветки 

 
Kolan ©   (2009-08-20 15:50) [40]

В техническом плане мне вообще кажется, что обработка получения кода окнами неверная. Код должен получать контроллер и проверять его на предмет дубля.
Даже если работа со сканером такова, что символы приходят окну, то окно не должно их использовать, тем более помешать в поле ввода или куда-то еще, оно должно отдать их контроллеру и все.


 
kyn66 ©   (2009-08-20 16:20) [41]


> а если невнимательный товарищ "просканит" штрихкод уже при
> "поднятом" окне сообщений?


Сканер не сработает, т.к. в данный момент потеряет фокус элемент Edit1, на свойстве onChange и происходит обработка полученного значения по штрихкоду


 
kyn66 ©   (2009-08-20 16:23) [42]


> проверь уж все   begin   Application.ProcessMessages;  
> EmptyKeyQueue;   Sleep(0);   ErrorMsg("Повторное сканирование
> билета !");...можно в разных комбинациях.

Неа, не работает, проверил


 
Palladin ©   (2009-08-20 16:24) [43]


> [31] Дмитрий Белькевич   (20.08.09 14:43)

определение "уг" в студию.


 
kyn66 ©   (2009-08-20 16:26) [44]


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

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


 
kyn66 ©   (2009-08-20 16:30) [45]


> В техническом плане мне вообще кажется, что обработка получения
> кода окнами неверная.


О как. Я раньше как-то долго и упорно спрашивал у народа, каким образом обработать полученные данные со сканера, как их впринципе получить. Сканер обычный, ручной. Через Tedit или ему подобные в основном обработка и происходит и не только у меня. Только в отличие от других программя я еще предусмотрел и контроль за потерей фокуса компонентом TEdit, который получает данные от сканера.


 
sniknik ©   (2009-08-20 16:32) [46]

> Сканер не сработает, т.к. в данный момент потеряет фокус элемент Edit1
как сканер узнает про фокус Edit1-а? вот сейчас про "прицепленный" ентер не узнаёт, а про цифры/и ентер от следующего скана узнает... какая избирательность...
(да если бы у тебя так было, то нынешней проблемы бы не было)

> А данные по билету не запишутся
ну и о чем тогда сыр бор? или создается специальный механизм сообщений чтобы пользователей раздражать?


 
Kolan ©   (2009-08-20 16:35) [47]

Model-View-Controller (MVC) неплохо работает, советую ознакомится с этим архитектурным решением. Получение кода в TEdit полностью противоречит MVC отсюда и большинство проблем.


 
kyn66 ©   (2009-08-20 16:50) [48]


> как сканер узнает про фокус Edit1-а?

Никак , я за это отвечаю. Сканер как выполнял свою прямую работу так и продолжает...


 
sniknik ©   (2009-08-20 17:42) [49]

> Никак , я за это отвечаю
ну я про что? а раз никак то ему пофигу в какое окно данные посылать, и кнопка на диалоговом окне с его точки зрения ничуть не хуже едита...
вот открой свой ErrorMsg до того как что то сканировал (и оно закрылось) и проведи сканером по билету (тем у которого у тебя есть постфикс в виде ентера).
это и была бы следующая проблема при той схеме, если бы решил конечно очистку "буфера" клавиатуры.


 
Anatoly Podgoretsky ©   (2009-08-20 18:16) [50]

> kyn66  (20.08.2009 16:26:44)  [44]

Тогда нафига какие то диалоги, окна,звуки - очень ненадишь пользователей?


 
kyn66 ©   (2009-08-21 10:37) [51]


> Тогда нафига какие то диалоги, окна,звуки


Хм, пользователь в любом случае должен быть информирован о невероных действиях. И я не думаю, что это будет происходить очень часто... но всетаки, вариант должен быть предусмотрен.


 
Kolan ©   (2009-08-21 10:45) [52]

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


 
Anatoly Podgoretsky ©   (2009-08-21 11:40) [53]

> Kolan  (21.08.2009 10:45:52)  [52]

Но не в данном случае, здесь результат анулируется и вводится ненужный внешний раздражитель. Автор утверждает, что это не ошибка, поэтому и называет, что это предупреждением.


 
Kolan ©   (2009-08-21 11:46) [54]

О факте аннулирования нужно обязательно уведомлять. Иначе, по простому, будет: «я сую сую, а оно не работает», а по умному: из-за отсутствия обратной связи человеку будет трудно понять на каком уровне произошла ошибка.


 
Anatoly Podgoretsky ©   (2009-08-21 13:19) [55]

Да никакой ошибки не приозошло, опять же по словам автора.


 
kyn66 ©   (2009-08-25 16:10) [56]


> Да никакой ошибки не приозошло, опять же по словам автора.


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


 
Leonid Troyanovsky ©   (2009-08-25 19:45) [57]


> kyn66 ©   (25.08.09 16:10) [56]

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

А чего это сразу и "необдуманными"?
Может ему текст, цвет или звук предупреждения понравился.

--
Regards, LVT.


 
sniknik ©   (2009-08-25 21:49) [58]

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

кстати зайдите в какой нибудь супермаркет в час пик и понаблюдайте за кассирами, как они тавар сканируют... и что бывает если товар "не проходит", выскакивают там какие то "предупреждающие" окошки?
знаю случаи когда от программ изза таких окошек сбивающих ритм работы отказывались в пользу более дорогих (и намного, т.к. они бывают "срощены" с аппаратом, одно без другого не продается)

вообще, если кассир/юзер настолько туп, что не с состоянии понять "тревожный" писк значит, что товар не прошел/билет проигнорировался,  то его лучше уволить... это как, убил бобра - спас лес, так и тут, уволил идиота - спас удобство и функциональность процесса для нормальных.


 
Leonid Troyanovsky ©   (2009-08-25 23:40) [59]


> sniknik ©   (25.08.09 21:49) [58]

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

Понятно, что гнать-то изначально надо юзера.
Хотя, и таких дизайнеров и прочих кульманов.

--
Rergards, LVT.


 
kyn66 ©   (2009-08-31 10:04) [60]


> вообще, если кассир/юзер настолько туп, что не с состоянии
> понять "тревожный" писк значит


Вопрос по поводу писка уже обсуждался. НЕ всегда  из компа можно звук извлечь. Если только сознательно подойти и проверить, а то и включить его самостоятельно. Я если точки разбросаны по республике?



Страницы: 1 2 вся ветка

Форум: "Начинающим";
Текущий архив: 2009.10.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.57 MB
Время: 0.063 c
1-1220947757
AndreyRu
2008-09-09 12:09
2009.10.25
Стиль карандаша как в DrawFocusRect???


4-1219984247
Melphin
2008-08-29 08:30
2009.10.25
Изменение свойств компонентов в Excel


15-1251125704
boriskb
2009-08-24 18:55
2009.10.25
Это что?


15-1251149186
KilkennyCat
2009-08-25 01:26
2009.10.25
Что может быть причиной удаления файлов на XFS


2-1251976660
timekiller
2009-09-03 15:17
2009.10.25
Файл - Из консоли





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский