А вот ещё вопрос.
Пищу индикатор языка клавиатуры (Как в Windows 9X) чистый WinAPI (windows, shellapi), Модушь Graphics ! неиспользую ! для экономии обьёма ехе - файла.
Висит иконка в трее с изображением языка ввода, переключаешь раскладку (Системно: Alt+Shift, Ctrl+Shift), иконка перерисовывается. В разных окнах - раскладка разная (Типа в Word'e - пишем по-русски, а в Блокноте - по-английски,.. ) вообщем это все работает, определяет раскладку в разных окнах нормально.
Кликаем по иконке левой кнопкой мыши - вылезает менюха с доступными языками (на текущем стоит Чек), вообщем все как положено. Но вот проблема, когда кликаешь по иконке в трее левой кнопкой, Фокус текущего окна (того на котором хотим сменить язык) теряется, меняем раскладку (Выбираем на выпавшей менюхе) , в итоге раскладка меняется на иконке (на её Хендле), а окно нужное - без фокуса, поэтому осталось не затронутым.
Вот собсна вопросы:
1. Как сделать PopupMenu так, чтоб при его вызове, текушее окно не теряло фокуса?
2. Как убрать меню (оно не уберается пока по нему не кликнешь), если кликаешь не по нему?
|