Python 如何更改QPlainTextEdit(Pyqt,PySide)的光标形状

Python 如何更改QPlainTextEdit(Pyqt,PySide)的光标形状,python,qt,pyqt,pyside,Python,Qt,Pyqt,Pyside,我有一个简单的Qt小部件,包含一个QPlainTextEdit。我只想显示文本,所以我禁用了文本交互。现在我想将光标形状更改为正常的Qt.ArrowCursor。我试过: self.disp = QPlainTextEdit() self.disp.setTextInteractionFlags(Qt.NoTextInteraction) self.disp.setCursor(Qt.ArrowCursor) 但它不起作用 PS:我不想使用: QApplication.setOverrideC

我有一个简单的Qt小部件,包含一个
QPlainTextEdit
。我只想显示文本,所以我禁用了文本交互。现在我想将光标形状更改为正常的
Qt.ArrowCursor
。我试过:

self.disp = QPlainTextEdit()
self.disp.setTextInteractionFlags(Qt.NoTextInteraction)
self.disp.setCursor(Qt.ArrowCursor)
但它不起作用

PS:我不想使用:

QApplication.setOverrideCursor(QCursor(Qt.ArrowCursor))
因为我实际上在应用程序中还有其他小部件,我不想影响它们。

尝试将光标设置为QPlainTextEdit的viewport()

viewport().setCursor();

对谢谢你的解决方案。关于在这里搜索的人的信息,
viewport()
继承自
QAbstractScrollArea
。因此,此方法适用于
QAbstractScrollArea
下的所有子类,请参见此处: