常用控件1 |
您所在的位置:网站首页 › 自动点击按钮代码 › 常用控件1 |
按钮
QPushButton 就是常见的按钮
当按钮被点击就会发出 clicked 信号,可以这样指定处理该信号的函数 button.clicked.connect(handleCalc) 改变文本代码中可以使用 setText 方法来改变按钮文本,比如 button.setText(text) 禁用、启用所有控件(继承自QWidget类)都支持 禁用和启用方法。 禁用后,该控件不再处理用户操作 禁用 button.setEnabled(False) 启用 button.setEnabled(True) 设置图标可以通过如下方法给按钮设置图标 from PySide2.QtCore import Qt,QSize from PySide2.QtGui import QIcon # 设置图标 button.setIcon(QIcon('logo.png')) # 设置图标大小 button.setIconSize(QSize(30, 30)) 单行文本框QLineEdit 是只能单行编辑的文本框。
官网介绍 信号:文本被修改当文本框中的内容被键盘编辑,被点击就会发出 textChanged 信号,可以这样指定处理该信号的函数 edit.textChanged.connect(handleTextChange)Qt在调用这个信号处理函数时,传入的参数就是 文本框目前的内容字符串。 信号:按下回车键当用户在文本框中任何时候按下回车键,就会发出 returnPressed 信号。 有时我们需要处理这种情况,比如登录界面,用户输完密码直接按回车键就进行登录处理,比再用鼠标点击登录按钮快捷的多。 可以指定处理 returnPressed 信号,如下所示 passwordEdit.returnPressed.connect(onLogin) 获取文本通过 text 方法获取编辑框内的文本内容,比如 text = edit.text() 设置提示通过 setPlaceholderText 方法可以设置提示文本内容,比如 edit.setPlaceholderText('请在这里输入URL') 设置文本通过 setText 方法设置编辑框内的文本内容为参数里面的文本字符串,比如 edit.setText('你好,白月黑羽')原来的所有内容会被清除 清除所有文本clear 方法可以清除编辑框内所有的文本内容,比如 edit.clear() 拷贝文本到剪贴板copy 方法可以拷贝当前选中文本到剪贴板,比如 edit.copy() 粘贴剪贴板文本paste 方法可以把剪贴板内容,拷贝到编辑框当前光标所在处,比如 edit.paste() 多行纯文本框QPlainTextEdit 是可以 多行 的纯文本编辑框。
官网介绍 注意:在苹果MacOS上,有 更新文本框内容后,需要鼠标滑过才能更新显示的bug,参考这里 文本浏览框 内置了一个 QTextDocument 类型的对象 ,存放文档。 信号:文本被修改当文本框中的内容被键盘编辑,被点击就会发出 textChanged 信号,可以这样指定处理该信号的函数 edit.textChanged.connect(handleTextChange)注意: Qt在调用这个信号处理函数时,不会传入文本框目前的内容字符串,作为参数。 这个行为 和 单行文本框不同。 信号:光标位置改变当文本框中的光标位置变动,就会发出 cursorPositionChanged 信号,可以这样指定处理该信号的函数 edit.cursorPositionChanged.connect(handleChanged) 获取文本通过 toPlainText 方法获取编辑框内的文本内容,比如 text = edit.toPlainText() 获取选中文本 # 获取 QTextCursor 对象 textCursor = edit.textCursor() selection = textCursor.selectedText() 设置提示通过 setPlaceholderText 方法可以设置提示文本内容,比如 edit.setPlaceholderText('请在这里输入薪资表') 设置文本通过 setPlainText 方法设置编辑框内的文本内容 为参数里面的文本字符串,比如 edit.setPlainText('''你好,白月黑羽 hello byhy''')原来的所有内容会被清除 在末尾添加文本通过 appendPlainText 方法在编辑框末尾添加文本内容,比如 edit.appendPlainText('你好,白月黑羽')注意:这种方法会在添加文本后 自动换行 在光标处插入文本通过 insertPlainText 方法在编辑框末尾添加文本内容,比如 edit.insertPlainText('你好,白月黑羽')注意:这种方法 不会 在添加文本后自动换行 清除所有文本clear 方法可以清除编辑框内所有的文本内容,比如 edit.clear() 拷贝文本到剪贴板copy 方法可以拷贝当前选中文本到剪贴板,比如 edit.copy() 粘贴剪贴板文本paste 方法可以把剪贴板内容,拷贝到编辑框当前光标所在处,比如 edit.paste() 设置最大行数有时候,代码会不断往文本框添加内容,为了防止占用过多资源,可以设置文本框最大行数。 像这样: edit.document().setMaximumBlockCount(1000)就设置最大为 1000行 文本浏览框QTextBrowser 是 只能查看文本 控件。 通常用来显示一些操作日志信息、或者不需要用户编辑的大段文本内容。 官网介绍 该控件 获取文本、设置文本、清除文本、剪贴板复制粘贴 等等, 都和上面介绍的 多行纯文本框是一样的。 下面我们主要讲解不同点 在末尾添加文本通过 append 方法在编辑框末尾添加文本内容,比如 textBrowser.append('你好,白月黑羽')有时,浏览框里面的内容长度超出了可见范围,我们在末尾添加了内容,往往希望控件自动翻滚到当前添加的这行, 可以通过 ensureCursorVisible 方法来实现 textBrowser.append('你好,白月黑羽') textBrowser.ensureCursorVisible()注意:这种方法会在添加文本后 自动换行 在光标处插入文本通过 insertPlainText 方法在编辑框末尾添加文本内容,比如 edit.insertPlainText('你好,白月黑羽')注意:这种方法 不会 在添加文本后自动换行 标签QLabel 就是常见的标签,可以用来显示文字(包括纯文本和富文本)、图片 甚至动画。
可以这样用代码创建一个 QLabel对象 from PySide2 import QtWidgets class Window(QtWidgets.QWidget): def __init__(self): label_path = QtWidgets.QLabel('初始内容', self) 改变文本代码中可以使用 setText 方法来改变标签文本内容,比如 label.setText(text) 显示图片QLabel可以用来显示图片,有时一个图片可以让界面好看很多,如下图所示
怎么用QLabel 显示图片呢? 可以在 Qt Designer上 属性编辑器 QLabel 栏 的 pixmap 属性设置中选择图片文件指定。 下面有示例代码包, 演示如何显示图片,并且控制图片的显示风格 下载一个 程序界面代码,解压后,拖动里面的main.ui界面文件到Qt设计师里面。 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |