2014-11-24 440 views
4

我有一個帶有三個框架的主窗口。頂部框架由標題組成,底部框架由頁腳組成。我使用PyQt4 designer設計了它。當我在我的筆記本電腦上運行它時,窗口看起來很好,屏幕分辨率爲1920*1080。但是當我檢查像1600*900等其他分辨率時,頁腳被切斷。我想知道是否有方法根據運行時的屏幕分辨率調整窗口大小,以便顯示所有三個幀。我試圖在網上查詢是否有任何解決方案,但找不到任何解決方案。我嘗試使用window.setGeometrywindow.setFixedSize函數,但它不起作用。如何根據屏幕分辨率使用PyQt來調整主窗口的大小

爲窗口的代碼是:

import sys 
import os 
import threading 
import smtplib 

from PyQt4 import QtCore, QtGui, uic 
import sched 
import time 

form_class = uic.loadUiType("FirstTest.ui")[0]     # Load the UI 
try: 
    _fromUtf8 = QtCore.QString.fromUtf8 
except AttributeError: 
    _fromUtf8 = lambda s: s 

class MyWindowClass(QtGui.QMainWindow, form_class): 
    def __init__(self, parent=None): 
     QtGui.QMainWindow.__init__(self, parent)   
     self.setupUi(self)   

#has some code for the field values to be shown 







app = QtGui.QApplication(sys.argv) 
myWindow = MyWindowClass(None) 
#myWindow.setFixedSize(500,500) 
myWindow.showMaximized() 
palette = QtGui.QPalette() 
palette.setColor(QtGui.QPalette.Background,QtCore.Qt.white) 
myWindow.setPalette(palette) 
myWindow.show() 
app.exec_() 

回答

4

您可以使用

showFullScreen()或只是showMaximized()

,你可以得到的屏幕幾何形狀:

desktop()screenGeometry()

+0

當我使用window.showFullScreen()時,它會彈出整個屏幕,按鈕上的關閉按鈕也會消失,並且無法關閉窗口。你能否給我一個如何使用它的例子。 – Valla 2014-11-24 16:49:18

+0

@Valla我明白了,看看我的關於showMaximized的編輯,我想這是你在找什麼。 – Chernobyl 2014-11-24 16:55:30

+0

仍然不起作用。我使用了QT4設計器來處理面板。那麼應該通過設計師本身調整窗口部件和框架寬度? – Valla 2014-11-24 17:23:12