Здравствуйте, гость ( Вход | Регистрация )
FantasyOr | Дата 22.12.2010, 15:31 |
справился с этой закавыкой так:
|
|
MoPDoBoPoT | Дата 18.12.2010, 22:18 |
2) наследуемся от QTextEdit и переопределить keyPressEvent, но в QKeyEvent невозможно изменить модификатор(изменить на шифт нажат) вот тут и тупик. Зато можно подменить своим событием. Но с модификаторами лучше не играться, а то можно на трудноотлавливаемый баг нарваться. Кстати, если это нужно в качестве единичного использования, то можно воспользоваться фильтром событий (для этого читать про QObject::installEventFilter() QApplication::sendEvent()) |
|
FantasyOr | Дата 18.12.2010, 12:04 |
maint Вы намекаете на: textEdit1.setInputMethodHints(Qt::ImhUppercaseOnly); уже пробовал, не работает. я может и не прав, но причем тут хинт + "Qt::ImhUppercaseOnly 0x40000 Only upper case letter input is allowed." вольный перевод: "допускается ввод только букв в верхнем регистре", а мне нужно, автоматически поднимать регистр, на подобии: LineEdit1->setInputMask(">"); http://qtdocs.narod.ru/4.1.0/doc/html/qlineedit.html "> - Все следующие алфавитный символы переводятся в верхний регистр." |
|
maint | Дата 17.12.2010, 20:19 |
http://doc.qt.nokia.com/4.7/qt.html#InputMethodHint-enum |
|
FantasyOr | Дата 17.12.2010, 19:38 |
Добрый ... это просто ужас, нигде в интернетах нет решения этой проблемы, казалось бы довольно тривиальный велосипед... анн нет, либо все молчат зная секрет, либо никому не надо? не верю. есть 2 варианта, и он вроде бы даже работает, но наполовину: 1) - ловим у QTextEdit textChanged() - сохраняем положение курсора - читаем весь текст - toUpper - присваиваем поднятый текст обратно QTextEdit - восстанавливаем курсор но тут 1 минус: - очень много ненужных действий 2) наследуемся от QTextEdit и переопределить keyPressEvent, но в QKeyEvent невозможно изменить модификатор(изменить на шифт нажат) вот тут и тупик. кто что подскажет? |
|
Просмотр темы полностью (откроется в новом окне) | |
Текстовая версия | Сейчас: 29.4.2024, 17:47 |