Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как изменить психологию пользователя? / 17 сообщений из 17, страница 1 из 1
19.02.2004, 11:09
    #32414865
Muric
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить психологию пользователя?
Доброе утро!
Недавно в форуме я задавал вопрос о горячих клавишах. Идея заключается в том, чтобы не сильно меняя прежний стиль их работы (пользователи работают под DOS, где широко используются горячие клавиши для быстрого ввода данных) плавно перейти к программе под WIN, где основной упор ставится на мышь. Как это сделать? Эта часть вопроса скорее риторическая. А теперь вопрос по-существу: попробовал я в форме назначить горячие клавиши, например, на "INSERT" добавление новой записи, а так именно, было в старой программе, но при нажатии на "INSERT" у меня включается функция этой клавиши т.е. замена символов. Назначаю например, на "F4", а у меня в форме, при добавлении записи устанавливается фокус на объект COMBO, то там происходит резкое мелькание в цикле. На клавишу "ENTER", вообще нецелесообразно назначать, т.к. по ней происходит перемещение по объектам в форме. Тогда как быть? Если кто поделится свои мнением и советом буду очень рад. Спасибо!
...
Рейтинг: 0 / 0
19.02.2004, 11:21
    #32414897
Crip
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить психологию пользователя?
Как ранее правильно заметил Вячеслав Клепинин вся обработка от клавиатуры при KeyPreview = .T. ведется через KeyPress формы...
Стандартным для программ Windows является возможность любое действие выполнить двумя способами - мышью и клавиатурой.
Системные клавиши, такие как F4 , F10 лучше оставить в покое , а остальные вполне можно задействовать. Упор можно сделать на CTRL+Буква. Insert в качестве добавления новой строки рекомендую оставить - удобно и привычно.
...
Рейтинг: 0 / 0
19.02.2004, 11:24
    #32414899
FM32YO aka KID
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить психологию пользователя?
таким метом вроде работет...

keypress

do case
case nKeyCode=27


thisform.release()

case nKeyCode=22 && Insert

select no_date
goto bottom
scatter memvar blank
*m.number=no_date.number+1
m.date=DATE()

do form &start_path\forms\new_nakl.scx
thisform.refresh()
endcase
...
Рейтинг: 0 / 0
19.02.2004, 11:28
    #32414905
Urri
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить психологию пользователя?
Мое мнение будет весьма категоричным: мышь в приложениях БД - это устройство от лукавого. Особенно если приложение - OLTP.
Горячие клавиши, безусловно, нужны. Причем самым лучшим способом назначить их я считаю прописывание таких клавиш в sysmenu. Потому что тогда и мышь становится можно использовать автоматически ;-)
Второй способ, который, в идеале, не заменяет, а только дополнянет первый, - создание класса, базового для форм редактирования, где на метод keypress формы назначено выполнение определенных действий на форме, созданной на основе этого класса.

Ну а чтобы нажатие на горячую кнопку в случае с keypress не запускало отработку действия по умолчанию, при перехвате так и нужно писать: nodefault ;-)
...
Рейтинг: 0 / 0
19.02.2004, 11:34
    #32414912
Crip
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить психологию пользователя?
Почитайте лучше поэтому поводу посты Владимира Максимова.

Мое мнение будет весьма категоричным: мышь в приложениях БД - это устройство от лукавого. Особенно если приложение - OLTP.
В частности он отмечает, что на самом деле при грамотной организации приложения скорость работы мышью и клавиатурой приблизительно одинаково...Все дело в привычке...
...
Рейтинг: 0 / 0
19.02.2004, 11:37
    #32414917
Hel!Riser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить психологию пользователя?
как вариатн пользования горячих клавиш - это поздание менюшек, пристыковывающихся к системному с назначенными именно в ней горячих клав на определ:енных пунктах.
...
Рейтинг: 0 / 0
19.02.2004, 11:43
    #32414931
Crip
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить психологию пользователя?
Urri тоже самое предложил только ИМХО это не очень удобное решение при MDI интерфейсе...
...
Рейтинг: 0 / 0
19.02.2004, 11:52
    #32414949
Hel!Riser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить психологию пользователя?
а у мя ответ висел неотправленым :) к тому же ессно фс:е это стилизация. И пользуясь граф пакетами лична я даже убираю менюшки, чтоб увеличить экран и гоняю клавы, а не мышь
...
Рейтинг: 0 / 0
19.02.2004, 12:04
    #32414979
