Russian Qt Forum
Ноябрь 23, 2024, 01:30 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Проблема хоткеев с не-английским языком  (Прочитано 8278 раз)
Red Devil
Гость
« : Май 24, 2008, 22:05 »

Если мы работает с англ. языком - то все хоткеи работают, а вот например случайно переключившись на русский - хоткеи не срабатывают (которые создаются с помощью QAction).
Есть ли какой-то способ реализовать сделать так, чтобы в хоткеи был именно сканкод клавиши клавиатуры, а не сам символ ?

Мне пока что на ум пришло создать дубликаты QAction с хоткеем русским. Второй способ еще перехватывать KeyPressEvent события и там уже разбиратся - но как то ушь очень сложно ...
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #1 : Май 24, 2008, 22:34 »

Мне пока что на ум пришло создать дубликаты QAction с хоткеем русским.
Ну вроде как замысел похожий. Я вот так это все понял:
Ты пишешь все строки и комбинации клавишь на аглицком, заключая в функцию tr(), потом переводишь свою прогу, на нужный язык, например, русский. При переводе меняешь и горячие кнопки и "акселераторы" (те буквы, что помечаются собачкой).

Но я с тобой солидарен, лучше б был сканкод. "Именно эта физическая кнопка и баста"
« Последнее редактирование: Май 24, 2008, 22:36 от lit-uriy » Записан

Юра.
Red Devil
Гость
« Ответ #2 : Май 24, 2008, 22:39 »

Хм... так я как бы и не собирался ее переводить. У меня только английский язык (планируется, не вижу причин для использование других языков), я имею в виду как раз тот момент, когда пользователь случайно переключит раскладку (ну ведь у всех так бывает) и использует хоткей.
Вот у меня например Ctrl+', в русском будет Ctrl+э и это "э" напечатается, в то время как в английской раскладке сработает хоткей.
Записан
Swappp
Гость
« Ответ #3 : Май 25, 2008, 20:42 »

Написал бы хоть какая версия Qt, какая система и т.п. Т.к. у меня все работает как надо и под Linux и под Win.
Записан
Red Devil
Гость
« Ответ #4 : Май 25, 2008, 21:41 »

Qt 4.4
ОС под которой разрабатываю Win

хех, сейчас посмотрел другие хоткеи и они работают ! Единственные хоткеи которые не откликаются это Ctrl+ русские буквы для которых нет эквивалентов на английском (э,б,х) - а для остальных работает.
Для них сделать не проблема конечно дубликаты раз такое дело.
« Последнее редактирование: Май 25, 2008, 21:45 от Red Devil » Записан
ритт
Гость
« Ответ #5 : Май 25, 2008, 21:50 »

возможно, имеет смысл запостить троллям
Записан
Alex03
Гость
« Ответ #6 : Май 26, 2008, 06:22 »

Возможно троли намерено так сделали, ибо существует довольно много вариантов клавиатурных раскладок, которые отличаются как раз положением таких символов как 'ё', '/', и прочих знаков препинания... А возможно и просто чтобы не "пересекались" буквы с знаками препинания... В смысле, что хот-кей со знаком препинания "както не звучит." Улыбающийся

PS Ещё интересней когда раскладка литинских буковок прыгает по клавиатуре... Типа 'Z' и 'Y' на немецкой клавиатуре. (В винде добавьте язык ввода "Немецкий (Германия)")
Записан
ритт
Гость
« Ответ #7 : Май 26, 2008, 11:26 »

вообще, я поторопился с постом выше...
когда-то натыкался на кусок кода, создающего хоткеи автоматом, - там только...эмм..."произносимые" буквы использовались (вроде бы)
наверное, оно и правильно - не кутёвая это работа - знать все раскладки на всех клавиатурах
а "специаизированные" хоткеи не так и трудно создать самому - всего-то пол-дюжины дополнительных буковок
Записан
Red Devil
Гость
« Ответ #8 : Май 28, 2008, 19:44 »

... ну вообще-то я думаю знаки <, " и { - на любых раскладках одинаковые.
Вообщем я запостил баг, оказывается не я один такой. До меня еще такой же запостили, только с разницой в том что там такая же проблема с норвежским языком.
Записан
Sergeich
Гость
« Ответ #9 : Май 30, 2008, 18:55 »

Вообщем я запостил баг, оказывается не я один такой. До меня еще такой же запостили, только с разницой в том что там такая же проблема с норвежским языком.
Какой у него TaskId, че-то я его не нашел?
Записан
Red Devil
Гость
« Ответ #10 : Май 31, 2008, 23:28 »

Не знаю, вот ответ от их службы :
Цитировать
Thanks for reporting this, I think I have been able to partially
duplicate the issue you describe. With a Norwegian Keyboard layout
instead of a Russian one, but I assume the principles are the same.

Would you agree that the only times it does not work is when another
modifier key is added to the combination?

For example when switching between English (US) Layout and Norwegain,
the   ,     key is accessible from both layouts. The    [     key
however requires that I use a "alt gr" modifier key to press use it, so
I can not use it as a shortcut with control.

Can you please validate my theory, that the only times it does not work
is when the characters need another modifier key to reproduce them ?

Thanks,

Dean

--
Dean Dettman, Support Engineer
Trolltech ASA - http://www.trolltech.com
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.051 секунд. Запросов: 22.