https://github.com/yjg30737/pyqt-find-path-widget
PyQt find path widget (QLabel - QLineEdit - QPushButton)
https://github.com/yjg30737/pyqt-find-path-widget
pyqt pyqt-examples pyqt-tutorial pyqt5 pyqt5-examples pyqt5-tutorial python python3 python37 qlineedit qpushbutton qt
Last synced: 4 months ago
JSON representation
PyQt find path widget (QLabel - QLineEdit - QPushButton)
- Host: GitHub
- URL: https://github.com/yjg30737/pyqt-find-path-widget
- Owner: yjg30737
- License: mit
- Created: 2021-12-22T04:21:23.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2022-07-24T08:28:47.000Z (almost 4 years ago)
- Last Synced: 2025-10-26T23:22:44.502Z (7 months ago)
- Topics: pyqt, pyqt-examples, pyqt-tutorial, pyqt5, pyqt5-examples, pyqt5-tutorial, python, python3, python37, qlineedit, qpushbutton, qt
- Language: Python
- Homepage:
- Size: 28.3 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# pyqt-find-path-widget
PyQt find path widget (QLabel - QLineEdit - QPushButton)
## Requirements
PyQt5 >= 5.8
## Setup
`python -m pip install pyqt-find-path-widget`
## Included Packages
* pyqt-resource-helper
## Feature
* `findClicked` Signal will be emitted when find button clicks
* `added` Signal will be emitted when file's name is set in the QLineEdit
* "Open path" feature in context menu
* Showing tooltip to show full path when QLineEdit is too short to do so
* QLineEdit is set to read only in order to prevent malfunction from wrong input.
* Being able to use `setLabel(label: str)` method to set the label. Label doesn't exist as default.
## Example
```python
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QTextBrowser
from pyqt_find_path_widget import FindPathWidget
class FindPathWidgetExample(QWidget):
def __init__(self):
super().__init__()
self.__initUi()
def __initUi(self):
findPathWidget = FindPathWidget()
findPathWidget.setExtOfFiles('Text Files (*.txt)') # Restrict file's extension to find
findPathWidget.findClicked.connect(self.__findClicked) # Signal will be emitted when find button clicks
findPathWidget.added.connect(self.__added) # Signal will be emitted when file's name is set in the QLineEdit
self.__textBrowser = QTextBrowser() # Widget to show text file's content
self.__textBrowser.setStyleSheet('QTextBrowser '
'{'
'color: #DDD;'
'background-color: #444;'
'border: 1px solid #222;'
'}') # To match the style with FindPathWidget
self.setStyleSheet('QWidget { background-color: #666; }') # To match the style with FindPathWidget
lay = QVBoxLayout()
lay.addWidget(findPathWidget)
lay.addWidget(self.__textBrowser)
self.setLayout(lay)
def __findClicked(self):
print('find clicked')
def __added(self, filename):
f = open(filename, 'r')
text = f.read()
f.close()
self.__textBrowser.setText(text)
if __name__ == "__main__":
import sys
app = QApplication(sys.argv)
searchMultiple = FindPathWidgetExample()
searchMultiple.show()
app.exec_()
```
Result

Mouse cursor should be next to that tooltip. Windows screenshot feature doesn't show the mouse cursor.