from PyQt5.QtWidgets import * from PyQt5.QtGui import QPixmap import sys from PyQt5 import uic from PyQt5 import QtCore from functions.get_img_map import get_img_map class Window(QMainWindow): def __init__(self): super().__init__(None) uic.loadUi('window.ui', self) self.pixmap = None self.acceptDrops() self.setWindowTitle("Image") self.delta = 0.02 self.lon = 37.530887 self.lat = 55.703118 self.variant_map = "map" self.update() self.button_group = QButtonGroup() self.button_group.addButton(self.map) self.button_group.addButton(self.sat) self.button_group.addButton(self.skl) self.button_group.buttonClicked.connect(self.push_button) def keyPressEvent(self, event): try: if event.key() == QtCore.Qt.Key_PageUp: self.delta += 0.01 self.update() if event.key() == QtCore.Qt.Key_PageDown: self.delta -= 0.01 self.update() if event.key() == QtCore.Qt.Key_W: self.lat += 0.01 self.update() if event.key() == QtCore.Qt.Key_S: self.lat -= 0.01 self.update() if event.key() == QtCore.Qt.Key_A: self.lon -= 0.01 self.update() if event.key() == QtCore.Qt.Key_D: self.lon += 0.01 self.update() event.accept() except Exception as e: print(e) def update(self): get_img_map(self.delta, (self.lon, self.lat), self.variant_map) self.pixmap = QPixmap('image.png') self.label.setPixmap(self.pixmap) self.label.resize(self.pixmap.width(), self.pixmap.height()) self.show() def push_button(self, button): if button.text() == "skl": self.variant_map = "sat,skl" else: self.variant_map = button.text() self.update() App = QApplication(sys.argv) window = Window() sys.exit(App.exec())