Уважаемые эксперты, доброе время суток! Не могли бы Вы мне подсказать, как правильно на время работы отловить нажатие на клавиатуре кнопки 'Windows' и переопределить ее назначение? Например, при нажатии на нее должно выкидываться сообщение о том, что нажата кнопка 'Windows'. За ранее благодарю. С Ув. Дмитрий.
Доброе время суток, Дмитрий! Используй RgisterKey. Ответ отправлен: 22.02.2004, 12:38 Отправитель: CJ Отвечает Pawel
Здравствуйте, Дмитрий! "переопределить" нажатие клавиши можно ТОЛЬКО на уровне драйвера. Для отслеживания нажатия клавиши для всех приложений , необходимо установить ловушку(HOOK). Для отслеживания нажатия клавиши только для своего приложения используйте локальный обработчик, например keyUP. Ответ отправлен: 22.02.2004, 14:28 Отправитель: Pawel Отвечает sir henry
Приветствую Вас, Дмитрий! У формы есть событие OnKeyDown, в которой Вы можете отлавливать нажатие любой клавиши. При этом, чтобы нажатие клавиши сначала обрабатывала именно форма, свойство KeyPreview формы должно быть True. Ответ отправлен: 24.02.2004, 05:22 Отправитель: sir henry Отвечает samum2000
Добрый день, Дмитрий! Нажатие в программе отловить можно так: procedure TForm1.FormCreate(Sender: TObject); begin Application.OnIdle := AppIdle; end; procedure TForm1.AppIdle(Sender: TObject; var Done: Boolean); begin if GetAsyncKeyState(VK_LWIN) <> 0 then //VK_RWIN соответствует правому win Form1.Caption := 'Нажат левый windows!'; Done := True; end; Если необходимо отлавливать все нажатия в системе, то необходимо писать глобальную ловушку (hook). Ответ отправлен: 24.02.2004, 11:43 Отправитель: samum2000
Вопрос № 1354
Уважаемые эксперты! Как сделать, чтобы прозрачность работала в ХР, а в 98, где ее нет, так чтоб прога работала, а не глючила, из-за того, что видите ли не знает такой функции - SetLayeredWindowAttributes. ?? разве ловушки не для глюков предназначены? а то чего это не работает?
Здравствуйте, Алексей! Не много не понятно, прозрачность чего именно надо? Если знаешь то прозрачность может быть и для окна! Ответ отправлен: 23.02.2004, 16:45 Отправитель: CJ Отвечает Pawel
Приветствую Вас, Алексей! В Win 89 можно сделать прозрачное окно только ручной перерисовкой оного. Есть компоненты которые это реализуют, но они либо тормозят, либо глючат.
Ответ отправлен: 23.02.2004, 09:55 Отправитель: Pawel Отвечает fC
Приветствую Вас, Алексей! Используй эту функцию не статически, а динамически (LoadLibrary, GetProcAddress и т.д.) Ответ отправлен: 23.02.2004, 00:17 Отправитель: fC Отвечает samum2000
Приветствую Вас, Алексей! Логичнее использовать свойства формы AlphaBlend и AlphaBlendValue. Первое позволяет задавать форме прозрачность, а второе непосредственно степень прозрачности (от 0 до 255). Ответ отправлен: 24.02.2004, 11:43 Отправитель: samum2000
Вопрос № 1355
Уважаемые эксперты! Pocket PC: как на него портировать прогу в С++ Builder ? Посоветуйте, что надо скачать - надстройку какую для билдера? что не работает в Windows Mobile( как я понял, эта ОС в Покет ПК?). Если сайты знаете, киньте ссылок, пожалуйста. Ну вобщем кто работал с сабжем, поделитесь опытом, плиз!
Добрый день, Lite! С++ Builder это компилятор для Винды, причем тут PocetPC? Ответ отправлен: 23.02.2004, 16:45 Отправитель: CJ Отвечает Pawel
Здравствуйте, Lite! Нужен специяльный компилятор, надстройкой тут не обойтись. Вообше нужно узнать про структуру исплоняемого фаила, ВОЗМОЖНО можно обойтись дириктивами билдера. Ответ отправлен: 23.02.2004, 09:57 Отправитель: Pawel
Форма отправки вопроса
Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+
или отправлять вопросы с сайта по адресу:
http://rusfaq.ru/cgi-bin/Message.cgi.