首页 > 其他分享 >pyqt5 简单工具类

pyqt5 简单工具类

时间:2023-02-01 12:00:42浏览次数:131  
标签:layout edit text self pyqt5 简单 工具 button def


from PyQt5.QtWidgets import QPushButton, QLabel, QLineEdit,QTextEdit,QPlainTextEdit,QCheckBox
from PyQt5.QtWidgets import QComboBox,QRadioButton

class MYWIDGET():
def __init__(self):
pass

def addButton(self, layout, button_name):
button = QPushButton(button_name)
layout.addWidget(button)
return button
def addRadioButton(self, layout,btngroup, button_name):
button = QRadioButton(button_name)
btngroup.addButton(button)
layout.addWidget(button)
return button
def addLabel(self, layout, text):
label = QLabel(text)
layout.addWidget(label)
return label
def addStretch(self, layout):
layout.addStretch()

def addLineEdit(self, layout, place_holder_text='',text=''):
line_edit = QLineEdit()
line_edit.setPlaceholderText(place_holder_text)
layout.addWidget(line_edit)
line_edit.setText(text)
return line_edit
def addLineEditD(self,win, layout, place_holder_text='',text=''):
edit = DropLineEdit(win)
edit.setPlaceholderText(place_holder_text)
layout.addWidget(edit)
edit.setText(text)
return edit
def addTextEdit(self, layout, place_holder_text='',text=''):
edit = QTextEdit()

edit.setPlaceholderText(place_holder_text)
layout.addWidget(edit)
edit.setText(text)
return edit
def addPlainTextEdit(self, layout, place_holder_text=''):
edit = QPlainTextEdit()
edit.setPlaceholderText(place_holder_text)
layout.addWidget(edit)
return edit
def addCheckBox(self, layout, text=''):
check = QCheckBox()
check.setText(text)
layout.addWidget(check)
return check
def addComboBox(self, layout, _list):
comboBox = QComboBox()
for item in _list:
comboBox.addItem(item)
layout.addWidget(comboBox)
return comboBox


class DropLineEdit(QLineEdit):
def __init__(self, parent=None):
super(DropLineEdit, self).__init__(parent)
self.setDragEnabled(True)
def dragEnterEvent(self, e):
if e.mimeData().hasText():
e.accept() #[只有接受之后,移动事件和释放事件才可以]
else:
e.ignore()

def dropEvent(self, e): #拖拽时鼠标释放事件
if e.mimeData().hasText():
path=e.mimeData().text()
path = path.split('\n')
path = path[0].split('///') #去掉file:///
self.setText(path[1].replace('/','\\')) #把路径写入QLineEdit控件
else:
e.ignore()

MYWIDGET = MYWIDGET()


标签:layout,edit,text,self,pyqt5,简单,工具,button,def
From: https://blog.51cto.com/u_10780206/6031192

相关文章

  • pyqt5 简单模板
    importsysfromPyQt5.QtCoreimportQtfromPyQt5.QtWidgetsimportQWidget,QDesktopWidget,QVBoxLayout,QHBoxLayout,QApplication,QButtonGroupfromutils.tableUt......
  • 00- 工具类
    一.登陆前置1.中间件#中间件介绍#1.在中间件的process_request方法:#如果方法中没有返回值(返回None),继续向后走#如果方法中有返回值HttpResponse......
  • 【FFH】 gn项目构建工具学习记录
    gn项目构建工具学习我们为何要使用构建工具?对于一个新手入门简单的helloworld程序而言,我们可以直接使用gcc命令对其进行编译。对于OpenHarmony系统而言,代码规模庞大,再想要......
  • Guava:google公司开发的一款Java类库扩展工具包
    Guava是google公司开发的一款Java类库扩展工具包文档https://github.com/google/guavahttps://github.com/google/guava/wikihttps://guava.dev/releases/snapshot-jre......
  • C++ traits 萃取的一些简单理解
    摘取自<effectivec++>  ......
  • 爬虫工具(tkinter+scrapy+pyinstaller)
    需求介绍输入:关键字文件,每一行数据为一爬取单元。若一行存在多个and关系的关键字,则用|隔开处理:爬取访问6个网站的推送,获取推送内容的标题,发布时间,来源,正文第一段(不是图片......
  • 服务器VPC申请后简单加固过程记录 系统版本 CentOS7.6.1810
    搞了个便宜的服务器大概看了下都是默认配置简单做下配置ssh配置#更换端口vi/etc/ssh/sshd_config将其中的Port22中的22改为自己想用的端口建议用10000以上的......
  • wpa_supplicant - 强有力的终端 wifi 配置工具
    最近网购了一套Raspberry-Pi2,用来跑一些神秘脚本。因为树莓派是基于ARM架构的,所以给它装上了 Ubuntu专版,对于终端下基本的 iwconfig 命令可能对现代的多种加密方式的......
  • 简单三步上传公众号文章附件
     网址:https://uom.cn/f/# 第一步:打开网站,微信扫码登录,会自动返回主页 第二步:点击选择文件按钮 第三步:选择文件并打开  此时上传就已经完成了,会提供三个方......
  • logging --- Python 的日志记录工具
    logging ---Python的日志记录工具源代码: Lib/logging/__init__.pyImportant此页面仅包含API参考信息。教程信息和更多高级用法的讨论,请参阅基础教程进阶教......