[英]How do I call to a method?
我不知道如何制作一個通用的實用程序文件並使用其中的方法。
以下是一個示例實用程序文件,它將窗口置於屏幕中心:
class center():
fg = self.frameGeometry()
cs = QtGui.QDesktopWidget().availableGeometry().center()
fg.moveCenter(cs)
self.move(fg.topLeft())
這是一個示例UI:
import os, sys
import puppetUtils
from PyQt4 import QtCore, QtGui
class puppetUI(QtGui.QMainWindow):
def __init__(self):
QtGui.QMainWindow.__init__(self)
self.setWindowTitle('Puppet')
self.setObjectName('PuppetMainWindow')
self.resize(1280, 720)
puppetUtils.center(self)
self.show()
app = QtGui.QApplication(sys.argv)
window = puppetUI()
sys.exit(app.exec_())
調用puppetUtils.center的正確方法是什么? 我用Google搜索了很多方法,但它只是不起作用。 這是一個例子 - 其中一個例子,我用它來擁有我的應用程序功能而不需要在各個類中復制/粘貼函數等。
我需要實現的其他代碼:
def mouseMoveEvent(self, event):
#create the mouse 'Grab & Move'
if self.moving: self.move(event.globalPos()-self.offset)
def mousePressEvent(self, event):
if event.button() == QtCore.Qt.LeftButton:
self.moving = True; self.offset = event.pos()
def mouseReleaseEvent(self, event):
if event.button() == QtCore.Qt.LeftButton:
self.moving = False
首先,改變
class center():
至
def center(var):
因為你實際上是在嘗試定義一個實用函數,所以它應該是def
而不是class
。
然后在center
函數內部,將self
改為var
(或者你想要命名的函數參數)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.