mylineedit.cpp

来自「commi-0.3.2版本,linux下串口程序的源代码,类似minicom」· C++ 代码 · 共 58 行

CPP
58
字号
#include "mylineedit.h"#include <qmessagebox.h>#include <iostream>using std::cout; using std::endl;MyLineEdit::MyLineEdit(QWidget *parent,const char *name) : QLineEdit(parent,name){    m_it = historylist.begin();}void MyLineEdit::keyPressEvent(QKeyEvent *e){    if(e->state()==Qt::ControlButton) { if(e->key() == Qt::Key_C) {   m_command="!ctrl_c";   emit(QLineEdit::returnPressed()); } else if(e->key()==Qt::Key_Q) {   m_command="!ctrl_q";   emit(QLineEdit::returnPressed()); } else if(e->key()==Qt::Key_S) {   m_command="!ctrl_s";   emit(QLineEdit::returnPressed()); }    }    else { switch(e->key()) {    case Qt::Key_Up: m_it--; QLineEdit::setText(*m_it); break; case Qt::Key_Down:  m_it++; QLineEdit::setText(*m_it); break;case Qt::Key_Return:     if(QLineEdit::text()!="") { historylist<<QLineEdit::text(); m_it=historylist.end(); m_command = QLineEdit::text(); QLineEdit::clear();}    else m_command="";    emit(QLineEdit::returnPressed());    break;case Qt::Key_Escape: printHistList();    break;    default:QLineEdit::keyPressEvent(e);    }} }void MyLineEdit::printHistList(void) {    for ( QStringList::Iterator it = historylist.begin(); it != historylist.end(); ++it ) {        cout << *it << endl;    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?