Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: zoro86 от Январь 27, 2010, 08:18



Название: как с эмулировать TAB и Backspace
Отправлено: zoro86 от Январь 27, 2010, 08:18
клава уже реализована нигде не могу найти пример эмуляции TAB и Backspace, на счет Backspace я думаю считать позицию курсора и удалять символ вырезанием и помещать курсор в нужную позицию... проста это через #опу получается, ни как не могу понять как можно стандартный Qt::Key_Backspace отправить типа sendEvent?


Название: Re: как с эмулировать TAB и Backspace
Отправлено: zoro86 от Январь 27, 2010, 09:27
я делаю так...
QKeyEvent keyPress(QEvent::KeyPress, character.unicode(), Qt::NoModifier, QString(character));
QApplication::sendEvent(w, &keyRelease);

значение character = Q для него character.unicode() = 81
а для Backspace-a character какой приходится кто нить может ответить..


Название: Re: как с эмулировать TAB и Backspace
Отправлено: Urvin от Январь 27, 2010, 09:30
В ASCII бля Backspace он десятый


Название: Re: как с эмулировать TAB и Backspace
Отправлено: zoro86 от Январь 27, 2010, 09:34
что та не катит..
QKeyEvent keyPress(QEvent::KeyPress, 10, Qt::NoModifier, QString(""));
QApplication::sendEvent(w, &keyRelease);


Название: Re: как с эмулировать TAB и Backspace
Отправлено: zoro86 от Январь 27, 2010, 09:39
короче присвоил спец символ для Backspace...
потом делаю проверку если он сгенерирован то int переменной присваивваю un = Qt::Key_Backspace; ну а дальше
QKeyEvent keyPress(QEvent::KeyPress, un, Qt::NoModifier, a);
QApplication::sendEvent(w, &keyPress);

где QString a = QString(character); которая = "";

все работает спасибо за внимание тема закрыта.