使用Qt / Embedded作为开发GUI的编程语言,发现无法切换到另一个虚拟控制台(TTY),而QWS服务器正在当前终端上运行。这会造成很多不便,例如人们将程序的输出/日志消息重定向到其他终端&他们经常在执行软件时看到这些日志。它对于调试大型项目特别有用。
我想知道,是否有办法让虚拟控制台之间切换工作。
Re:我刚刚浏览了Qt / Embedded的源代码。我找到了这个部分
QWSKeyboardHandler::KeycodeAction ka;
ka = m_handler->processKeycode(code, value != 0, value == 2);
switch (ka) {
case QWSKeyboardHandler::CapsLockOn:
case QWSKeyboardHandler::CapsLockOff:
switchLed(LED_CAPSL, ka == QWSKeyboardHandler::CapsLockOn);
break;
case QWSKeyboardHandler::NumLockOn:
case QWSKeyboardHandler::NumLockOff:
switchLed(LED_NUML, ka == QWSKeyboardHandler::NumLockOn);
break;
case QWSKeyboardHandler::ScrollLockOn:
case QWSKeyboardHandler::ScrollLockOff:
switchLed(LED_SCROLLL, ka == QWSKeyboardHandler::ScrollLockOn);
break;
default:
// ignore console switching and reboot
break;
}
认为会有一个修改范围来获得理想的行为。