You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Information_Management_System/src/qt/findpath_UI.py

234 lines
11 KiB

# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'findpath_UI.ui'
#
# Created by: PyQt5 UI code generator 5.15.4
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again. Do not edit this file unless you know what you are doing.
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtCore import QTimer
from PyQt5.QtMultimediaWidgets import QVideoWidget
from PyQt5.QtMultimedia import QMediaContent, QMediaPlayer
from PyQt5.QtWidgets import QFileDialog
class Ui_MainWindow1(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.resize(1262, 867)
self.centralwidget = QtWidgets.QWidget(MainWindow)
self.centralwidget.setObjectName("centralwidget")
#设置左侧工具栏
self.vedio_control_bar = QtWidgets.QFrame(self.centralwidget)
self.vedio_control_bar.setGeometry(QtCore.QRect(370, 770, 421, 70))
self.vedio_control_bar.setStyleSheet("QPushButton{\n"
" border:none\n"
"}")
self.vedio_control_bar.setFrameShape(QtWidgets.QFrame.StyledPanel)
self.vedio_control_bar.setFrameShadow(QtWidgets.QFrame.Raised)
self.vedio_control_bar.setObjectName("vedio_control_bar")
self.horizontalLayout = QtWidgets.QHBoxLayout(self.vedio_control_bar)
self.horizontalLayout.setObjectName("horizontalLayout")
#设置快退按钮
self.vedio_back = QtWidgets.QPushButton(self.vedio_control_bar)
self.vedio_back.setMinimumSize(QtCore.QSize(50, 50))
self.vedio_back.setMaximumSize(QtCore.QSize(50, 50))
self.vedio_back.setText("")
icon = QtGui.QIcon()
icon.addPixmap(QtGui.QPixmap("window_png/快退.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
self.vedio_back.setIcon(icon)
self.vedio_back.setIconSize(QtCore.QSize(50, 50))
self.vedio_back.setObjectName("vedio_back")
self.horizontalLayout.addWidget(self.vedio_back)
#设置播放按钮
self.vedio_play = QtWidgets.QPushButton(self.vedio_control_bar)
self.vedio_play.setMinimumSize(QtCore.QSize(50, 50))
self.vedio_play.setMaximumSize(QtCore.QSize(50, 50))
self.vedio_play.setText("")
icon1 = QtGui.QIcon()
icon1.addPixmap(QtGui.QPixmap("window_png/播放.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
self.vedio_play.setIcon(icon1)
self.vedio_play.setIconSize(QtCore.QSize(50, 50))
self.vedio_play.setObjectName("vedio_play")
self.horizontalLayout.addWidget(self.vedio_play)
#设置快进按钮
self.vedio_forward = QtWidgets.QPushButton(self.vedio_control_bar)
self.vedio_forward.setMinimumSize(QtCore.QSize(50, 50))
self.vedio_forward.setMaximumSize(QtCore.QSize(50, 50))
self.vedio_forward.setText("")
icon2 = QtGui.QIcon()
icon2.addPixmap(QtGui.QPixmap("window_png/快进.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
self.vedio_forward.setIcon(icon2)
self.vedio_forward.setIconSize(QtCore.QSize(50, 50))
self.vedio_forward.setObjectName("vedio_forward")
self.horizontalLayout.addWidget(self.vedio_forward)
self.widget = QVideoWidget(self.centralwidget)
self.widget.setGeometry(QtCore.QRect(10, 20, 1191, 691))
self.widget.setObjectName("widget")
#设置进度条窗口
self.Progress_bar = QtWidgets.QFrame(self.centralwidget)
self.Progress_bar.setGeometry(QtCore.QRect(10, 710, 1201, 61))
self.Progress_bar.setFrameShape(QtWidgets.QFrame.StyledPanel)
self.Progress_bar.setFrameShadow(QtWidgets.QFrame.Raised)
self.Progress_bar.setObjectName("Progress_bar")
#设置进度条控件
self.sld_duration = QtWidgets.QSlider(self.Progress_bar)
self.sld_duration.setGeometry(QtCore.QRect(20, 20, 1051, 22))
self.sld_duration.setOrientation(QtCore.Qt.Horizontal)
self.sld_duration.setObjectName("sld_duration")
self.sld_duration.setEnabled(True)
#设置显示时间控件
self.lab_duration = QtWidgets.QLabel(self.Progress_bar)
self.lab_duration.setGeometry(QtCore.QRect(1100, 20, 81, 21))
font = QtGui.QFont()
font.setFamily("微软雅黑")
font.setPointSize(13)
font.setBold(False)
font.setWeight(50)
font.setStyleStrategy(QtGui.QFont.PreferAntialias)
self.lab_duration.setFont(font)
self.lab_duration.setStyleSheet("QLabel\n"
"{\n"
" color:white\n"
"}")
self.lab_duration.setObjectName("lab_duration")
MainWindow.setCentralWidget(self.centralwidget)
self.statusbar = QtWidgets.QStatusBar(MainWindow)
self.statusbar.setObjectName("statusbar")
MainWindow.setStatusBar(self.statusbar)
self.toolBar = QtWidgets.QToolBar(MainWindow)
self.toolBar.setIconSize(QtCore.QSize(40, 40))
self.toolBar.setObjectName("toolBar")
MainWindow.addToolBar(QtCore.Qt.LeftToolBarArea, self.toolBar)
#设置添加文件按钮
self.actionl1 = QtWidgets.QAction(MainWindow)
icon3 = QtGui.QIcon()
icon3.addPixmap(QtGui.QPixmap("window_png/添加文件.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
self.actionl1.setIcon(icon3)
self.actionl1.setObjectName("actionl1")
#设置路径分析按钮
self.actionl1_2 = QtWidgets.QAction(MainWindow)
icon4 = QtGui.QIcon()
icon4.addPixmap(QtGui.QPixmap("window_png/路径分析-2.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
self.actionl1_2.setIcon(icon4)
self.actionl1_2.setObjectName("actionl1_2")
self.toolBar.addAction(self.actionl1)
self.toolBar.addAction(self.actionl1_2)
self.vedio_bar = QtWidgets.QFrame(self.centralwidget)
self.vedio_bar.setGeometry(QtCore.QRect(800, 770, 150, 70))
self.vedio_control_bar.setStyleSheet("QPushButton{\n"
" border:none\n"
"}")
self.vedio_bar.setFrameShape(QtWidgets.QFrame.StyledPanel)
self.vedio_bar.setFrameShadow(QtWidgets.QFrame.Raised)
self.vedio_bar.setObjectName("vedio_bar")
#设置音量调节进度条
self.sld = QtWidgets.QSlider(self.vedio_bar)
self.sld.setGeometry(QtCore.QRect(50, 20, 50, 30))
self.sld.setOrientation(QtCore.Qt.Horizontal)
self.sld.setObjectName("sld")
self.sld.setEnabled(True)
self.lab = QtWidgets.QLabel(self.vedio_bar)
self.lab.setGeometry(QtCore.QRect(100, 20, 40, 30))
font = QtGui.QFont()
font.setFamily("微软雅黑")
font.setPointSize(13)
font.setBold(False)
font.setWeight(50)
font.setStyleStrategy(QtGui.QFont.PreferAntialias)
self.lab_duration.setFont(font)
self.lab_duration.setStyleSheet("QLabel\n"
"{\n"
" color:white\n"
"}")
self.lab.setObjectName("lab")
self.vedio_voice = QtWidgets.QPushButton(self.vedio_bar)
self.vedio_voice.setEnabled(False)
self.vedio_voice.move(0, 10)
self.vedio_voice.setMinimumSize(QtCore.QSize(50, 50))
self.vedio_voice.setMaximumSize(QtCore.QSize(50, 50))
self.vedio_voice.setText("")
icon9 = QtGui.QIcon()
icon9.addPixmap(QtGui.QPixmap("window_png/音量.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
self.vedio_voice.setIcon(icon9)
self.vedio_voice.setIconSize(QtCore.QSize(50, 50))
self.vedio_voice.setObjectName("vedio_voice")
self.retranslateUi(MainWindow)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
#设置槽函数
self.player = QMediaPlayer()
self.player.setVideoOutput(self.widget)
#设置时间函数
self.timer = QTimer()
self.timer.start(1000)
self.timer.timeout.connect(lambda: self.onTimerOut())
self.actionl1.triggered.connect(lambda: self.openfile())
self.vedio_play.clicked.connect(lambda: self.playpause())
self.vedio_forward.clicked.connect(lambda: self.uptime())
self.vedio_back.clicked.connect(lambda: self.downtime())
self.sld_duration.sliderMoved.connect(lambda: self.changetime())
self.sld.sliderMoved.connect(lambda: self.changevoice())
#点击添加文件事件
def openfile(self):
media_list = QMediaContent(QFileDialog.getOpenFileUrl()[0])
self.player.setMedia(media_list)
self.player.play()
self.player.pause()
#点击视频停止事件
def playpause(self):
if self.player.state() == 1:
self.player.pause()
icon9 = QtGui.QIcon()
icon9.addPixmap(QtGui.QPixmap("window_png/播放.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
self.vedio_play.setIcon(icon9)
self.vedio_play.setIconSize(QtCore.QSize(50, 50))
else:
self.player.play()
icon9 = QtGui.QIcon()
icon9.addPixmap(QtGui.QPixmap("window_png/暂停.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
self.vedio_play.setIcon(icon9)
self.vedio_play.setIconSize(QtCore.QSize(50, 50))
#设置时间函数
def onTimerOut(self):
alltime = self.player.duration()
ms = self.player.position()
minutes = int(ms / 60000)
seconds = int((ms - minutes * 60000) / 1000)
minute = int(alltime / 60000)
sec = int((alltime - minute * 60000) / 1000)
self.lab_duration.setText('{}:{}/{}:{}'.format(minutes, seconds, minute, sec))
self.sld_duration.setMaximum(alltime)
self.sld_duration.setValue(ms)
self.sld.setValue(self.player.volume())
self.lab.setText('{}%'.format(self.player.volume()))
#设置快进事件
def uptime(self):
num = self.player.position() + int(self.player.duration() / 20)
self.player.setPosition(num)
#设置快退事件
def downtime(self):
num = self.player.position() - int(self.player.duration() / 20)
self.player.setPosition(num)
#设置鼠标改变进度条事件
def changetime(self):
self.timer.stop()
num = self.sld_duration.value()
self.player.setPosition(num)
self.timer.start()
#设置鼠标改变声音事件
def changevoice(self):
num = self.sld.value()
self.player.setVolume(num)
def retranslateUi(self, MainWindow):
_translate = QtCore.QCoreApplication.translate
MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
self.lab_duration.setText(_translate("MainWindow", "----/----"))
self.toolBar.setWindowTitle(_translate("MainWindow", "toolBar"))
self.actionl1.setText(_translate("MainWindow", "添加文件"))
self.actionl1_2.setText(_translate("MainWindow", "开始分析"))