pyqt5中,QLineEdit置灰且不可修改
时间: 2024-01-23 19:02:13 浏览: 167
在PyQt5中,实现QLineEdit置灰且不可修改的方法与在Qt5中实现的方法类似。可以使用以下代码:
```python
lineEdit = QtWidgets.QLineEdit(parent)
lineEdit.setReadOnly(True)
lineEdit.setStyleSheet("QLineEdit { background-color: #CCCCCC; }") #设置背景色为灰色
```
其中,`setReadOnly(True)`可以实现不可编辑,`setStyleSheet()`可以实现修改背景色为灰色。
相关问题
PYQT6只显示文本的功能不可写入
在PyQt6中,如果你想要创建一个只读的文本框,以便用户只能查看内容而无法进行编辑,你可以使用`QTextEdit`类而不是`QLineEdit`。`QTextEdit`是一个富文本编辑器,它默认就是只读模式,适合展示纯文本。
以下是创建一个只读`QTextEdit`的简单例子:
```python
from PyQt6.QtWidgets import QApplication, QWidget, QVBoxLayout, QTextEdit
class MyReadOnlyTextWindow(QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle('PYQT6 Read-only Text Display')
self.setGeometry(100, 100, 400, 200)
# 创建只读文本框
text_view = QTextEdit(self)
text_view.setReadOnly(True) # 设置为只读模式
text_view.setText("这是一个只读的文本区域,用户无法在这里写字。\n这是另一段文本。") # 设置初始内容
# 添加到窗口布局
layout = QVBoxLayout()
layout.addWidget(text_view)
self.setLayout(layout)
self.show()
if __name__ == "__main__":
app = QApplication([])
window = MyReadOnlyTextWindow()
app.exec_()
```
在这个例子中,`text_view.setReadOnly(True)`这一行设置了文本框的只读状态。用户无法对文本进行修改,他们看到的就是预设的文字内容。
阅读全文