class TextMediaView(MediaView): def __init__(self, media, parent): super(TextMediaView, self).__init__(media, parent) self.widget = QWebEngineView(parent) self.widget.setGeometry(media['geometry']) self.set_default_widget_prop() self.widget.setDisabled(True) @Slot() def play(self): self.finished = 0 path = '%s/%s_%s_%s.html' % (self.save_dir, self.layout_id, self.region_id, self.id) self.widget.load('file:///' + path) self.widget.show() self.widget.raise_() if float(self.duration) > 0: self.play_timer.setInterval(int(float(self.duration) * 1000)) self.play_timer.start() self.started_signal.emit() @Slot() def stop(self, delete_widget=False): #---- kong ---- if not self.widget: return False super(TextMediaView, self).stop(delete_widget) return True
class WebMediaView_(MediaView): def __init__(self, media, parent): super(WebMediaView_, self).__init__(media, parent) self.widget = QWebEngineView(parent) self.widget.setGeometry(media['geometry']) self.set_default_widget_prop() self.widget.setDisabled(True) @Slot() def play(self): self.finished = 0 url = self.options['uri'] self.widget.load( QUrl.fromPercentEncoding(QByteArray(url.encode('utf-8')))) self.widget.show() self.widget.raise_() if float(self.duration) > 0: self.play_timer.setInterval(int(float(self.duration) * 1000)) self.play_timer.start() self.started_signal.emit() @Slot() def stop(self, delete_widget=False): #---- kong ---- if not self.widget: return False super(WebMediaView_, self).stop(delete_widget) return True
web = QWebEngineView() parser = argparse.ArgumentParser() parser.add_argument('X', type=int, help='1st is x') parser.add_argument('Y', type=int, help='2nd is y') parser.add_argument('W', type=int, help='3rd is w') parser.add_argument('H', type=int, help='4th is h') parser.add_argument('U', type=str, help='5th is u') arg = parser.parse_args() left = arg.X top = arg.Y width = arg.W height = arg.H url = arg.U web.setWindowFlags(Qt.FramelessWindowHint) web.setGeometry(left, top, width, height) web.setAttribute(Qt.WA_DeleteOnClose, False) web.setFocusPolicy(Qt.NoFocus) web.setContextMenuPolicy(Qt.NoContextMenu) web.setDisabled(True) web.load(url) web.show() sys.exit(app.exec_()) # # #