Urri
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить психологию пользователя?
2Crip

Ну почему же неудобно: представьте, что в каждой форме есть хорошо проработанный и достаточный стандартный набор методов, связанных с меню. Меню дергает метод активной формы, а действие - со своими характерными для этой формы нюансами - прописано уже в самой форме.
Те методы, которые специфичны только для текущей формы, вынесены в отдельный menu pad (например, с именем "Сервис"), который добавляется к меню только в то время, когда пользователь работает с этой формой. Как правило, специфичные действия могут и не иметь горячих клавиш, но можно определить дополнительное соглашение между разработчиками (например, задействовать для меню со спецификой формы комбинации Alt+1...Alt+9 и Alt+0).

Насчет того, что с мышью тоже можно очень толково организовать работу - охотно верю, но по скорости набора данных равных клавиатуре все же нет. OLTP - это прежде всего ввод в поля. Он идет с клавиатуры. Причем, обычно, двумя руками. Заставлять пользователя тянуться за мышью каждый раз, когда требуется выполнить что-то, не укладывающееся во ввод данных и переход между контролами формы, как-то не по мне. ;-)
...
Рейтинг: 0 / 0
19.02.2004, 12:08
    #32414996
Crip
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить психологию пользователя?
Получается что в Activate/DeActivate надо прописывать удаление/создание меню... Как-то не очень хочется в Activate вообще что-то серьезное делать...
...
Рейтинг: 0 / 0
19.02.2004, 12:19
    #32415024
Urri
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить психологию пользователя?
2Crip
Только одного pad'а меню. Но - не забывать! Впрочем, все это довольно хорошо пишется в классах.
...
Рейтинг: 0 / 0
19.02.2004, 14:00
    #32415335
Crip
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить психологию пользователя?
2Urri
Все это очевидно , но мне интуитивно не нравится :)
...
Рейтинг: 0 / 0
19.02.2004, 14:06
    #32415365
Hel!Riser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить психологию пользователя?
а по сабжу выход один - не можешь справица с Вынем и новым интерфейсом - иди на улицу метлой мети. Фсе бабцы сразу будут шарить тока шл:Ем держи! И картриджи тонером заправлять и ваще!
...
Рейтинг: 0 / 0
19.02.2004, 14:16
    #32415393
Crip
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить психологию пользователя?
2Hel!Riser
Ты жесток :) Пользователей, а особенно пользовательниц нужно любить :) Хотя сильно баловать их тоже не стоит...
...
Рейтинг: 0 / 0
19.02.2004, 14:18
    #32415402
Hel!Riser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить психологию пользователя?
2 Crip
дык обычна бояца-то старп:еры ;) а молодые мадамы грамотна справляюца с любой кнопкой ;)))
...
Рейтинг: 0 / 0
19.02.2004, 14:44
    #32415471
Как изменить психологию пользователя?
При работе с "горячими клавишами" в KeyPress формы нужно использовать коды клавиш (например, 13 вместо Enter или -5 вместо F6), как это совершенно справедливо отметил FM32YO (3), а не мнемонику. Если сильно хочется делать как Fox2, то можно просто создать INCLUDE-файл, где через #DEFINE назначить соответствие мнемоники коду. Про подключение такого файла к форме см. раздел #DEFINE ... #UNDEF Preprocessor Directive в FoxHelp.
Привязка "горячих клавиш" к меню (как можно догадаться по ответу Hel!Riser), не всегда целесообразна, так как, во первых, это распространяется на всё приложение (если, конечно, постоянно не чистить PAD'ы), а во-вторых, при работе модальной формы выпадающие меню недоступны, и привязанные к ним клавиши не работают.
И последнее. Не нужно превращать обсуждение в трёп.
...
Рейтинг: 0 / 0
19.02.2004, 14:58
    #32415504
Hel!Riser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить психологию пользователя?
забыл описАть, что бывают случаи, когда скан-коды в разных сочетаниях клав софпадают...объять необъятное невозможна, мил чел ;)
Вячеслав КлепининИ последнее. Не нужно превращать обсуждение в трёп.
я тя умоляяяю
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как изменить психологию пользователя? / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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