Saya mengalami masalah dalam mengubah ukuran bingkai berdasarkan mengklik satu tombol. Saya memiliki jendela kosong dengan satu tombol tekan bernama pushButton
di file ui saya. Saya ingin setiap kali tombol ini ditekan, dimensi MainWindow diubah, namun pengubahan ukurannya hanya terjadi satu kali. Dimensi aslinya adalah 640 kali 480.
Apa yang salah saya lakukan di fungsi run_resize
? Terima kasih!
Kodenya adalah sebagai berikut.
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.uic import loadUiType
qtCreatorFile = 'my_gui.ui'
Ui_MainWindow, QtBaseClass = loadUiType(qtCreatorFile)
class MainWindow(QMainWindow, Ui_MainWindow):
def __init__(self):
QMainWindow.__init__(self)
Ui_MainWindow.__init__(self)
self.setupUi(self)
self.setFixedSize(self.size())
self.frame = QFrame()
self.pushButton.clicked.connect(self.run_resize)
def run_resize(self):
if self.frame.height() == 480:
self.setMinimumSize(640, 150)
self.resize(640, 150)
else:
self.setMinimumSize(640, 480)
self.resize(640, 480)
if __name__ == "__main__":
app = QApplication(sys.argv)
w = main_window()
w.show()
sys.exit(app.exec_())
frame
dan Anda mengatur ukuranQMainWindow
Anda. Coba gantiif self.frame.height() == 480:
denganif self.height() == 480:
- person SyedElec   schedule 12.02.2017