def show_text(self):
a = '*'
for i in range(1,50):
text = '第' + str(i) + '次输入内容' + a * i + '\n'
self.textEdit.insertPlainText(text)
self.textEdit.moveCursor(QTextCursor.End)
有两种函数开始和insertPlainText()
搭配,一是self.textEdit.moveCursor(QTextCursor.End)
,把光标置于底部
二是self.textEdit.verticalScrollBar().setValue(self.textEdit.verticalScrollBar().maximum())
,直接把滑动条始终最大值,即底部
。
。
。
。
PyQt5随笔:QTextEdit、QTextBrowser添加的文字超出视图后,滑动条自动移至最底部,显示最新文本解决1.前言QTextEdit/QTextBrowser设置文本的简单函数:setPlainText(),setText()这两个函数是我们初学PyQt5接触的。但都是后一次输入内容覆盖前一次的内容。和我们设想的多次输入,全部都显示的不一样。这就要学习其他设置文本函数了。有两个函数可以实现我们的设想,append(),insertPlainText()搭配一定函数。2.方法一:通过a
参考视频:https://www.bilibili.com/video/BV1ot411d748?p=10
二、单行文本框
单行文本框Line Edit位于【Input Widgets】栏中,它可以用来输入单行字符串
如下所示,我们编写代码将输入的内容在一个Label控件中显示出来
编写代码如下所示
#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author: William
import sys
用textedit接受数据,但是超过当前文本大小后不会跟着走就看不见最新接收的数据,用这种方法每当有新数据,将自动滚动到底部:
选中textedit右键转到槽,选择textChanged(),然后在弹出来的函数中加代码:
ui->textedit->moveCursor(QTextCursor::End);
**3.textChanged():再文本每次被改变的时候,发送信号
**4.clear():清空文本
**5.setPlaceholderText():设置占位字符串(只有再文本编辑框么有任何内容的时候才会显示)
制作一个简易的记事本
import sys
from PyQt5.QtWidgets import QAp
import time
from PyQt5 import uic, QtCore
from PyQt5.QtCore import QThread, pyqtSignal, QObject
from PyQt5.QtWidgets import QApplication
class UpdateThread(QThread):
文章目录QLabel标签QPushButton按键QCheckBox复选框QRadioButton单选按钮QMessageBox弹框QSlider滑动条QFileDialog打开文件或文件夹QTreeView目录树结构
QLabel标签
显示文字
from PyQt5.QtWidgets import QLabel
label = Qlabel()
label.setText("显示内容")...
你可以使用QFileDialog来获取用户选择的文件路径,然后使用Python的文件操作功能读取文件中的文本内容,并将其显示在QTextEdit中。
以下是示例代码:
```python
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QTextEdit, QAction, QFileDialog
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
# 创建一个QTextEdit控件
self.textEdit = QTextEdit()
self.setCentralWidget(self.textEdit)
# 创建菜单栏
menubar = self.menuBar()
fileMenu = menubar.addMenu('File')
# 添加打开文件菜单项
openFile = QAction('Open', self)
openFile.setShortcut('Ctrl+O')
openFile.setStatusTip('Open File')
openFile.triggered.connect(self.showDialog)
fileMenu.addAction(openFile)
self.setGeometry(300, 300, 350, 300)
self.setWindowTitle('Open File')
self.show()
def showDialog(self):
# 显示文件选择对话框
fname = QFileDialog.getOpenFileName(self, 'Open file', '/')
# 如果用户选择了文件,打开文件并将文本内容显示在QTextEdit中
if fname[0]:
with open(fname[0], 'r') as f:
data = f.read()
self.textEdit.setText(data)
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = MainWindow()
sys.exit(app.exec_())
在这个示例中,我们创建了一个QMainWindow,其中包含一个QTextEdit控件和一个File菜单,其中包含一个Open菜单项。当用户单击Open菜单项时,会调用showDialog()方法,该方法显示一个文件选择对话框,让用户选择要打开的文件。如果用户单击了打开按钮,则该方法将使用Python的文件操作功能读取文件中的文本内容,并将其显示在QTextEdit控件中。