def __init__(self, parent, node):
super(NodeMonitorWidget, self).__init__(parent)
self.setTitle('Online nodes (double click for more options)')
self._node = node
self.on_info_window_requested = lambda *_: None
self._status_update_timer = QTimer(self)
self._status_update_timer.setSingleShot(False)
self._status_update_timer.timeout.connect(self._update_status)
self._status_update_timer.start(500)
self._table = NodeTable(self, node)
self._table.info_requested.connect(self._show_info_window)
self._monitor_handle = self._table.monitor.add_update_handler(lambda _: self._update_status())
self._status_label = QLabel(self)
vbox = QVBoxLayout(self)
vbox.addWidget(self._table)
vbox.addWidget(self._status_label)
self.setLayout(vbox)
python类QTimer()的实例源码
def __init__( self, parent=None, cancel=True ):
super().__init__( parent )
self.buttons = QtWidgets.QDialogButtonBox()
self.ok_button = self.buttons.addButton( self.buttons.Ok )
if cancel:
self.buttons.addButton( self.buttons.Cancel )
self.buttons.accepted.connect( self.accept )
self.buttons.rejected.connect( self.reject )
self.grid_layout = WbFeedbackGridLayout()
self.setLayout( self.grid_layout )
# Often the rest of init has to be done after the widgets are rendered
# for example to set focus on a widget
self.__timer_init = QtCore.QTimer()
self.__timer_init.timeout.connect( self.__completeInit )
self.__timer_init.setSingleShot( True )
self.__timer_init.start( 0 )
def setScreenshotTimer(widget, filename, width = 720, hight = 480):
widget.move(100, 50)
if width and hight:
widget.resize(width, hight)
widget.show()
scrTimer = QTimer(widget)
scrTimer.setInterval(1000)
scrTimer.setSingleShot(True)
scrTimer.timeout.connect(lambda: takeScreenshot(filename))
quitTimer = QTimer(widget)
quitTimer.setInterval(1500)
quitTimer.setSingleShot(True)
quitTimer.timeout.connect(widget.close)
scrTimer.start()
quitTimer.start()
qapp.exec_()
def __init__(self,parent = None):
super(clWin,self).__init__(parent)
self.setupUi(self)
self.rooms = {}
self.show()
self.clientSock = clientSock
self.hostUserNo = hostUserNo
self.hostUserName = hostUserName
self.hostMacAdress = hostMacAdress
# refresh timer to update list
self.refreshTimer = QtCore.QTimer(self)
self.refreshTimer.setInterval(10000)
#connections
self.refreshButton.clicked.connect(self.sendRefresh)
self.roomButton.clicked.connect(self.makeRoom)
self.exitButton.clicked.connect(self.close)
self.refreshTimer.timeout.connect(self.sendRefresh)
def __init__( self, app, debug_fn, parent=None ):
self.app = app
self.log = self.app.log
self.debugLog = app.debug_options.debugLogMainWindow
super().__init__( parent )
self.icon_size = QtCore.QSize( 32, 32 )
# list of all the WbActionState for the menus and toolbars
self.__action_state_manager = WbActionStateManager( self.debugLog )
self.__focus_is_in = self.focus_is_in_names[0]
# Often the rest of init has to be done after the widgets are rendered
# for example to set focus on a widget
self.__timer_init = QtCore.QTimer()
self.__timer_init.timeout.connect( self.__completeInit )
self.__timer_init.setSingleShot( True )
self.__timer_init.start( 0 )
def schedule(task, delay=10):
"""Delay execution of `task` by `delay` milliseconds
As opposed to a plain `QTimer.singleShot`, this will also
ensure that only one task is ever queued at any one time.
"""
try:
self._current_task.stop()
except AttributeError:
# No task currently running
pass
timer = QtCore.QTimer()
timer.setSingleShot(True)
timer.timeout.connect(task)
timer.start(delay)
self._current_task = timer
def shutdown(self, *args):
if self.closing:
return
self.closing = True
global bitmaskd
bitmaskd.join()
if os.path.isfile(pid):
with open(pid) as f:
pidno = int(f.read())
print('[bitmask] terminating bitmaskd...')
os.kill(pidno, signal.SIGTERM)
print('[bitmask] shutting down gui...')
try:
self.stop()
try:
global pixbrowser
pixbrowser.stop()
del pixbrowser
except:
pass
QtCore.QTimer.singleShot(0, qApp.deleteLater)
except Exception as ex:
print('exception catched: %r' % ex)
sys.exit(1)
def __init__(self, *args, **kwargs):
super(FileWatch, self).__init__(*args, **kwargs)
self.filePath = ""
self.lastEdited = 0
self.fileContent = ""
self.propertiesWidget = QWidget()
self.vlayout = QVBoxLayout()
self.lineEdit = QLineEdit()
self.lineEdit.textChanged.connect(self.lineEditTextChanges)
self.vlayout.addWidget(self.lineEdit)
self.vlayout.addItem(QSpacerItem(40, 20, QSizePolicy.Minimum, QSizePolicy.Expanding))
self.propertiesWidget.setLayout(self.vlayout)
self.timer = QTimer()
self.timer.timeout.connect(self.checkFileChange)
self.timer.start(200)
def __init__(self, parent):
self.parent = parent
self.workerAccepted = False # Whether or not the worker accepted the controller
self.workerTreeItem = QTreeWidgetItem()
self.monitorState = {}
self.inbuf = ""
self.connection = None
self.requestJar = {}
# Refresh monitors every 5 seconds
self.monitorTimer = QTimer()
self.monitorTimer.timeout.connect(self.requestMonitors)
self.monitorTimer.start(5000)
#
self.errorIcon = QIcon("resources/icons/exclamation.png")
def __init__(self, workerDockWidget, sheethandler):
self.workerDockWidget = workerDockWidget
self.sheethandler = sheethandler
self.connections = {}
self.currentWorker = None
self.currentMonitor = None
self.lastItemClicked = None
self.workerDockWidget.workerTree.itemClicked.connect(self.itemClicked)
self.workerDockWidget.newConnButton.clicked.connect(self.buttonClicked)
self.workerDockWidget.startRepeatButton.clicked.connect(self.startRepeatClicked)
self.workerDockWidget.stopButton.clicked.connect(self.stopClicked)
self.timer = QTimer()
self.timer.timeout.connect(self.tick)
self.timer.start(20)
def __init__(self):
QWidget.__init__(self)
self.resize(1600, 940)
self.setWindowTitle('OpenVR tracking data')
self.webview = QWebEngineView()
self.button = QPushButton('Quit', self)
self.button.clicked.connect(self.close)
layout = QVBoxLayout(self)
layout.setSpacing(0)
# layout.setMargin(0)
layout.addWidget(self.button)
layout.addWidget(self.webview)
# XXX check result
openvr.init(openvr.VRApplication_Scene)
poses_t = openvr.TrackedDevicePose_t * openvr.k_unMaxTrackedDeviceCount
self.poses = poses_t()
self.timer = QTimer()
self.timer.timeout.connect(self.update_page)
self.timer.start(50) # ms
def __init__(self, parent=None, flags=Qt.Dialog | Qt.FramelessWindowHint):
super(VCProgressBar, self).__init__(parent, flags)
self.parent = parent
self.setWindowModality(Qt.ApplicationModal)
self.setStyleSheet('QDialog { border: 2px solid #000; }')
self._progress = QProgressBar(self)
self._progress.setRange(0, 0)
self._progress.setTextVisible(False)
self._progress.setStyle(QStyleFactory.create('Fusion'))
self._label = QLabel(self)
self._label.setAlignment(Qt.AlignCenter)
layout = QGridLayout()
layout.addWidget(self._progress, 0, 0)
layout.addWidget(self._label, 0, 0)
self._timerprefix = QLabel('<b>Elapsed time:</b>', self)
self._timerprefix.setObjectName('progresstimer')
self._timervalue = QLabel(self)
self._timervalue.setObjectName('progresstimer')
timerlayout = QHBoxLayout()
timerlayout.addWidget(self._timerprefix)
timerlayout.addWidget(self._timervalue)
self._timerwidget = QWidget(self)
self._timerwidget.setLayout(timerlayout)
self._timerwidget.hide()
self._time = QTime()
self._timer = QTimer(self)
self._timer.timeout.connect(self.updateTimer)
self.setLayout(layout)
self.setFixedWidth(550)
def __init__(self, edges):
super().__init__()
if edges == 5:
self.axis = 25
else:
self.axis = 20
self.healthBar = HealthBar(1000, 2 * self.axis, self.axis + 5)
self.edges = edges
self.constructPolygon()
self.setRotation(random.random() * 360)
self.rotationAngle = random.random() * 2 - 1
self.rotationTimer = QTimer(self)
self.rotationTimer.timeout.connect(self.rotate)
self.rotationTimer.start(25)
self.setZValue(1)
def setup_globals(
self, parent, uiwidget=None, hm=None, tmp=None, logr=None,
scw=None, sch=None):
global ui, TMPDIR, home, logger, MainWindow, screen_width
global screen_height
ui = uiwidget
TMPDIR = tmp
home = hm
logger = logr
MainWindow = parent
screen_width = scw
screen_height = sch
ui.total_seek = 0
self.arrow_timer = QtCore.QTimer()
self.arrow_timer.timeout.connect(self.arrow_hide)
self.arrow_timer.setSingleShot(True)
self.mplayer_OsdTimer = QtCore.QTimer()
self.mplayer_OsdTimer.timeout.connect(self.osd_hide)
self.mplayer_OsdTimer.setSingleShot(True)
self.seek_timer = QtCore.QTimer()
self.seek_timer.timeout.connect(self.seek_mplayer)
self.seek_timer.setSingleShot(True)
def qmsg_message(txt):
print(txt)
#root = tkinter.Tk()
#width = root.winfo_screenwidth()
#height = root.winfo_screenheight()
#print(width, height, '--screen--tk--')
msg = QtWidgets.QMessageBox()
msg.setGeometry(0, 0, 50, 20)
#msg.setWindowFlags(QtCore.Qt.Window | QtCore.Qt.FramelessWindowHint)
msg.setWindowModality(QtCore.Qt.NonModal)
msg.setWindowTitle("Kawaii-Player MessageBox")
msg.setIcon(QtWidgets.QMessageBox.Information)
msg.setText(txt+'\n\n(Message Will Autohide in 5 seconds)')
msg.show()
frame_timer = QtCore.QTimer()
frame_timer.timeout.connect(lambda x=0: frame_options(msg))
frame_timer.setSingleShot(True)
frame_timer.start(5000)
msg.exec_()
def __init__(self, parent, ui=None, logr=None, tmp=None):
super(PlayerWidget, self).__init__(parent)
global MainWindow, logger, TMPDIR
self.cycle_pause = 0
self.ui = ui
MainWindow = parent
logger = logr
TMPDIR = tmp
self.mpvplayer = None
self.player_val = None
self.ui.total_seek = 0
self.dblclk = False
self.arrow_timer = QtCore.QTimer()
self.arrow_timer.timeout.connect(self.arrow_hide)
self.arrow_timer.setSingleShot(True)
self.mplayer_OsdTimer = QtCore.QTimer()
self.mplayer_OsdTimer.timeout.connect(self.osd_hide)
self.mplayer_OsdTimer.setSingleShot(True)
self.seek_timer = QtCore.QTimer()
self.seek_timer.timeout.connect(self.seek_mplayer)
self.seek_timer.setSingleShot(True)
def handleConnect(self):
if self.connectionError:
return
global hostUserName
name = self.userName.text()
self.userName.clear()
if(name):
print("UserNameEntered = ",name)
try:
funcs.send_message(clientSock,0,hostMacAdress+','+name)
uno , fno , size = funcs.recieve_header(clientSock)
reply = funcs.recieve_message(clientSock,size)
self.serverStatus.setText(reply)
print(reply)
if reply[0] == 'C':
uno , fno , size = funcs.recieve_header(clientSock)
hostUserName = name
hostUserNo = uno
QtCore.QTimer.singleShot(200,self.close)
except(ConnectionError):
self.appName.setText("Cannot Connect, press Exit to Exit")
self.connectionError = True
else:
self.serverStatus.setText("Enter a valid name")
def keyPressEvent(self, event):
if type(event) == QtGui.QKeyEvent:
if event.text()=="f":
self.showFullScreen()
if event.text()=="r":
if self.timer==None:
self.start_rotate()
else:
self.timer.stop()
self.timer=None
if event.text()=="z":
if self.timer==None:
self.start_rotate()
if self.viewpoint.zoom>-40:
self.viewpoint.zoom =-400
self.timer=QTimer()
self.timer.timeout.connect(self.fzoom_timer)
self.timer.start(50)
else:
self.timer.stop()
self.timer=None
def init_timer(self):
self.interval_timer = 10
self.timer = QTimer()
self.timer.timeout.connect(self.update_time_elapsed)
self.hours_elapsed = 0
self.mins_elapsed = 0
self.segs_elapsed = 0
self.msegs_elapsed = 0
self.lbl_time_elapsed = QLabel()
self.update_timer_elapsed()
self.lbl_time_elapsed.setFixedSize(QSize(100, 30))
self.lbl_time_elapsed.setStyleSheet("""
color: white;
background-color: #080f1c;
""")
self.layout_timer.addWidget(self.lbl_time_elapsed)
self.layout_timer.addStretch(-1)
def __init__(self):
conf = Config.Config().conf
self.dataset_type = conf["type"]#????????
self.span = conf["guide_config"]["span"]#???????
self.interval = conf["guide_config"]["interval"]#????
self.gesture_type = conf["guide_config"]["gestures"][0]#??????g12??1-12??????
self.repeat_times = len(conf["guide_config"]["gestures"])#???????
self.capture_timer = QTimer()#capture????
self.rest_timer = QTimer()#rest????
self.state = -1 #??????0??capture,1??rest,2?????????3????????,-1??????????
self.current_times = 0 #???????
self.RestTime = self.interval/1000
self.CaptureTime = self.span/1000
self.spacing = 100
self.dataPath = conf["capture_config"]["path"]
self.videoPath = conf["capture_config"]["video_path"]
def __init__(self, parent=None):
super().__init__()
self.parent = parent
self.player = QMediaPlayer()
self.player.setVolume(int(settings().value("Player/volume") or 100))
self.player.setVideoOutput(self)
self.timer = QTimer(self)
self.timer.timeout.connect(self.timerPos)
self.player.currentMediaChanged.connect(self.signalStart)
self.player.currentMediaChanged.connect(self.parent.subtitleitem.subtitleControl)
self.player.currentMediaChanged.connect(self.videoConfigure)
"""self.player.mediaStatusChanged.connect(self.metadata)
def metadata(self, data):
if data and self.player.isMetaDataAvailable():
print(self.player.metaData("VideoCodec"))"""
def __init__(self, parent=None):
super(Lighting, self).__init__(parent)
self.angle = 0.0
self.m_scene = QGraphicsScene()
self.m_lightSource = None
self.m_items = []
self.setScene(self.m_scene)
self.setupScene()
timer = QTimer(self)
timer.timeout.connect(self.animate)
timer.setInterval(30)
timer.start()
self.setRenderHint(QPainter.Antialiasing)
self.setFrameStyle(QFrame.NoFrame)
def initializeAudio(self):
self.m_pullTimer = QTimer(self, timeout=self.pullTimerExpired)
self.m_pullMode = True
self.m_format = QAudioFormat()
self.m_format.setSampleRate(self.DataSampleRateHz)
self.m_format.setChannelCount(1)
self.m_format.setSampleSize(16)
self.m_format.setCodec('audio/pcm')
self.m_format.setByteOrder(QAudioFormat.LittleEndian)
self.m_format.setSampleType(QAudioFormat.SignedInt)
info = QAudioDeviceInfo(QAudioDeviceInfo.defaultOutputDevice())
if not info.isFormatSupported(self.m_format):
qWarning("Default format not supported - trying to use nearest")
self.m_format = info.nearestFormat(self.m_format)
self.m_generator = Generator(self.m_format,
self.DurationSeconds * 1000000, self.ToneSampleRateHz, self)
self.createAudioOutput()
def __init__(self):
super(Window, self).__init__()
self.setWindowTitle("2D Painting on Native and OpenGL Widgets")
helper = Helper()
native = Widget(helper, self)
openGL = GLWidget(helper, self)
nativeLabel = QLabel("Native")
nativeLabel.setAlignment(Qt.AlignHCenter)
openGLLabel = QLabel("OpenGL")
openGLLabel.setAlignment(Qt.AlignHCenter)
layout = QGridLayout()
layout.addWidget(native, 0, 0)
layout.addWidget(openGL, 0, 1)
layout.addWidget(nativeLabel, 1, 0)
layout.addWidget(openGLLabel, 1, 1)
self.setLayout(layout)
timer = QTimer(self)
timer.timeout.connect(native.animate)
timer.timeout.connect(openGL.animate)
timer.start(50)
def __init__(self, parent=None):
super(ShapedClock, self).__init__(parent,
Qt.FramelessWindowHint | Qt.WindowSystemMenuHint)
timer = QTimer(self)
timer.timeout.connect(self.update)
timer.start(1000)
quitAction = QAction("E&xit", self, shortcut="Ctrl+Q",
triggered=QApplication.instance().quit)
self.addAction(quitAction)
self.setContextMenuPolicy(Qt.ActionsContextMenu)
self.setToolTip("Drag the clock with the left mouse button.\n"
"Use the right mouse button to open a context menu.")
self.setWindowTitle(self.tr("Shaped Analog Clock"))
def __init__(self):
self.anki = AnkiBridge()
self.server = AjaxServer(self.handler)
try:
self.server.listen()
self.timer = QTimer()
self.timer.timeout.connect(self.advance)
self.timer.start(TICK_INTERVAL)
except:
QMessageBox.critical(
self.anki.window(),
'AnkiConnect',
'Failed to listen on port {}.\nMake sure it is available and is not in use.'.format(NET_PORT)
)
def __init__(self, parent=None):
super(Lighting, self).__init__(parent)
self.angle = 0.0
self.m_scene = QGraphicsScene()
self.m_lightSource = None
self.m_items = []
self.setScene(self.m_scene)
self.setupScene()
timer = QTimer(self)
timer.timeout.connect(self.animate)
timer.setInterval(30)
timer.start()
self.setRenderHint(QPainter.Antialiasing)
self.setFrameStyle(QFrame.NoFrame)
def initializeAudio(self):
self.m_pullTimer = QTimer(self, timeout=self.pullTimerExpired)
self.m_pullMode = True
self.m_format = QAudioFormat()
self.m_format.setSampleRate(self.DataSampleRateHz)
self.m_format.setChannelCount(1)
self.m_format.setSampleSize(16)
self.m_format.setCodec('audio/pcm')
self.m_format.setByteOrder(QAudioFormat.LittleEndian)
self.m_format.setSampleType(QAudioFormat.SignedInt)
info = QAudioDeviceInfo(QAudioDeviceInfo.defaultOutputDevice())
if not info.isFormatSupported(self.m_format):
qWarning("Default format not supported - trying to use nearest")
self.m_format = info.nearestFormat(self.m_format)
self.m_generator = Generator(self.m_format,
self.DurationSeconds * 1000000, self.ToneSampleRateHz, self)
self.createAudioOutput()
def __init__(self):
super(Window, self).__init__()
self.setWindowTitle("2D Painting on Native and OpenGL Widgets")
helper = Helper()
native = Widget(helper, self)
openGL = GLWidget(helper, self)
nativeLabel = QLabel("Native")
nativeLabel.setAlignment(Qt.AlignHCenter)
openGLLabel = QLabel("OpenGL")
openGLLabel.setAlignment(Qt.AlignHCenter)
layout = QGridLayout()
layout.addWidget(native, 0, 0)
layout.addWidget(openGL, 0, 1)
layout.addWidget(nativeLabel, 1, 0)
layout.addWidget(openGLLabel, 1, 1)
self.setLayout(layout)
timer = QTimer(self)
timer.timeout.connect(native.animate)
timer.timeout.connect(openGL.animate)
timer.start(50)
def __init__(self, parent=None):
super(ShapedClock, self).__init__(parent,
Qt.FramelessWindowHint | Qt.WindowSystemMenuHint)
timer = QTimer(self)
timer.timeout.connect(self.update)
timer.start(1000)
quitAction = QAction("E&xit", self, shortcut="Ctrl+Q",
triggered=QApplication.instance().quit)
self.addAction(quitAction)
self.setContextMenuPolicy(Qt.ActionsContextMenu)
self.setToolTip("Drag the clock with the left mouse button.\n"
"Use the right mouse button to open a context menu.")
self.setWindowTitle(self.tr("Shaped Analog Clock"))