Искал на фоурме но так и не нашел, как сделать чтоб если я на клавиатуре нажимаю клавишу ентер, то кнопка нажимается на форме определенная, а то мышкой все время тянуться к кнопке не очень удобно.
Искал на фоурме но так и не нашел, как сделать чтоб если я на клавиатуре нажимаю клавишу ентер, то кнопка нажимается на форме определенная, а то мышкой все время тянуться к кнопке не очень удобно.
PHP код:
if ($key == 13){ myFunc1(); }
Вот так ето на форму нажатие клавиши .В myFunc1 будет выполнять нужное действие или ищи на форуме есть и другие варианты.![]()
if ($key == 13){c("button1")->onClick(); } можно и без функции.
Последний раз редактировалось вова77; 10.10.2011 в 10:59.
Блин, ну ты дурак? Давайте будем создавать десятки кнопок и взорвём себе мозг.
stas3k, не слушай ты егоДа, можно и ord ожно и просто $key, но при ord нажатая кнопка ВСЕГДА возвращается в цифрах. Делай так :
или такPHP код:if ($key == 13){
echo "lol";
/* и ещё кучи твоего кода */
}
PHP код:if (ord($key) == 13){
echo "lol";
/* и ещё кучи твоего кода */
}
Как хочу быть красненьким и с надписью "Админ"
Ты так написал, что новичкам кажется, что надо ВСЁ засовывать в функции, даже сами функции.
Как хочу быть красненьким и с надписью "Админ"
Можно с функцией или без неё.Сечас тоже без функций использую а тогда использовал с функцией так было и проще и удобние.Каждый ищет свой вариант.
Ребят, помойму товарисчу нужна "горячая кнопка"
Если я правильно понял его задачу, он хочет "где бы не тыкнул энтер" чтоб нажалась одна и таже определённая кнопка. Ваш код будет работать только в случае если у этой кнопки будет фокус. А ему надо вне зависимости от того какой элемент имеет фокус, чтоб нажалась нужная кнопка. Так что тут без горячих кнопок никак.
__________________________________________________ ________
Угу, угу... А потом достал из морозильной камеры - и степлером его, степлером!
Для новичков
__________________________________________________ ________
Я практически совсем не задаю вопросов, не думали почему? Потому что я пользуюсь поиском и всегда нахожу ответы на свои вопросы!
PHP код:
if ($key == 13){
echo "lol";
/* и ещё кучи твоего кода */
}
или так
PHP код:
if (ord($key) == 13){
echo "lol";
/* и ещё кучи твоего кода */
}
if ($key == 13){c("button1")->onClick(); } можно и без функции. Проверенно эти коды и используй.![]()
И не будет! До тех пор пока эта кнопка не получит фокус ввода. А это аналогично нажатию по ней мышки.
Как вариант можно этот код запихать во все компоненты на форме, но это не есть решение, это костыли называется.
Внимание, диктую первый код:
http://google.com/
В строке поиска вбить следующий, второй, код:
горячие кнопки site:community.develstudio.ru
и нажать поиск!
![]()
Последний раз редактировалось vGhost; 10.10.2011 в 13:24.
__________________________________________________ ________
Угу, угу... А потом достал из морозильной камеры - и степлером его, степлером!
Для новичков
__________________________________________________ ________
Я практически совсем не задаю вопросов, не думали почему? Потому что я пользуюсь поиском и всегда нахожу ответы на свои вопросы!
Да если не в фокусе не сработает,можно и горячие клавиши использвать.Тут тоже писал http://community.develstudio.ru/show...илка/page2 P.S.вначале пробовал с одной кнопкой.
Последний раз редактировалось вова77; 10.10.2011 в 14:07.
__________________________________________________ ________
Угу, угу... А потом достал из морозильной камеры - и степлером его, степлером!
Для новичков
__________________________________________________ ________
Я практически совсем не задаю вопросов, не думали почему? Потому что я пользуюсь поиском и всегда нахожу ответы на свои вопросы!
ОФФТОП: Я не повторяю при таких похоих темах я обычно пишу про горячие клавиши но надоело повторять по этому пишу ищите на форуме.P.S.а горячие клавиши сечас не использую и не повторяю смотри тему http://community.develstudio.ru/show...илка/page2 .Предлогаю ранее используемый вариант,который раньше педлогал.
Тоже мучаюсь с данной проблемой.
на JS такое делается без проблем.
если в DS оно и не должно работать при запихивании в событие нажатия клавиш ФОРМЫ, тогда объясните зачем вообще у формы доступны события нажатия клавиш, отпускания клавиш ?
я понимаю что вопрос ламерский, но все же хочется получить на него внятный ответ, а не
Собственно, задача: есть программа, - аналог 1с. нужно привязать запуск функций на нажатие 1 или нескольких клавиш.
Понимаю что надо копать в сторону хоткэй, но ни echo $key ни echo ord($key) ни что либо подобное не работает, если находится в событиях "нажатия клавиш" и ему подобный ФОРМЫ. (если в текстовом поле - все ок, но этот вариант не катит).
п.с. дабы не тратить ни Ваше ни мое время, прошу не писать ответы типа "гугл в помощ", и тому подобные., это - пройденный этап.
Так устроена винда, она посылает сообщения нажатия клавиши тем компонентам, которые имеют на данный момент фокус. В 3 версии были мысли, чтобы можно было бы как-то глобально задать обработчик события клавиш сразу для всех компонентов, возможно такое появится.
Не у всех компонентов есть фокус. Например speedкнопка это кнопка без фокуса. Также компоненты без фокуса никогда не могут быть физически находиться выше других с фокусом. Это тоже особенность WinApi, если я расскажу как это работает более подробно, то все равно никто не поймет.