pyqt help examples and some other useful objects (overloaded pyqt classes)
Project description
pyqt_templates
Pyqt help examples and some other useful objects (overloaded pyqt classes).
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 and sourcecode 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.0.4.tar.gz
(12.9 kB
view hashes)
Built Distribution
Close
Hashes for pyqt_templates-0.0.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 65bf557d71ccc4c33856d90d100169eee40fa8668c55338c8b01b01019cf2c05 |
|
MD5 | d978ddbba4703716412b86abe3e4c0c4 |
|
BLAKE2b-256 | 083575d006ed289d18b0908012561ad81ee8c4a63f2cebd883a8c270ffd4e1ee |