我使用QT的4.3.0版本好象是有这个问题,最好换另外的版本(不过另外的版本可能会有别的问题)
如果不想换版本,就重载一下控件的inputMethodEvent,比如如下:
void myLineEdit::inputMethodEvent(QInputMethodEvent *ie)
{
QString a;
a=ie->commitString();
if(a.length() !=0)
{
if(hasSelectedText())
{
int x=cursorPosition();
this->del();
this->setCursorPosition(x);
}
this->insert(a);
ie->accept();
}
}
比较麻烦。