QTextEdit光标一直闪烁

怎么在没有被焦点的情况下保持光标显示?
比如自己写一个输入法,焦点在虚拟键盘上跳,输入框保持光标闪烁。

继承QTextEdit,造一个QFocusEvent去调用focusInEvent

#include 
class MyTextEdit : public QTextEdit
{
    Q_OBJECT

public:
    void startCursor(void);
};

void MyTextEdit::startCursor(void)
{
    QFocusEvent fe(QEvent::FocusIn, Qt::TabFocusReason);
    focusInEvent (&fe);
}

使用

MyTextEdit *te = new MyTextEdit();
te->setText("12131423");
te->startCursor();
//光标移动到最后
te->moveCursor (QTextCursor::EndOfLine);

你可能感兴趣的:(linux,qt)