def export(self, filename=None, add_margin=False): pw = QPdfWriter(filename) dpi = int(QApplication.primaryScreen().logicalDotsPerInch()) pw.setResolution(dpi) pw.setPageMargins(QMarginsF(0, 0, 0, 0)) size = QPageSize(self.getTargetRect().size()) pw.setPageSize(size) painter = QPainter(pw) try: self.setExportMode( True, { 'antialias': True, 'background': self.background, 'painter': painter }) painter.setRenderHint(QPainter.Antialiasing, True) painter.setRenderHint(QPainter.LosslessImageRendering, True) source_rect = self.getSourceRect() if add_margin: source_rect.setWidth(source_rect.width() + 25) self.getScene().render(painter, QRectF(self.getTargetRect()), QRectF(source_rect)) finally: self.setExportMode(False) painter.end()
import sys from PySide6.QtGui import QIcon from PySide6.QtWidgets import QApplication from ayoshalat import AyoShalat import os import pathlib from pprint import pprint if __name__ == "__main__": app = QApplication([]) window = AyoShalat() # set window in center of screen # window.setGeometry(app.primaryScreen().geometry().getRect().) screen = app.primaryScreen().geometry().getRect() win = window.geometry().getRect() window.setGeometry((screen[2] / 2) - (win[2] / 2), (screen[3] / 2) - (win[3] / 2), 0, 0) start_in_tray = 'False' # open app setting try: current_directory = str(pathlib.Path(__file__).parent.absolute()) setting_file = current_directory + '/setting.txt' fileob = open(setting_file, 'r') setting_lines = fileob.readlines() start_in_tray = setting_lines[0].split(':')[1].strip() # if open_in_tray == 'False':
def center(self): screen_center = QScreen.availableGeometry( QApplication.primaryScreen()).center() self_geometry = self.frameGeometry() self_geometry.moveCenter(screen_center) self.move(self_geometry.topLeft())
#------------------------------------------------------------------------------------------ #------------------------------------------------------------------------------------------ #------------------------------------------------------------------------------------------ STYLESHEET = """ QWidget { background-color: #2F2F2F; color: white; font-family: "Calibri"; } QTextEdit { border: 1px solid #92B4A7; background-color: grey; color: #2F2F2F; } QPushButton { min-height: 30px; } """ if __name__ == "__main__": app = QApplication(sys.argv) app.setStyleSheet(STYLESHEET) window = CsgoBindGenerator() window.show() center = QScreen.availableGeometry(QApplication.primaryScreen()).center() geo = window.frameGeometry() geo.moveCenter(center) window.move(geo.topLeft()) sys.exit(app.exec_())
def _move_to_top_right(self): tr = QScreen.availableGeometry(QApplication.primaryScreen()).topRight() geo = self.frameGeometry() geo.moveTopRight(tr - QtCore.QPoint(10, -10)) self.move(geo.topLeft())