On-line: Dr. Oldwarez, гостей 1. Всего: 2 [подробнее..]
АвторСообщение



Пост N: 57
Зарегистрирован: 31.03.07
ссылка на сообщение  Отправлено: 09.08.07 07:55. Заголовок: inkey() в xHarbour


Как то странно работает функция Inkey()
Inkey(0) не ждет нажатия клавиши и возвращает всегда 13
При чем, в терминальной версии все работает как обычно.

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

Что за новый параметр у этой функции ? Из англицкого описания понял только что он связан с обработкой мышки.

Спасибо: 0 
Профиль
Ответов - 5 [только новые]


Администратор




Пост N: 584
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 09.08.07 09:43. Заголовок: Re:


С минигуи и с любым графическим пакетом inktey работать не будет, поскольку он реализован в терминале (gtwin или gtwvt), а при работе с gui терминал неактивен

Новый параметр - это маска, какие события обрабатывать: только клавиатура или клавиатура с мышкой

Спасибо: 0 
Профиль



Пост N: 58
Зарегистрирован: 31.03.07
ссылка на сообщение  Отправлено: 10.08.07 02:06. Заголовок: Re:


Интересно, а как теперь отслеживать нажатие клавиш ? Мне нужны не только кноки Минигуи, но и например "горячие клавиши" или возможность выбора номера ответа с клавиатуры.......
Или все теперь через SET KEY задается ?

Спасибо: 0 
Профиль
модератор




Пост N: 525
Зарегистрирован: 25.05.05
ссылка на сообщение  Отправлено: 10.08.07 09:45. Заголовок: Re:


Uncle_ed пишет:

 цитата:
Или все теперь через SET KEY задается ?


Типа того
Только называется ON KEY <key> ACTION <action>

Спасибо: 0 
Профиль
Администратор




Пост N: 585
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 10.08.07 10:04. Заголовок: Re:


С минигуи у меня опыта работы нет, скажу как обстоит дело с fw
Во-первых, у пунктов меню есть акселераторы: то есть при надатьи клавиши вызывается обработчик
Во-вторых, у наследников TControl (say, get, combobox, browse и пр) есть поля bKeyChar, bKeyDown, где можно ловить нажатия клавиш
В третьих, есть SetKey
Я больше использую акселераторы меню, которых в минигуи как раз нет

Для выбора номера ответа клавиатуры лучше всего подойдет RadioButton
Надо забывать о старом интерфейсе и использовать средства Windows

Спасибо: 0 
Профиль
модератор




Пост N: 526
Зарегистрирован: 25.05.05
ссылка на сообщение  Отправлено: 10.08.07 10:20. Заголовок: Re:


Pasha пишет:

 цитата:
Я больше использую акселераторы меню, которых в минигуи как раз нет


Поправка: акселераторы меню Alt+<буква пункта меню, отмеченная амперсандом &> доступны в минигуи

Спасибо: 0 
Профиль
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 76
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет