Форум: "Начинающим";
Текущий архив: 2012.02.05;
Скачать: [xml.tar.bz2];
ВнизВвод в TЕdit руками или сканером штрихкода. Найти похожие ветки
← →
Германн © (2011-10-25 02:17) [80]
> KilkennyCat © (25.10.11 02:09) [77]
>
> за пару долларов можно сделать небольшой переходничек на
> клаву, или на сканер, без разницы.... будет генерить дополнительно
> че-нить или генерить в усб 232 или куда угодно...
> могу взяться через пару недель.
Мне нужно возвращать долги после ремонта, а ты Костя тут демпингуешь! Чем я тебе не угодил? :)
← →
KilkennyCat © (2011-10-25 02:35) [81]а... ты уже что-то предлагаешь? извини, не заметил... снимаю свою кандитадуру.
извиняюсь за оффтоп, Германн, а ты ту проблему с езернетом решил? а то я почти решил.
← →
Германн © (2011-10-25 04:05) [82]
> извиняюсь за оффтоп, Германн, а ты ту проблему с езернетом
> решил? а то я почти решил.
>
И я "почти решил". Но наверняка моё почти никак не коррелирует с твоим почти. :)
Если что конкретное, то обращайся на почту.
← →
sniknik © (2011-10-25 08:01) [83]> Но разве это оправдание делать "идиотский" алгоритм программы, которая должна сама определять откуда пришел ввод?
почему это для удобства у тебя синоним "идиотский"?
поверь это очень удобно, при вводе накладной например не искать/вставать в специальное поле, или не не нажимать доп кнопку открывающую "форму ввода со сканера"(видел и такие "решения", и не с одной кнопкой), а просто сканировать сканером. собственно это их и отличает от клавиатуры, удобство ввода.
а вот "поле куда нужно встать" прежде чем "пикнуть", не очень отличается от ввода вручную, 13 цифр хороший оператор успевает набрать тогда быстрее чем с товара сканером со сканировать. удобство нивелируется.
> на клаву, или на сканер, без разницы....
только на клаву. т.к. после подключения сканера "в разрыв" для устройства также не будет разницы между данными устройств... и как поймешь "ху из ху"?
но вообще бессмысленно. т.к. вся проблема в неорганизованности, люди не знают как работает/чего хотят, покупают не то что нужно(или в моем случае было отгружают...), а после это хотят решить программно... т.е. попросту делают и переваливают проблему на программистов.
в общем никто твой переходник покупать не будет, но все также будут ожидать, что все должно работать "само". (да блин, посмотри выше там даже устройство не настраивают, на предмет посылки #13 в конце, а делают различные реализации ввода в программе... нонсенс)
← →
sniknik © (2011-10-25 08:06) [84]> если в варианте "нажатие на кнопку клавиатуры шлет битик в усб"
в связи с виндовой событийностью, и ее не реал таймом, битик в в усб может уже поменяться в тот момент когда идет чтение символа программой... неопределенность остается.
← →
Anatoly Podgoretsky © (2011-10-25 10:07) [85]> Laguna (25.10.2011 00:11:05) [65]
4500 и только в одном месте решили два эдита
← →
Laguna © (2011-10-25 11:00) [86]> Anatoly Podgoretsky © (25.10.11 10:07) [85]
> Laguna (25.10.2011 00:11:05) [65]4500 и только в одном месте решили два эдита
Не совсем понятна мысль
← →
Inovet © (2011-10-25 11:58) [87]> [77] KilkennyCat © (25.10.11 02:09)
> можно сделать небольшой переходничек на клаву, или на сканер,
> без разницы.... будет генерить дополнительно че-нить или
> генерить в усб 232 или куда угодно...
Тогда зачем его делать переходником - пусть включается в эти порты и шлёт всё туда, а клавиатура сама по себе.
← →
Anatoly Podgoretsky © (2011-10-25 13:45) [88]Ты решил проблему для 4500 пользователей, путем создания 2 эдитов :-)
← →
Laguna © (2011-10-25 13:55) [89]
> Ты решил проблему для 4500 пользователей, путем создания
> 2 эдитов :-)
Нет, путем создания программы, в которой используется функция сканирования посредством двух Edit.
← →
Anatoly Podgoretsky © (2011-10-25 14:11) [90]> Laguna (25.10.2011 13:55:29) [89]
Брехология
← →
Труп Васи Доброго © (2011-10-25 16:21) [91]Вот хоть убей - не пойму зачем ДВА едита? Что мешает использовать ОДИН? Чтобы проще было понять опиши ситуацию ошибки при вводе в один едит, тогда будет ясно (может быть) чего ты пытаешься избежать.
← →
Труп Васи Доброго © (2011-10-25 16:37) [92]
> Сейчас пересматривал возможность перехода к одному Edit.
> Оказывается не зря все же я делпал разделение ввода. При
> считке сканером к примеру билет читается как серия + номер+
> индекс. Приручном вводе поля ввода разделяются(в другой
> задаче). Здесб же нужно вводить только номер + индекс.
Опять нет никакой проблемы с одним едитом. Сканер введёт (количество от балды) 20 символов, а юзер только 10. И какая проблема? Если длина текста 20, то хватай и обрабатывай как "серия + номер+ индекс", если же их меньше, то юзер полюбасу энтер тыкнет, это тебе сигнал что "не сканер вводил", проверь количество и обрабатывай как "только номер + индекс". Вот и всё решение. Даже если юзер пробъёт все 20 цифр, то код сработает и энтер жать не придётся. А ты геморрой изобретаешь. Надо будет что гениально-простое, обращайся!
← →
Laguna © (2011-10-25 16:51) [93]
> Опять нет никакой проблемы с одним едитом. Сканер введёт
> (количество от балды) 20 символов, а юзер только 10. И какая
> проблема? Если длина текста 20, то хватай и обрабатывай
> как "серия + номер+ индекс", если же их меньше, то юзер
> полюбасу энтер тыкнет, это тебе сигнал что "не сканер вводил",
> проверь количество и обрабатывай как "только номер + индекс".
> Вот и всё решение. Даже если юзер пробъёт все 20 цифр,
> то код сработает и энтер жать не придётся. А ты геморрой
> изобретаешь. Надо будет что гениально-простое, обращайся!
>
А если введено не 7 положенных от руки , а 6? На "ручном" Edit стоит
if Length(NomEdit.Text) = KolDigit then
PostMessage(Handle, WM_NEXTDLGCTL, 0, 0);
Дабы исключить лишнее клацанье по ентер. Чтобы уменьшить телодвижения при вводе(а этого ой как боятся дамы бальзаковского возраста), перед сканированием билетов я сперва отдельно запрашиваю номер серии. Затем в "ручном" режиме вводится только номер + индекс.[45] Сканер же все вместе возьмет. Конечно можно сделать проверку на количество введенных символов(если меньше чем нужно) Короче, нужно пробывать.
← →
Игорь Шевченко © (2011-10-25 20:40) [94]
> перед сканированием билетов
трамвайных ?
← →
KilkennyCat © (2011-10-25 22:44) [95]
> Inovet © (25.10.11 11:58) [87]
>
> Тогда зачем его делать переходником - пусть включается в
> эти порты и шлёт всё туда, а клавиатура сама по себе.
мой вариант не потребует переделки уже существующего софта. он лишь дополнит девайс, все штатные функции сохранены.
← →
Труп Васи Доброго © (2011-10-26 00:16) [96]
> А если введено не 7 положенных от руки , а 6? На "ручном"
> Edit стоит
> if Length(NomEdit.Text) = KolDigit then
> PostMessage(Handle, WM_NEXTDLGCTL, 0, 0);
> Дабы исключить лишнее клацанье по ентер.
Вот сразу видно, что ты с людьми не много работал. Дамы с великим удовольствием давят Enter, к тому же нажав Enter юзер подтверждает, что он ввёл номер полностью. Дальше уже твоя работа обрабатывать данные и проверять их на валидность. Вопрос "А если введено не 7 положенных от руки , а 6?" может возникнуть (извини за прямоту) у человека который только начинает учиться писать программы. (И два Edita для одной информации лишнее тому подтверждение) Проверь что ввели и маякни юзеру что "не всё ввёл", тем же едитом и поморгай или меняй цвет заливки Edita, когда будет нужное количество символов, чтобы даже неопытный юзер понял, что всё ОК. Потом они сами привыкнут не тыкать Enter, пока Edit не покраснеет. А проверяя на автомате, без подтверждения юзера по нажатию Enter рискуешь нарваться на проглатывание случайного нажатия кнопки или залипания или "я постоянно эту кнопку ногтем задеваю, у меня маникюр", а твой код радостно схавает эти 7 цифр и потащит на обработку. Ты не даёшь юзеру возможность исправить ошибку ввода, а это "боком чревато". Надеюсь понял.
← →
Германн © (2011-10-26 00:58) [97]
> мой вариант не потребует переделки уже существующего софта.
> он лишь дополнит девайс, все штатные функции сохранены.
>
>
Он лишь предоставит программисту новые возможности, которые заставят программиста писать новое ПО. Ибо ему, этому программисту, только дай дополнительные возможности! Но если программист "заточен" на известную ему "юзабилити" и "шаг вправо, шаг влево - расстрел на месте" для него норма. Что тогда?
← →
brother © (2011-10-26 05:44) [98]Все имхо:
1. 2 едита для ручного и сканрного ввода - перебор, достаточно одного с нужными проверками
2. Забыли про очередь сообщений окну
3. Не вижу демо кода для проверки нажатия клавиш и приходов сообщений контролу
4. Сканерами не пользовался но, скорость ввода символов через сканер как то ограничена (скорость ввода, задержки между "клавишами")?
5. Зачем спорить если вопрос в начинающих и кода нет?
← →
Laguna © (2011-10-26 09:45) [99]> Труп Васи Доброго © (26.10.11 00:16) [96]
> Вот сразу видно, что ты с людьми
> не много работал. Дамы с великим удовольствием давят Enter,
> к тому же нажав Enter юзер подтверждает, что он ввёл номер
> полностью.
Не скажи. У нас такие дамы, что хотят чтобы программа выполняла действия только от ожного их взгляда на монитор.
> Дальше уже твоя работа обрабатывать данные и
> проверять их на валидность. Вопрос "А если введено не 7
> положенных от руки , а 6?" может возникнуть (извини за прямоту)
> у человека который только начинает учиться писать программы.
> (И два Edita для одной информации лишнее тому подтверждение)
> Проверь что ввели и маякни юзеру что "не всё ввёл", тем
> же едитом и поморгай или меняй цвет заливки Edita, когда
> будет нужное количество символов, чтобы даже неопытный юзер
> понял, что всё ОК. Потом они сами привыкнут не тыкать Enter,
> пока Edit не покраснеет.
В принципе я согласен.
А идея с контрольной подсветкой едита во время ввода мне понравилась.
> А проверяя на автомате, без подтверждения
> юзера по нажатию Enter рискуешь нарваться на проглатывание
> случайного нажатия кнопки или залипания или "я постоянно
> эту кнопку ногтем задеваю, у меня маникюр", а твой код радостно
> схавает эти 7 цифр и потащит на обработку. Ты не даёшь юзеру
> возможность исправить ошибку ввода, а это "боком чревато".
После едита стоит подтверждающая кнопка ввода, по нажатию на которую и выполняется проверка введенных данных с последующим сохранением. "Автомат" просто переводит на ее после того, как введено определенное количество знаков и только. Т.е. подредактировать введенную информацию возможность предоставляется.
http://s45.radikal.ru/i109/1110/74/c64733172f67.jpg
Т.е. автомат исключает повторный клац по Ентеру и всего то.
← →
Труп Васи Доброго © (2011-10-26 10:23) [100]Чем меньше надо тыкать кнопок мышью, тем лучше. Рука у юзера не отрывается от клавы. Я 7 лет отработал в ЖКХ конторе, так что кто такие дамы из бухгалтерии и абонентского отдела и как они могут работать я тоже в курсе. Сначала они по одной кнопке в минуту тычут, а потом приноровятся и так пальцами перебирают при разноске квитанций, что аж ветер вокруг, по 1500 квитанций в день лупили! Тот, кто бьёт много цифр будет счастлив, если ему вообще не придётся хвататься за мышь. Сначала может и будут ныть что непривычно, но потом будут тебе руки целовать за хорошую, удобную программу.
← →
Laguna © (2011-10-26 11:11) [101]
> Чем меньше надо тыкать кнопок мышью, тем лучше. Рука у юзера
> не отрывается от клавы.
>...
Тот, кто бьёт много цифр будет счастлив, если ему вообще не придётся >хвататься за мышь. Сначала может и будут ныть что непривычно, но потом
> будут тебе руки целовать за хорошую, удобную программу.
Так вот автомат у меня так и отробатывает. Переводит на кнопку, нажали ентер, данные обработались - фокус опять перешел на поле ввода, вводим следующие данные. и так по кругу. Потом закрываем режим ручного ввода одним кликом мыши. Как то так.
← →
Труп Васи Доброго © (2011-10-26 11:35) [102]
> Переводит на кнопку, нажали ентер, данные обработались -
> фокус опять перешел на поле ввода,
ЗАЧЕМ?!?!?!?
КТО МЕШАЕТ нажать Enter НЕ ВЫХОДЯ из Edita???? Ты создал лишнюю кнопку, лишний обработчик перевода фокуса и т.д. Это лишнее. Как ты там говоришь? "А если..." ввели 7 цифр, фокус ушёл на кнопку, а юзер понял, что цифра не та и её надо исправить, как юзер вернёт фокус? Ему надо рукой перевести мышь на Edit и тыкнуть, то есть лишние действия!!!
← →
Anatoly Podgoretsky © (2011-10-26 14:17) [103]> Труп Васи Доброго (26.10.2011 11:35:42) [102]
Что бы нажать кнопку Enter, фокус менять не требуется и даже писать
программу.
← →
Laguna © (2011-10-26 14:39) [104]
> Ему надо рукой перевести мышь на Edit и тыкнуть, то есть
> лишние действия!!!
Мдя... есть такое дело. Впринципе Все основная обработка проискодит в Edit1. Все, здаюсь, согласен, что второй Edit лишний. Обязуюсь переписать без него, как тока время появится. Всем спасибо. Тему можно закрывать.
← →
Труп Васи Доброго © (2011-10-26 14:39) [105]
> фокус менять не требуется и даже писать
> программу
Дак и я о том же!!! Там вообще эта кнопка не нужна! Об этом и пытаюсь камраду сказать. А он мало того, что кнопку, он ещё и второй Edit поставил, хотя можно только одним Editом обойтись.
Страницы: 1 2 3 вся ветка
Форум: "Начинающим";
Текущий архив: 2012.02.05;
Скачать: [xml.tar.bz2];
Память: 0.67 MB
Время: 0.008 c