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

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

Страниц: 1 [2]   Вниз
  Печать  
Автор Тема: Не работают Ctrl+C и Ctrl+V в русской раскладке в виджетах редактирования  (Прочитано 15408 раз)
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #15 : Август 18, 2014, 16:37 »

qate, там речь про креатор, а не про Qt
Записан

Юра.
qate
Супер
******
Offline Offline

Сообщений: 1177


Просмотр профиля
« Ответ #16 : Август 21, 2014, 11:26 »

qate, там речь про креатор, а не про Qt

креатор на чём написан ? )
Записан
juvf
Программист
*****
Offline Offline

Сообщений: 570


Просмотр профиля
« Ответ #17 : Март 25, 2015, 13:49 »

на мой взгляд надо чинить твою операционку а не программу. ни с одной версией qt ни под одной ОС такого не наблюдал. а так костылей можно много на городить, причем они еще будут и побочные эффекты давать на рабочих системах
Это косяк Qt5.*. У меня  QTextEdit - такая же проблема. На Win7 и на Win XP. Пятерка спортила некогда годный фреймворк.

Запустил из демок  в Qt5.4.0 пример TextEdit - всё работает. посмотрел исходники.... к Ctrl+C (+V) прикручены экшены Copy(Past). Поэтому в примере, в редакторе текста, всё работает. Поставьте курсор на редактирование имени шрифта и этоже проге - в английской раскладке копи-паст работает, в русской нет.
Закоментируйте в сырцах строчки 257, 263 (a->setShortcut(QKeySequence::Copy); ....) и в центральном виджете QTextEdit перестанет работать копи-паст в русской раскладке.

Запускаю TextEdit из QDemo от Qt4.8. В 4-ке в редактировании шрифта работает и русский и английский копипаст.
« Последнее редактирование: Март 25, 2015, 13:55 от juvf » Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #18 : Март 25, 2015, 14:43 »

на мой взгляд надо чинить твою операционку а не программу. ни с одной версией qt ни под одной ОС такого не наблюдал. а так костылей можно много на городить, причем они еще будут и побочные эффекты давать на рабочих системах
Закоментируйте в сырцах строчки 257, 263 (a->setShortcut(QKeySequence::Copy); ....) и в центральном виджете QTextEdit перестанет работать копи-паст в русской раскладке.

Стоп-стоп-стоп! Не нужно в исходниках ничего комментировать Улыбающийся
Записан

juvf
Программист
*****
Offline Offline

Сообщений: 570


Просмотр профиля
« Ответ #19 : Март 25, 2015, 15:01 »

Стоп-стоп-стоп! Не нужно в исходниках ничего комментировать Улыбающийся
Почему не надо? Они на то и даны, чтоб смотреть/использовать/модифицировать.

создайте свой хеловорд с QTextEdit и проверьте
« Последнее редактирование: Март 25, 2015, 15:05 от juvf » Записан
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« Ответ #20 : Март 25, 2015, 15:35 »

А есть способ решения проблемы до выхода исправления? У меня нет экшенов на копипаст.
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #21 : Март 25, 2015, 15:41 »

Стоп-стоп-стоп! Не нужно в исходниках ничего комментировать Улыбающийся
Почему не надо? Они на то и даны, чтоб смотреть/использовать/модифицировать.

создайте свой хеловорд с QTextEdit и проверьте

Какой хеловорд... я про исходники qt говорил, а вы?
Записан

juvf
Программист
*****
Offline Offline

Сообщений: 570


Просмотр профиля
« Ответ #22 : Март 25, 2015, 15:47 »

Какой хеловорд... я про исходники qt говорил, а вы?
Я не про исходники Qt говорил. Я говорил про исходники QDemo, или экзамплов. В частонсти про пример TextEdit. Если кто-то боиться испортить оригинальный пример.... то во первых можно копию примера сделать и проверить, во вторых оригинал примера есть в асистенте, в третих оригинал всегда можно скачать из инета, с qt.io
Записан
juvf
Программист
*****
Offline Offline

Сообщений: 570


Просмотр профиля
« Ответ #23 : Март 25, 2015, 15:52 »

А есть способ решения проблемы до выхода исправления? У меня нет экшенов на копипаст.
Есть. Я так исправил, спасибо sergey_t

Его KeyTranslator закинь в KeyTranslator.h

в main.cpp делаем так

Код:
#include "main.h"
#include "MainWindow.h"
#include "KeyTranslator.h"

#include <QApplication>

int main(int argc, char* argv[])
{
    QApplication app(argc, argv);
  
    KeyTranslator *keyTranslator = new KeyTranslator();
    app.installEventFilter(keyTranslator);
  
    MainWindow w;
    w.show();

    return app.exec();
    delete keyTranslator;//не обязательно
}
Теперь во всех виджетах работает русский копи-паст
« Последнее редактирование: Март 25, 2015, 15:56 от juvf » Записан
PimenS
Крякер
****
Offline Offline

Сообщений: 371


Просмотр профиля
« Ответ #24 : Март 25, 2015, 15:59 »

В 5.4.1 на винде, этого бага уже нет.
Записан
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« Ответ #25 : Март 25, 2015, 15:59 »

Я невнимательный. Не заметил сообщения от sergey_t. Спасибо.
Записан
juvf
Программист
*****
Offline Offline

Сообщений: 570


Просмотр профиля
« Ответ #26 : Март 25, 2015, 16:01 »

В 5.4.1 на винде, этого бага уже нет.
спасибо, попробую обновиться.
Записан
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« Ответ #27 : Март 25, 2015, 16:07 »

В 5.4.1 на винде, этого бага уже нет.
Проверил. Подтверждаю.
Записан
Страниц: 1 [2]   Вверх
  Печать  
 
Перейти в:  


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