import sysfrom ctypes import *
fromPyQt5 import QtWidgets, QtCore, QtGuiglobal_hoverBtnglobal_propertyAnimateglobal_btnMyDiskglobal_btnTransferglobal_btnShareglobal_btnAppglobal_myDiskMainglobal_transferMainglobal_myDiskMenuglobal_transferMenu
def centerWindow( win ):
w=win.width()
h=win.height()
rect=QtWidgets.QApplication.desktop().screenGeometry(QtWidgets.QApplication.desktop().primaryScreen())
x= (rect.width() - w)/2y= (rect.height() - h)/2win.move(x,y)returndef onSwithEventDisk():
_propertyAnimate.setStartValue(_hoverBtn.geometry().left())
_propertyAnimate.setEndValue(_btnMyDisk.geometry().left()-10)
_propertyAnimate.start()
_myDiskMenu.setVisible(True)
_transferMenu.setVisible(False)
_myDiskMain.setVisible(True)
_transferMain.setVisible(False)returndef onSwithEventTransfer():
_propertyAnimate.setStartValue(_hoverBtn.geometry().left())
_propertyAnimate.setEndValue(_btnTransfer.geometry().left()-10)
_propertyAnimate.start()
_myDiskMenu.setVisible(False)
_transferMenu.setVisible(True)
_myDiskMain.setVisible(False)
_transferMain.setVisible(True)returndef onSwithEventShare():
_propertyAnimate.setStartValue(_hoverBtn.geometry().left())
_propertyAnimate.setEndValue(_btnShare.geometry().left()-10)
_propertyAnimate.start()
_myDiskMenu.setVisible(False)
_transferMenu.setVisible(True)
_myDiskMain.setVisible(False)
_transferMain.setVisible(True)returndef onSwithEventApp():
_propertyAnimate.setStartValue(_hoverBtn.geometry().left())
_propertyAnimate.setEndValue(_btnApp.geometry().left()-10)
_propertyAnimate.start()
_myDiskMenu.setVisible(False)
_transferMenu.setVisible(True)
_myDiskMain.setVisible(False)
_transferMain.setVisible(True)returndef onPressCtrl(widget, index):returndef onCloseEvent():
exit()returndef valueChanged(value):
rect=_hoverBtn.geometry()
rect.setLeft(value)
_hoverBtn.setGeometry(rect)returndef initData(_myDiskTableView, mainWindow):
_dataMyDataModel=QtGui.QStandardItemModel(mainWindow)
_myDiskTableView.setModel(_dataMyDataModel)
_dataMyDataModel.setHorizontalHeaderItem(0, QtGui.QStandardItem("file name"))
_dataMyDataModel.setHorizontalHeaderItem(1, QtGui.QStandardItem("modify time"))
_dataMyDataModel.setHorizontalHeaderItem(2, QtGui.QStandardItem("file size"))
_myDiskTableView.setColumnWidth(0, 450)
_myDiskTableView.setColumnWidth(1, 170)
_myDiskTableView.setColumnWidth(2, 170)for i in range(0,20):for j in range(0,3):
text= "item {} {}".format(i,j)
itemData=QtGui.QStandardItem(text)
_dataMyDataModel.setItem(i, j, itemData)returnll=windll.LoadLibrary
lib= ll("./UIGQtPythonWrapper.dll")
lib.initUIGears()
lib.uigSetSkinFilePath.restype=c_bool
ret= lib.uigSetSkinFilePath(b'./NetDisk/')if ret == 0:
print("Load skin flode failed.")
exit()
app=QtWidgets.QApplication(sys.argv)
mainWindowId= lib.uigCreatePageByFileName(b"Mainframe.json")
allWins=app.topLevelWidgets()if len(allWins)==0:
exit()
mainWindow= allWins[0]
closeBtn= mainWindow.findChild(QtWidgets.QPushButton, "btnClose")
ret= lib.uigCreateSubPageByFileName(mainWindowId, b"leftMenu", b"MyDiskMenu.json")if ret == 0:
print("Create left menu failed.")
exit()
ret= lib.uigCreateSubPageByFileName(mainWindowId, b"leftMenu", b"TansferMenu.json")if ret == 0:
print("Create right content failed.")
exit()
ret= lib.uigCreateSubPageByFileName(mainWindowId, b"mainContainer", b"MyDisk.json")if ret == 0:
print("Create right content failed.")
exit()
ret= lib.uigCreateSubPageByFileName(mainWindowId, b"mainContainer", b"Transfer.json")if ret == 0:
print("Create left menu failed.")
exit()
_propertyAnimate=QtCore.QVariantAnimation(mainWindow)
_propertyAnimate.setDuration(200)
_propertyAnimate.valueChanged.connect(valueChanged)
closeBtn.clicked.connect(onCloseEvent)
_leftMenu= mainWindow.findChild(QtWidgets.QWidget, "leftMenu")
_mainContainer= mainWindow.findChild(QtWidgets.QWidget, "mainContainer")
_hoverBtn= mainWindow.findChild(QtWidgets.QWidget, "hoverBtn")
_radRecent= mainWindow.findChild(QtWidgets.QRadioButton, "radRecent")
_radRecent.setChecked(True)
_radDownload= mainWindow.findChild(QtWidgets.QRadioButton, "radDownload")
_radDownload.setChecked(True)
_myDiskMenu= mainWindow.findChild(QtWidgets.QWidget, "MyDiskMenu")
_transferMenu= mainWindow.findChild(QtWidgets.QWidget, "TansferMenu")
_transferMenu.setVisible(False)
_myDiskMenu.setVisible(True)
_myDiskMain= mainWindow.findChild(QtWidgets.QWidget, "MyDiskMain")
_transferMain= mainWindow.findChild(QtWidgets.QWidget, "TransferMain")
_myDiskMain.setVisible(True)
_transferMain.setVisible(False)
_myDiskTableView= mainWindow.findChild(QtWidgets.QTableView,"myDiskData")
_transferTableView= mainWindow.findChild(QtWidgets.QTableView,"tansferData")
initData(_myDiskTableView, mainWindow)
initData(_transferTableView, mainWindow)
_btnMyDisk= mainWindow.findChild(QtWidgets.QPushButton,"btnMyDisk")
_btnTransfer= mainWindow.findChild(QtWidgets.QPushButton,"btnTransfer")
_btnShare= mainWindow.findChild(QtWidgets.QPushButton,"btnShare")
_btnApp= mainWindow.findChild(QtWidgets.QPushButton,"btnApp")
_hoverBtn= mainWindow.findChild(QtWidgets.QWidget, "hoverBtn")
_btnMyDisk.clicked.connect(onSwithEventDisk)
_btnTransfer.clicked.connect(onSwithEventTransfer)
_btnShare.clicked.connect(onSwithEventShare)
_btnApp.clicked.connect(onSwithEventApp)
centerWindow(mainWindow)
exit(app.exec_())