Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
22.09.2008, 18:07
|
|||
---|---|---|---|
Блокировка ввода символа в DW |
|||
#18+
Друзья, может кто сталкивался такой проблемой, подскажите как решить. Мне нужно сделать что бы в строковое поле DW ножно было ввести только символы от 1 до 9 и '*'. Т.е. нужна блокировка именно на этапе нажатия клавиш. спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.09.2008, 18:46
|
|||
---|---|---|---|
Блокировка ввода символа в DW |
|||
#18+
Ищи про PeekMessage API... ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.09.2008, 19:02
|
|||
---|---|---|---|
|
|||
Блокировка ввода символа в DW |
|||
#18+
Перехватить EditChanged event и возвращать через settext() и selecttext() старое значение и курсор, если введен не тот символ. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.09.2008, 19:04
|
|||
---|---|---|---|
|
|||
Блокировка ввода символа в DW |
|||
#18+
Anatoly MoskovskyПерехватить EditChanged event и возвращать через settext() и selecttext() старое значение и курсор, если введен не тот символ. Учесть, что при вставке из клипборда может за раз вставиться несколько символов. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.09.2008, 19:38
|
|||
---|---|---|---|
Блокировка ввода символа в DW |
|||
#18+
Anatoly MoskovskyПерехватить EditChanged event и возвращать через settext() и selecttext() старое значение и курсор, если введен не тот символ. Так можно, но поздно :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.09.2008, 20:30
|
|||
---|---|---|---|
Блокировка ввода символа в DW |
|||
#18+
Код: plaintext 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.09.2008, 21:05
|
|||
---|---|---|---|
Блокировка ввода символа в DW |
|||
#18+
breathem Код: plaintext 1. 2. 3. 4. 5.
И так можно, но поздно :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
23.09.2008, 00:12
|
|||
---|---|---|---|
Блокировка ввода символа в DW |
|||
#18+
Приблизительно вот так: ... |
|||
:
Нравится:
Не нравится:
|
|||
|
23.09.2008, 10:48
|
|||
---|---|---|---|
Блокировка ввода символа в DW |
|||
#18+
Спасибо, Филипп все заработало ... |
|||
:
Нравится:
Не нравится:
|
|||
|
23.09.2008, 11:43
|
|||
---|---|---|---|
|
|||
Блокировка ввода символа в DW |
|||
#18+
Простите что вмешиваюсь в вашу идиллию, но есть вопрос. А что будет если юзер вставит текст из клипборда? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
23.09.2008, 12:09
|
|||
---|---|---|---|
Блокировка ввода символа в DW |
|||
#18+
правильно что вмешиваетесь! да, через клипбоард эти блокировки не срабатывают! нодо искать способ проверки в буфере обмена и блокировки вставки из клип боард! может кто уже делал? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
23.09.2008, 12:58
|
|||
---|---|---|---|
|
|||
Блокировка ввода символа в DW |
|||
#18+
vovan_zда, через клипбоард эти блокировки не срабатывают! нодо искать способ проверки в буфере обмена и блокировки вставки из клип боард! может кто уже делал? Потому что слишком низкоуровневое API используется. Реализуйте то, что я предложил выше. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
23.09.2008, 12:59
|
|||
---|---|---|---|
|
|||
Блокировка ввода символа в DW |
|||
#18+
я когда-то задавался такой-же задачей делал DLL которая перехватывала нажатия клавиш в ДВ перед на смене фокуса/колонки в ДВ эта ДЛЛ информировалась надо или нет применять маску к текущему полю. решение так-себе но работало. если в PBM_DWNKEY можно перехватывать нажатие CTRL+V и SHIFT+Ins, то возможно проще будет это реализовать на ПБ. для начала, можно просто заблокировать клавиши вставки из клипборда (перехватывать и ничего не делать). ЗЫ: есть ф-ции получения содержимого клипборда. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
23.09.2008, 14:31
|
|||
---|---|---|---|
|
|||
Блокировка ввода символа в DW |
|||
#18+
Не забыть еще клик мышкой "Paste"... Кажись решение Анатолия самое-то. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
23.09.2008, 16:22
|
|||
---|---|---|---|
Блокировка ввода символа в DW |
|||
#18+
Anatoly MoskovskyПростите что вмешиваюсь в вашу идиллию, но есть вопрос. А что будет если юзер вставит текст из клипборда? А это не будет ПЕЧАТАНИЕМ на клавиатуре, посему делать нужно это: Код: plaintext 1. 2. 3. 4. 5. 6.
И делать это в сочетании с PeekMessage. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
23.09.2008, 18:24
|
|||
---|---|---|---|
|
|||
Блокировка ввода символа в DW |
|||
#18+
Филипп Anatoly MoskovskyПростите что вмешиваюсь в вашу идиллию, но есть вопрос. А что будет если юзер вставит текст из клипборда? А это не будет ПЕЧАТАНИЕМ на клавиатуре Формально вы правы. А по сути ваше решение не полное. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
24.09.2008, 12:56
|
|||
---|---|---|---|
Блокировка ввода символа в DW |
|||
#18+
Анатолий, большое спасибо за исчерпывающие ответы ... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.12.2008, 01:02
|
|||
---|---|---|---|
|
|||
Блокировка ввода символа в DW |
|||
#18+
А где находится это pbm_dwnkey? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.12.2008, 02:37
|
|||
---|---|---|---|
|
|||
Блокировка ввода символа в DW |
|||
#18+
БууА где находится это pbm_dwnkey? В объекте типа Datawindow создайте новое событие с любым именем и назначьте ему event ID pbm_dwnkey. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/search_topic.php?author=%D0%9D%D0%B8%D0%BA%D0%BE%D0%BB%D0%B0%D0%B93482&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
134ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
others: | 649ms |
total: | 910ms |
0 / 0 |