Necesito hacer esto para configurar mi aplicación. Tengo el campo QLineEdit con el método reimplementado keyPressEvent.¿Cómo puedo capturar QKeySequence de QKeyEvent dependiendo de la disposición actual del teclado?
QKeyEvent *ke = ...
QString txt;
if(ke->modifiers() & Qt::ControlModifier)
txt += "Ctrl+";
if(ke->modifiers() & Qt::AltModifier)
txt += "Alt+";
if(ke->modifiers() & Qt::ShiftModifier)
txt += "Shift+";
if(ke->key() >= Qt::Key_0 && ke->key() <= Qt::Key_9)
txt += ('0' + ke->key() - Qt::Key_0);
else if(ke->key() >= Qt::Key_A && ke->key() <= Qt::Key_Z)
txt += ('A' + ke->key() - Qt::Key_A);
ui->hotkeyEdit->setText(txt);
Pero esta solución solo puede crear accesos directos con caracteres en inglés. Por ejemplo, cuando uso el diseño del teclado ruso, este código mostrará la misma secuencia pero con el carácter inglés, colocado en la misma tecla del teclado.
Quiero usuario puede configurar sus propios accesos directos para las acciones. –