PyQt5+python3的FindDialog

 1 #!/usr/bin/env python
 2 #coding: utf-8
 3
 4 import sys
 5 from PyQt5.QtWidgets import *
 6 from PyQt5.QtCore import Qt, pyqtSignal
 7
 8 class FindDialog(QDialog):
 9     findPrevious = pyqtSignal(str, Qt.CaseSensitivity)
10     findNext = pyqtSignal(str, Qt.CaseSensitivity)
11
12     def __init__(self, parent = None):
13         QDialog.__init__(self, parent = None)
14
15         label = QLabel("Find &what:")
16         lineEdit = QLineEdit()
17         label.setBuddy(lineEdit)
18
19         caseCheckBox = QCheckBox("Match &case")
20         backwardCheckBox = QCheckBox("Search &backward")
21         findButton = QPushButton("&Find")
22         findButton.setDefault(True)
23         findButton.setEnabled(False)
24
25         closeButton = QPushButton("Close")
26
27         lineEdit.textChanged.connect(self.enableFindButton)
28         findButton.clicked.connect(self.findClicked)
29         closeButton.clicked.connect(self.close)
30
31         topLeftLayout = QHBoxLayout()
32         topLeftLayout.addWidget(label)
33         topLeftLayout.addWidget(lineEdit)
34
35         leftLayout = QVBoxLayout()
36         leftLayout.addLayout(topLeftLayout)
37         leftLayout.addWidget(caseCheckBox)
38         leftLayout.addWidget(backwardCheckBox)
39
40         rightLayout = QVBoxLayout()
41         rightLayout.addWidget(findButton)
42         rightLayout.addWidget(closeButton)
43         rightLayout.addStretch()
44
45         mainLayout = QHBoxLayout()
46         mainLayout.addLayout(leftLayout)
47         mainLayout.addLayout(rightLayout)
48
49         self.setLayout(mainLayout)
50         self.setWindowTitle("Find")
51         self.setFixedHeight(self.sizeHint().height())
52
53         self.findButton = findButton
54         self.lineEdit = lineEdit
55         self.caseCheckBox = caseCheckBox
56         self.backwardCheckBox = backwardCheckBox
57
58     def findClicked(self):
59         text = self.lineEdit.text()
60         cs = Qt.CaseSensitive if self.caseCheckBox.isChecked() else Qt.CaseInsensitive
61         if self.backwardCheckBox.isChecked():
62             self.findPrevious.emit(text, cs)
63         else:
64             self.findNext.emit(text, cs)
65
66     def enableFindButton(self, text):
67         self.findButton.setEnabled(not text == ‘‘)
68
69 if __name__ == ‘__main__‘:
70     app = QApplication(sys.argv)
71     dialog = FindDialog()
72     dialog.show()
73     sys.exit(app.exec())
时间: 2024-10-07 16:21:16

PyQt5+python3的FindDialog的相关文章

PyQt5+Python3.5.2-32bit开发环境搭建

1.基本环境. Window 8.1 64bit Python3.5.2-32bit.exe PyQt5 2.安装python. 去官网下载32位版本的python3.5.2(就是x86那个) 备注:因为之前用gcc编译代码,gcc是32位的,所以,python也对应,用了32位的. 开始安装,注意,安装目录修改为C:\python35, 并且勾选添加到环境变量,为所有用户安装Python 3.安装PyQt5. 打开命令提示符,并输入C:\>python,查看当前安装版本是否为python3.5

PyQt5+python3+pycharm开发环境配置

1.下载PyQt 官方网站:http://www.riverbankcomputing.com/software/pyqt/download5 我的操作系统是64位的,安装的是Python3.4.3,所以我选择下载:PyQt5-5.4.1-gpl-Py3.4-Qt5.4.1-x64.exe 单击安装即可. 2.配置PyCharm 1)打开PyCharm,执行快捷键ctrl+alt+s打开设置界面,输入tool,点开external tools,配置qtdesigner. 点击左上角的加号,作如下

python3+pyQt5+QtDesignner实现窗口化猜数字游戏

描述:使用QtDesignner设计界面,pyQt5+python3实现主体方法制作的猜数字游戏. 游戏规则:先选择游戏等级:初级.中级.高级.魔鬼级,选择完游戏等级后点击“确定”,然后后台会自动生成一个与游戏等级匹配的“神秘数字”,游戏玩家在文本框内输入数字,再点击文本框旁边的“确定”,即可比较玩家所猜数字是否就是“神秘数字”. 游戏界面: 源代码: 代码1:guessNumberGame.py (界面代码) 1 # -*- coding: utf-8 -*- 2 3 # Form imple

[pyqt5]解决could not find or load the Qt platform plugin windows

在PyQt5+python3+pycharm开发环境配置时,遇到了This application failed to start because it could not find or load the Qt platform plugin "windows".的问题.导致无法通过pycharm运行Pyqt5的应用 出现该问题的原因是环境变量没有添加. 解决方法: 在环境变量中增加: QT_QPA_PLATFORM_PLUGIN_PATH C:\Python34\Lib\site-

pycharm+PyQt5+python最新开发环境配置,踩坑过程详解

Python 3.6https://www.python.org/downloads/windows/========================================PyQt5 pip3 install  PyQt5 -i https://pypi.tuna.tsinghua.edu.cn/simple 安装图形界面开发工具Qt Designerpip3 install  PyQt5-tools -i https://pypi.tuna.tsinghua.edu.cn/simpl

PyQt的安装和使用

一.背景 首先在窗口界面的开发工具中有众多的选择,主流的就是Qt,而python更是支持众多语言的窗口界面,包括C++,Java等.因此这里介绍一下关于PyQt5的安装和使用 二.安装 由于python2已经不再官方维护,并且python3也不再支持PyQt4,所以在这里使用PyQt5 python3的安装命令: 安装pyqt5 pip install pyqt5 安装Qt-Designer pip install pyqt5-tools 三.配置与输出文件 需要在external tools中

python3.5 + PyQt5 +Eric6 实现的一个计算器

目前可以实现简单的计算.计算前请重置,设计的时候默认数字是0,学了半天就做出来个这么个结果,bug不少. python3.5 + PyQt5 +Eric6 在windows7 32位系统可以完美运行 计算器,简单学了半天就画个图实现的存在bug,部分按钮还未实现,后续优化. 代码结构如图: 1 jisuan.py 2 import re 3 #匹配整数或小数的乘除法,包括了开头存在减号的情况 4 mul_div=re.compile("(-?\d+)(\.\d+)?(\*|/)(-?\d+)(\

配置pyqt5环境 for python3.4 on Linux Mint 17.1

1.安装QT 配置QT PATH 在 /etc/profile文件中追加 export QTDIR=/usr/local/Qt5.4.2/5.4/gcc_64 export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${QTDIR}/lib export PATH=${QTDIR}/bin:${PATH} 注意${QTDIR}/bin和${PATH}的顺序!因为Ubuntu14.04默认${PATH}路径中的/usr/bin下存在诸多qt命令(确切的说是指向qtcho

完美配置Python3.5+Anaconda+PyQt5,实现UI和其他模块的结合

http://blog.sina.com.cn/s/blog_64e1004d0102wryn.html Python UI我感觉PyQt最强大最方便.但是Python的更新速度太快,让诸多类似库跟不上节奏. PyQt做UI早前只支持Python3.4或python2.7,但是最近有个好消息,PyQt出5.6版本了,完美支持python3.5,赶上了Python的版本更新. Anaconda配置开发环境,安装各种科学计算及神经网络库非常方便,再也不用pip install出一堆莫名其妙的错误了,