在运行Qt / Embedded时,在虚拟控制台(tty)之间切换

时间:2014-04-09 16:20:30

标签: c++ c qt linux-kernel tty

使用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;
    }

认为会有一个修改范围来获得理想的行为。

Here is the whole source

0 个答案:

没有答案