我们从Python开源项目中,提取了以下42个代码示例,用于说明如何使用PyQt4.QtGui.QDesktopWidget()。
def centerUI(self): frame = self.frameGeometry() center = QtGui.QDesktopWidget().availableGeometry().center() frame.moveCenter(center) self.move(frame.topLeft()) # Eventually change this so the window appears IF there are scheduled/running tasks/unsaved profiles # Note: First argument ties the message box to the parent, MainWin (I think?)
def center(self): frame = self.frameGeometry() centerPoint = QtGui.QDesktopWidget().availableGeometry().center() frame.moveCenter(centerPoint) self.move(frame.topLeft()) #self.move(frame.topRight())
def __init__(self, parent=None): QtGui.QMainWindow.__init__(self, parent) self.setWindowTitle(u'?????') self.resize(700, 650) self.setWindowIcon(QtGui.QIcon('icons/logo.ico')) screen = QtGui.QDesktopWidget().screenGeometry() size = self.geometry() self.move((screen.width()-size.width())/2, (screen.height()-size.height())/2) self.initUI()
def __init__(self, parent=None): QtGui.QDialog.__init__(self, parent) self.resize(500, 200) self.setWindowTitle(u'???????') screen = QtGui.QDesktopWidget().screenGeometry() size = self.geometry() self.move((screen.width()-size.width())/2, (screen.height()-size.height())/2) self.initUI() self.show()
def __init__(self, parent=None): QtGui.QDialog.__init__(self, parent) self.resize(500, 600) self.setWindowTitle(u'???????') screen = QtGui.QDesktopWidget().screenGeometry() size = self.geometry() self.move((screen.width()-size.width())/2, (screen.height()-size.height())/2) self.initUI() self.show()
def __init__(self, parent=None): QtGui.QDialog.__init__(self, parent) self.resize(300, 100) self.setWindowTitle(u'???') screen = QtGui.QDesktopWidget().screenGeometry() size = self.geometry() self.move((screen.width()-size.width())/2, (screen.height()-size.height())/2) self.initUI() self.show()
def center(self): screen = QtGui.QDesktopWidget().screenGeometry() size = self.geometry() self.move((screen.width() - size.width()) / 2, (screen.height() - size.height()) / 2)
def __init__(self, parent, image_pixmap): super(ImagePopup, self).__init__(parent) uic.loadUi(ComicTaggerSettings.getUIFile('imagepopup.ui' ), self) QtGui.QApplication.setOverrideCursor(QtGui.QCursor(QtCore.Qt.WaitCursor)) #self.setWindowModality(QtCore.Qt.WindowModal) self.setWindowFlags(QtCore.Qt.Popup) self.setWindowState(QtCore.Qt.WindowFullScreen) self.imagePixmap = image_pixmap screen_size = QtGui.QDesktopWidget().screenGeometry() self.resize(screen_size.width(), screen_size.height()) self.move( 0, 0) # This is a total hack. Uses a snapshot of the desktop, and overlays a # translucent screen over it. Probably can do it better by setting opacity of a # widget self.desktopBg = QtGui.QPixmap.grabWindow(QtGui.QApplication.desktop ().winId(), 0,0, screen_size.width(), screen_size.height()) bg = QtGui.QPixmap(ComicTaggerSettings.getGraphic('popup_bg.png')) self.clientBgPixmap = bg.scaled(screen_size.width(), screen_size.height()) self.setMask(self.clientBgPixmap.mask()) self.applyImagePixmap() self.showFullScreen() self.raise_( ) QtGui.QApplication.restoreOverrideCursor()
def setAppPosition( self ): if self.settings.last_main_window_width != 0: self.move( self.settings.last_main_window_x, self.settings.last_main_window_y ) self.resize( self.settings.last_main_window_width, self.settings.last_main_window_height ) else: screen = QtGui.QDesktopWidget().screenGeometry() size = self.frameGeometry() self.move((screen.width()-size.width())/2, (screen.height()-size.height())/2)
def centerWindowOnScreen( window ): """ Center the window on screen. This implemention will handle the window being resized or the screen resolution changing. """ # Get the current screens' dimensions... screen = QtGui.QDesktopWidget().screenGeometry() # ... and get this windows' dimensions mysize = window.geometry() # The horizontal position is calulated as screenwidth - windowwidth /2 hpos = ( screen.width() - window.width() ) / 2 # And vertical position the same, but with the height dimensions vpos = ( screen.height() - window.height() ) / 2 # And the move call repositions the window window.move(hpos, vpos)
def set_stuff(self, grid, widths, heights, i): if widths[1] > 0: grid.setColumnMinimumWidth(0, widths[0] + 10) grid.setColumnMinimumWidth(1, widths[1] + 10) i += 1 if isinstance(self.anobject, str): quit = QtGui.QPushButton('Close', self) width = quit.fontMetrics().boundingRect('Close').width() + 10 quit.setMaximumWidth(width) else: quit = QtGui.QPushButton('Quit', self) grid.addWidget(quit, i + 1, 0) quit.clicked.connect(self.quitClicked) self.setLayout(grid) screen = QtGui.QDesktopWidget().availableGeometry() h = heights * i if h > screen.height(): if sys.platform == 'win32' or sys.platform == 'cygwin': pct = 0.85 else: pct = 0.90 h = int(screen.height() * pct) self.resize(widths[0] + widths[1] + 40, h) if self.title is None: self.setWindowTitle('?') else: self.setWindowTitle(self.title)
def centerOnScreen(self): # center the widget on the screen resolution = QtGui.QDesktopWidget().screenGeometry() self.move((resolution.width() / 2) - (self.frameSize().width() / 2), (resolution.height() / 2) - (self.frameSize().height() / 2))
def show_Window(self): screen = QtGui.QDesktopWidget().screenGeometry() size = self.geometry() self.move((screen.width()-size.width())/2, (screen.height()-size.height())/2) self.table_hosts.setColumnWidth(0,150) self.table_hosts.setColumnWidth(1,150) self.table_hosts.setColumnWidth(2,200) self.show() self.tray_icon()
def center_widget(widget): """Center the given wiget (e. g., QMainWindow or QDialog). Taken from http://stackoverflow.com/questions/20243637/pyqt4-center_widget-window-on-active-screen) """ frameGm = widget.frameGeometry() centerPoint = QtGui.QDesktopWidget().availableGeometry().center() frameGm.moveCenter(centerPoint) widget.move(frameGm.topLeft())
def center(self): qr = self.frameGeometry() cp = QtGui.QDesktopWidget().availableGeometry().center() qr.moveCenter(cp) self.move(qr.topLeft())
def init_ui(self): cameraDevice = CameraDevice(mirrored=True,parent=self) self.cameraWidget = CameraWidget(cameraDevice,self) self.cameraWidget.show() # Ajusta a posicao da camera para o centro da janela self.cameraWidget.move(QtGui.QApplication.desktop().screen().rect().center() - self.cameraWidget.rect().center()) # Ajusta a janela para o tamanho da tela do computador resolution = QtGui.QDesktopWidget().screenGeometry() self.setGeometry(0, 0, resolution.width(), resolution.height()) # TODO: Melhorar o layout dos botoes menuContainer = QtGui.QWidget(self) menuContainer.setMinimumSize(320,40) menuLayout = QtGui.QHBoxLayout() ############# captureButton = QtGui.QPushButton("Capturar") captureButton.setMinimumSize(50,40) captureButton.clicked.connect(self._clickedCapture) spacer = QtGui.QSpacerItem(20, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum) menuLayout.addWidget(captureButton) menuLayout.addSpacerItem(spacer) menuContainer.setLayout(menuLayout) menuContainer.show() ############# self.show()
def initRegionViewer(self) : screen = QtGui.QDesktopWidget() second_screen = screen.screenGeometry(0) self.regionViewer = RegionViewer(self) self.regionViewer.move(second_screen.left(), second_screen.top())
def center_window(window): """Center a window on the screen.""" s = QDesktopWidget().screenGeometry() g = window.geometry() window.move((s.width() - g.width()) // 2, (s.height() - g.height()) // 2)
def _check_window_size(self): """Checks screen size to make sure window fits in the screen. """ desktop = QtGui.QDesktopWidget() screensize = desktop.availableGeometry() width = screensize.width() height = screensize.height() min_pixel_size = 1080 if (width <= min_pixel_size or height <= min_pixel_size): self.showMaximized()
def centerOnScreen(self): resolution = QtGui.QDesktopWidget().screenGeometry() self.move((resolution.width() / 2) - (self.frameSize().width() / 2), (resolution.height() / 2) - (self.frameSize().height() / 2))
def __init__(self, year, zone, solar_dir, wind_dir, tgt_dir, fmat, wrap, coords, return_code, output): super(RptDialog, self).__init__() self.parms = [str(year), str(zone), wrap, fmat, tgt_dir, solar_dir, wind_dir] if wrap == 'y': wrapy = 'Yes' else: wrapy = 'No' max_line = 0 self.lines = 'Parameters:\n Year: %s\n Wrap year: %s\n Time Zone: %s\n Output Format: %s\n' \ % (year, wrapy, zone, fmat) if fmat != 'srw': self.lines += ' Solar Files: %s\n' % solar_dir self.lines += ' Wind Files: %s\n' % wind_dir self.lines += ' Target Folder: %s\n' % tgt_dir if coords != '': self.lines += ' Coordinates: %s\n' % coords self.lines += 'Return Code:\n %s\n' % return_code self.lines += 'Output:\n' self.lines += output lenem = self.lines.split('\n') line_cnt = len(lenem) for i in range(line_cnt): max_line = max(max_line, len(lenem[i])) del lenem QtGui.QDialog.__init__(self) self.saveButton = QtGui.QPushButton(self.tr('&Save')) self.cancelButton = QtGui.QPushButton(self.tr('Cancel')) buttonLayout = QtGui.QHBoxLayout() buttonLayout.addStretch(1) buttonLayout.addWidget(self.saveButton) buttonLayout.addWidget(self.cancelButton) self.connect(self.saveButton, QtCore.SIGNAL('clicked()'), self, QtCore.SLOT('accept()')) self.connect(self.cancelButton, QtCore.SIGNAL('clicked()'), self, QtCore.SLOT('reject()')) self.widget = QtGui.QTextEdit() self.widget.setFont(QtGui.QFont('Courier New', 11)) fnt = self.widget.fontMetrics() ln = (max_line + 5) * fnt.maxWidth() ln2 = (line_cnt + 2) * fnt.height() screen = QtGui.QDesktopWidget().availableGeometry() if ln > screen.width() * .67: ln = int(screen.width() * .67) if ln2 > screen.height() * .67: ln2 = int(screen.height() * .67) self.widget.setSizePolicy(QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)) self.widget.resize(ln, ln2) self.widget.setPlainText(self.lines) layout = QtGui.QVBoxLayout() layout.addWidget(self.widget) layout.addLayout(buttonLayout) self.setLayout(layout) self.setWindowTitle('SIREN - Output from makeweather2') size = self.geometry() self.setGeometry(1, 1, ln + 10, ln2 + 35) size = self.geometry() self.move((screen.width() - size.width()) / 2, (screen.height() - size.height()) / 2) self.widget.show()
def __init__(self, year, zone, src_dir, tgt_dir, fmat, coords, return_code, output): super(RptDialog, self).__init__() self.parms = [str(year), str(zone), fmat, tgt_dir, src_dir] max_line = 0 self.lines = 'Parameters:\n Year: %s\n Time Zone: %s\n Input Format: %s\n' % \ (year, zone, fmat) self.lines += ' Rainfall Files: %s\n' % src_dir self.lines += ' Target Folder: %s\n' % tgt_dir if coords != '': self.lines += ' Coordinates: %s\n' % coords self.lines += 'Return Code:\n %s\n' % return_code self.lines += 'Output:\n' self.lines += output lenem = self.lines.split('\n') line_cnt = len(lenem) for i in range(line_cnt): max_line = max(max_line, len(lenem[i])) del lenem QtGui.QDialog.__init__(self) self.saveButton = QtGui.QPushButton(self.tr('&Save')) self.cancelButton = QtGui.QPushButton(self.tr('Cancel')) buttonLayout = QtGui.QHBoxLayout() buttonLayout.addStretch(1) buttonLayout.addWidget(self.saveButton) buttonLayout.addWidget(self.cancelButton) self.connect(self.saveButton, QtCore.SIGNAL('clicked()'), self, QtCore.SLOT('accept()')) self.connect(self.cancelButton, QtCore.SIGNAL('clicked()'), self, QtCore.SLOT('reject()')) self.widget = QtGui.QTextEdit() self.widget.setFont(QtGui.QFont('Courier New', 11)) fnt = self.widget.fontMetrics() ln = (max_line + 5) * fnt.maxWidth() ln2 = (line_cnt + 2) * fnt.height() screen = QtGui.QDesktopWidget().availableGeometry() if ln > screen.width() * .67: ln = int(screen.width() * .67) if ln2 > screen.height() * .67: ln2 = int(screen.height() * .67) self.widget.setSizePolicy(QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)) self.widget.resize(ln, ln2) self.widget.setPlainText(self.lines) layout = QtGui.QVBoxLayout() layout.addWidget(self.widget) layout.addLayout(buttonLayout) self.setLayout(layout) self.setWindowTitle('SIREN - Output from makerainfall2') size = self.geometry() self.setGeometry(1, 1, ln + 10, ln2 + 35) size = self.geometry() self.move((screen.width() - size.width()) / 2, (screen.height() - size.height()) / 2) self.widget.show()
def initUI(self): fields = [] label = [] self.edit = [] self.field_type = [] metrics = [] widths = [0, 0] heights = 0 i = -1 grid = QtGui.QGridLayout() self.web = QtGui.QTextEdit() if os.path.exists(self.anobject): htf = open(self.anobject, 'r') html = htf.read() htf.close() self.web.setHtml(QtCore.QString(html)) else: html = self.anobject if self.anobject[:5] == '<html': self.anobject = self.anobject.replace('[VERSION]', credits.fileVersion()) self.web.setHtml(QtCore.QString(self.anobject)) else: self.web.setPlainText(QtCore.QString(self.anobject)) metrics.append(self.web.fontMetrics()) try: widths[0] = metrics[0].boundingRect(self.web.text()).width() heights = metrics[0].boundingRect(self.web.text()).height() except: bits = html.split('\n') for lin in bits: if len(lin) > widths[0]: widths[0] = len(lin) heights = len(bits) fnt = self.web.fontMetrics() widths[0] = (widths[0]) * fnt.maxWidth() heights = (heights) * fnt.height() screen = QtGui.QDesktopWidget().availableGeometry() if widths[0] > screen.width() * .67: heights = int(heights / .67) widths[0] = int(screen.width() * .67) self.web.setReadOnly(True) i = 1 grid.addWidget(self.web, 0, 0) self.set_stuff(grid, widths, heights, i) QtGui.QShortcut(QtGui.QKeySequence('q'), self, self.quitClicked)
def __init__(self, year, zone, solar_dir, wind_dir, tgt_dir, fmat, wrap, coords, return_code, output): super(RptDialog, self).__init__() self.parms = [str(year), str(zone), wrap, fmat, tgt_dir, solar_dir, wind_dir] if wrap == 'y': wrapy = 'Yes' else: wrapy = 'No' max_line = 0 self.lines = 'Parameters:\n Year: %s\n Wrap year: %s\n Time Zone: %s\n Output Format: %s\n' \ % (year, wrapy, zone, fmat) if fmat != 'srw': self.lines += ' Solar Files: %s\n' % solar_dir self.lines += ' Wind Files: %s\n' % wind_dir self.lines += ' Target Folder: %s\n' % tgt_dir if coords != '': self.lines += ' Coordinates: %s\n' % coords self.lines += 'Return Code:\n %s\n' % return_code self.lines += 'Output:\n' self.lines += output lenem = self.lines.split('\n') line_cnt = len(lenem) for i in range(line_cnt): max_line = max(max_line, len(lenem[i])) del lenem QtGui.QDialog.__init__(self) self.saveButton = QtGui.QPushButton(self.tr('&Save')) self.cancelButton = QtGui.QPushButton(self.tr('Cancel')) buttonLayout = QtGui.QHBoxLayout() buttonLayout.addStretch(1) buttonLayout.addWidget(self.saveButton) buttonLayout.addWidget(self.cancelButton) self.connect(self.saveButton, QtCore.SIGNAL('clicked()'), self, QtCore.SLOT('accept()')) self.connect(self.cancelButton, QtCore.SIGNAL('clicked()'), self, QtCore.SLOT('reject()')) self.widget = QtGui.QTextEdit() self.widget.setFont(QtGui.QFont('Courier New', 11)) fnt = self.widget.fontMetrics() ln = (max_line + 5) * fnt.maxWidth() ln2 = (line_cnt + 2) * fnt.height() screen = QtGui.QDesktopWidget().availableGeometry() if ln > screen.width() * .67: ln = int(screen.width() * .67) if ln2 > screen.height() * .67: ln2 = int(screen.height() * .67) self.widget.setSizePolicy(QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)) self.widget.resize(ln, ln2) self.widget.setPlainText(self.lines) layout = QtGui.QVBoxLayout() layout.addWidget(self.widget) layout.addLayout(buttonLayout) self.setLayout(layout) self.setWindowTitle('makeweatherfiles - Output') size = self.geometry() self.setGeometry(1, 1, ln + 10, ln2 + 35) size = self.geometry() self.move((screen.width() - size.width()) / 2, (screen.height() - size.height()) / 2) self.widget.show()
def __init__(self, in_file, parent=None): self.in_file = in_file try: s = open(self.in_file, 'r').read() bits = s.split('\n') ln = 0 for lin in bits: if len(lin) > ln: ln = len(lin) ln2 = len(bits) except: if self.in_file[self.in_file.rfind('.'):] == '.ini': s = '' else: s = '' ln = 36 ln2 = 5 QtGui.QDialog.__init__(self, parent) self.saveButton = QtGui.QPushButton(self.tr('&Save')) self.cancelButton = QtGui.QPushButton(self.tr('Cancel')) buttonLayout = QtGui.QHBoxLayout() buttonLayout.addStretch(1) buttonLayout.addWidget(self.saveButton) buttonLayout.addWidget(self.cancelButton) self.connect(self.saveButton, QtCore.SIGNAL('clicked()'), self, QtCore.SLOT('accept()')) self.connect(self.cancelButton, QtCore.SIGNAL('clicked()'), self, QtCore.SLOT('reject()')) self.widget = QtGui.QPlainTextEdit() highlight = inisyntax.IniHighlighter(self.widget.document()) if sys.platform == 'linux2': self.widget.setFont(QtGui.QFont('Ubuntu Mono 13', 12)) else: self.widget.setFont(QtGui.QFont('Courier New', 12)) fnt = self.widget.fontMetrics() ln = (ln + 5) * fnt.maxWidth() ln2 = (ln2 + 4) * fnt.height() screen = QDesktopWidget().availableGeometry() if ln > screen.width() * .67: ln = int(screen.width() * .67) if ln2 > screen.height() * .67: ln2 = int(screen.height() * .67) self.widget.resize(ln, ln2) self.widget.setPlainText(s) layout = QtGui.QVBoxLayout() layout.addWidget(self.widget) layout.addLayout(buttonLayout) self.setLayout(layout) self.setWindowTitle('SIREN - Edit - ' + self.in_file[self.in_file.rfind('/') + 1:]) size = self.geometry() self.setGeometry(1, 1, ln + 10, ln2 + 35) size = self.geometry() self.move((screen.width() - size.width()) / 2, (screen.height() - size.height()) / 2) self.widget.show()
def init_display(self, backend_str=None, size=(1024, 768)): global display, start_display, app, _, USED_BACKEND if not backend_str: USED_BACKEND = self.get_backend() elif backend_str in [ 'pyside', 'pyqt4']: USED_BACKEND = backend_str else: raise ValueError("You should pass either 'qt' or 'tkinter' to the init_display function.") sys.exit(1) # Qt based simple GUI if USED_BACKEND in ['pyqt4', 'pyside']: if USED_BACKEND == 'pyqt4': from PyQt4 import QtCore, QtGui, QtOpenGL from OCC.Display.pyqt4Display import qtViewer3d elif USED_BACKEND == 'pyside': from PySide import QtCore, QtGui, QtOpenGL from OCC.Display.pysideDisplay import qtViewer3d self.ui.modelTab = qtViewer3d(self) # self.ui.model2dTab = qtViewer3d(self) self.setWindowTitle("Osdag-%s 3d viewer ('%s' backend)" % (VERSION, USED_BACKEND)) self.ui.mytabWidget.resize(size[0], size[1]) self.ui.mytabWidget.addTab(self.ui.modelTab, "") # self.ui.mytabWidget.addTab(self.ui.model2dTab,"") self.ui.modelTab.InitDriver() display = self.ui.modelTab._display # display_2d = self.ui.model2dTab._display # background gradient display.set_bg_gradient_color(23, 1, 32, 23, 1, 32) # display_2d.set_bg_gradient_color(255,255,255,255,255,255) # display black trihedron display.display_trihedron() display.View.SetProj(1, 1, 1) def centerOnScreen(self): '''Centers the window on the screen.''' resolution = QtGui.QDesktopWidget().screenGeometry() self.move((resolution.width() / 2) - (self.frameSize().width() / 2), (resolution.height() / 2) - (self.frameSize().height() / 2)) def start_display(): self.ui.modelTab.raise_() # self.ui.model2dTab.raise_() # make the application float to the top return display, start_display