pyqt help examples and some other useful objects (overloaded pyqt classes)
Project description
pyqt_templates (current v0.1.0/
)
DESCRIPTION_SHORT
pyqt help examples and some other useful objects (overloaded pyqt classes)
DESCRIPTION_LONG
Designed for ...
Features
- good template for TableView/Model/Signals
License
See the LICENSE file for license rights and limitations (MIT).
Release history
See the HISTORY.md file for release history.
Installation
pip install pyqt-templates
Import
from pyqt_templates import *
USAGE EXAMPLES
See tests, sourcecode and docstrings for other examples.
1. template-1=IMPORT_BEST.py
import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
2. template-2=QAPP_in_cls.py
import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from typing import *
# =====================================================================================================================
pass
# =====================================================================================================================
class Gui(QWidget):
TITLE: str = "[GUI] Universal"
_QAPP: QApplication = QApplication([])
def __init__(self):
super().__init__()
self.wgt_create()
self.wgt_main__apply_settings()
self.slots_connect()
# GUI SHOW ----------------------------------------------------------------------------------------------------
self.show()
exit_code = self._QAPP.exec_()
if exit_code == 0:
print(f"[OK]GUI({exit_code=})closed correctly")
else:
print(f"[FAIL]GUI({exit_code=})closed INCORRECTLY")
sys.exit(exit_code)
def wgt_main__apply_settings(self) -> None:
# MAIN WINDOW -------------------------------------------------------------------------------------------------
self.setWindowTitle(self.TITLE)
self.setMinimumSize(300, 100)
# self.setMinimumWidth(300)
# self.setMinimumHeight(100)
self.resize(300, 100)
def wgt_create(self) -> None:
# GRID --------------------------------------------------------------------------------------------------------
layout_grid = QGridLayout()
layout_grid.setSpacing(2)
layout_grid.addWidget(QLabel("STLINK"), 0, 0)
layout_grid.addWidget(QLabel("0"), 0, 1)
layout_grid.addWidget(QLabel("1"), 0, 2)
# START -------------------------------------------------------------------------------------------------------
self.btn_start = QPushButton("START")
self.btn_start.setCheckable(True)
# layout ------------------------------------------------------------------------------------------------------
layout_main = QVBoxLayout()
layout_main.addLayout(layout_grid)
layout_main.addWidget(self.btn_start)
self.setLayout(layout_main)
def slots_connect(self) -> None:
self.btn_start.toggled.connect(self.btn_toggled)
def btn_toggled(self, _state: Optional[bool] = None) -> None:
print(f"btn {_state=}")
# =====================================================================================================================
if __name__ == '__main__':
Gui()
# =====================================================================================================================
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pyqt_templates-0.1.0.tar.gz
(22.3 kB
view hashes)
Built Distribution
Close
Hashes for pyqt_templates-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fbeccd1f0fcb5433463cbeaa461d692464aafba2aee52522e03b9aec8bfd365f |
|
MD5 | 65763637c7f4269cb9d7730130afa175 |
|
BLAKE2b-256 | 2bc74624b14852fbfb90bce1ac45a31d74e010126d9abf5e0e29f59c3d1181b4 |