Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from PyQt4.QtCore import *
- from PyQt4.QtGui import *
- import sys
- from ctypes import pythonapi, c_void_p, py_object, windll, cast
- from functools import partial
- import time
- class MainWindow(QWidget):
- def __init__(self, parent=None, *args):
- super(MainWindow, self).__init__()
- the2 = ['sfas', 'vdavas', 'dasf', 'tqtw', 'fdgagd']
- the = ['sfafas', 'favv', 'v', 'sacv', 'avasv']
- cmbBox = QComboBox()
- cmbBox2 = QComboBox()
- showbtn = QPushButton('open popup')
- cmbBox.insertItems(0, the)
- cmbBox2.insertItems(0, the2)
- layout = QVBoxLayout()
- layout.addWidget(cmbBox)
- layout.addWidget(cmbBox2)
- layout.addWidget(showbtn)
- self.setLayout(layout)
- self.setWindowFlags(Qt.WindowStaysOnTopHint)
- showbtn.clicked.connect(partial(self.showCmbBoxPopup, cmbBox2))
- def showCmbBoxPopup(self, cmbbox):
- cmbbox.showPopup()
- class MyWorkerThread(QThread):
- def __init__(self, app):
- super(MyWorkerThread, self).__init__(app)
- self.app = app
- def run(self):
- self.timer= QTimer()
- print self.timer.thread()
- # self.timer.setSingleShot(False)
- self.timer.timeout.connect(self.doWork)
- self.timer.start(3000)
- self.exec_()
- def doWork(self):
- print "Work!"
- # this method runs once every length of the interval defined.
- for widget in self.app.topLevelWidgets():
- comboboxes = widget.findChildren(QComboBox)
- # print comboboxes
- if not widget.isVisible():
- widget.show()
- for cmbbox in comboboxes:
- cmbbox.showPopup()
- cmbbox.hidePopup()
- else:
- widget.hide()
- for cmbbox in comboboxes:
- cmbbox.showPopup()
- cmbbox.hidePopup()
- def main():
- app = QApplication(sys.argv)
- a = MyWorkerThread(app)
- a.start()
- w = MainWindow()
- w.show()
- app.exec_()
- if __name__ == "__main__":
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement