Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yjg30737/pyqt-moving-label
PyQt label which is moving from left to right
https://github.com/yjg30737/pyqt-moving-label
pyqt pyqt-examples pyqt-gui pyqt-tutorial pyqt5 qlabel qpropertyanimation qt qt5
Last synced: about 5 hours ago
JSON representation
PyQt label which is moving from left to right
- Host: GitHub
- URL: https://github.com/yjg30737/pyqt-moving-label
- Owner: yjg30737
- License: mit
- Created: 2022-05-30T10:00:19.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-05-30T23:58:52.000Z (over 2 years ago)
- Last Synced: 2024-11-08T09:27:05.625Z (about 2 months ago)
- Topics: pyqt, pyqt-examples, pyqt-gui, pyqt-tutorial, pyqt5, qlabel, qpropertyanimation, qt, qt5
- Language: Python
- Homepage:
- Size: 16.6 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# pyqt-moving-label
PyQt label which is moving from left to right## Requirements
* PyQt5 >= 5.8## Setup
`python -m pip install pyqt-moving-label`## Detailed Description
This inherits the QLabel.Good to use as an advertisement or notice tool.
You can create constructor like this - `MovingLabel('Moving Label', parent_class)`. Both two arguments are necessary.
Moving duration is set to 3000 milliseconds by default.
### Method Overview
* `setDurationBasedOnWindowSize(f: bool)` - Set the duration based on window size. If you set this to `True`, The window gets bigger the moving speed gets faster. The window gets smaller the moving speed gets slower.
* `setDuration(milliseconds: int)` - Set the duration of label moving from left to right.## Example
Code Sample
```python
from PyQt5.QtWidgets import QMainWindow, QApplication, QVBoxLayout, QTextEdit, QWidget
from pyqt_moving_label.movingLabel import MovingLabelclass MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.__initUi()def __initUi(self):
self.__label = MovingLabel('Moving Label', self)
# if you want to set the dynamic moving speed based on window size
# self.__label.setDurationBasedOnWindowSize(True)
# if you want to set the duration
# self.__label.setDuration(5000)lay = QVBoxLayout()
lay.addWidget(self.__label)
lay.addWidget(QTextEdit())mainWidget = QWidget()
mainWidget.setLayout(lay)self.setCentralWidget(mainWidget)
if __name__ == "__main__":
import sysapp = QApplication(sys.argv)
w = MainWindow()
w.show()
sys.exit(app.exec_())
```Result
https://user-images.githubusercontent.com/55078043/170969527-91c80a06-b6eb-4aaf-a305-421479bd7139.mp4