17
README.md
|
@ -43,8 +43,9 @@
|
|||
- [1.30 左侧选项卡](左侧选项卡/)
|
||||
- [1.40 探测窗口和放大截图](探测窗口和放大截图/)
|
||||
- [1.41 消息对话框倒计时关闭](消息对话框倒计时关闭/)
|
||||
|
||||
|
||||
- 1.42 悬浮下拉菜单
|
||||
- [1. tableWidget形式](partner_625781186/5.hoverMenu)
|
||||
|
||||
### [2.QGraphicsView练习](QGraphicsView练习/)
|
||||
- [2.1 世界地图](QGraphicsView练习/世界地图)
|
||||
- [2.2 添加QWidget](QGraphicsView练习/添加QWidget.py)
|
||||
|
@ -66,12 +67,24 @@
|
|||
- [4.9 水波纹进度条](界面美化/水波纹进度条)
|
||||
- [4.10 QSlider美化](界面美化/QSlider美化)
|
||||
|
||||
|
||||
|
||||
### [5.动画特效](动画特效/)
|
||||
- [5.1 淡入淡出](动画特效/淡入淡出.py)
|
||||
|
||||
|
||||
### [6.QML](partner_625781186/QML_QtQuick_PY)
|
||||
- [python_QML调用基础](partner_625781186/QML_QtQuick_PY/python_QML调用基础)
|
||||
- QWidget窗体中嵌入qml界面
|
||||
- [QDialog中嵌入qml窗体并缩放](partner_625781186/QML_QtQuick_PY/QDialog中嵌入qml窗体并缩放)
|
||||
- [QQmlApplicationEngine之qml嵌入qtwidget_qt5.8以上](partner_625781186/QML_QtQuick_PY/QQmlApplicationEngine之qml嵌入qtwidget_qt5.8以上)
|
||||
|
||||
|
||||
# QQ群
|
||||
- [PyQt & PySide](https://jq.qq.com/?_wv=1027&k=50LWvn9)
|
||||
- [PyQt学习互助](https://jq.qq.com/?_wv=1027&k=5QVVEdF)
|
||||
- [PyQt5小组](https://jq.qq.com/?_wv=1027&k=5cI3oRz)
|
||||
|
||||
|
||||
# [Donate-打赏](Donate/)
|
||||
|
||||
|
|
215
partner_625781186/5.hoverMenu/BaseElement.py
Normal file
|
@ -0,0 +1,215 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
'''
|
||||
description: 抽象类模块
|
||||
|
||||
Created on 2018年7月7日
|
||||
|
||||
email: 625781186@qq.com
|
||||
|
||||
'''
|
||||
from PyQt5 import QtGui, QtWidgets, QtCore
|
||||
from PyQt5.QtCore import *
|
||||
from PyQt5.QtGui import *
|
||||
from PyQt5.QtWidgets import *
|
||||
|
||||
import traceback, sip
|
||||
|
||||
class SingeleWidget(QWidget):
|
||||
'''
|
||||
菜单条的每个框。
|
||||
'''
|
||||
#1
|
||||
def __init__(self, parent=None):
|
||||
'''
|
||||
_hideFlag__Button: 0 表明没有显示弹窗;1表示显示了弹窗。
|
||||
'''
|
||||
super(SingeleWidget, self).__init__(parent)
|
||||
|
||||
self._hideFlag__Button = 0
|
||||
self.m_menu = QWidget()
|
||||
self.setProperty("WID", "isTrue")
|
||||
self.setAttribute(Qt.WA_StyledBackground, True)
|
||||
print("W实例化")
|
||||
# self.setMaximumWidth(80)
|
||||
def _creatMenu(self, L_Name, parent):
|
||||
'''
|
||||
Main.py中被调用。把LX类实例化。
|
||||
'''
|
||||
# self.m_menu = L1(parent)
|
||||
print(L_Name, parent)
|
||||
self.m_menu = L_Name(parent)
|
||||
|
||||
def enterEvent(self, e):
|
||||
'''鼠标移入label后 , _hideFlag__Button=1,表明显示了弹窗。'''
|
||||
#设置菜单窗体的宽度
|
||||
self.m_menu.setMinimumWidth(self.width())
|
||||
self.m_menu.setMaximumWidth(self.width())
|
||||
|
||||
#我靠!
|
||||
a0 = self.mapToGlobal( QPoint( self.parent().x() , self.height()) )
|
||||
|
||||
self.m_menu.move(a0)
|
||||
|
||||
#设置table外容器的宽度
|
||||
if self.m_menu.tableWidget.rowCount()!=0:
|
||||
table = self.m_menu.tableWidget
|
||||
height = table.rowCount()*30
|
||||
table.parent().setMinimumHeight(height)
|
||||
table.parent().setMaximumHeight(height)
|
||||
# table.setMinimumHeight(height)
|
||||
# table.setMaximumHeight(height)
|
||||
self.m_menu.show()
|
||||
|
||||
#表明显示了弹窗
|
||||
self._hideFlag__Button = 1
|
||||
|
||||
def leaveEvent(self, e):
|
||||
'''
|
||||
离开时判断是否显示了窗体,80ms后发射到_jugement去检测。
|
||||
'''
|
||||
if self._hideFlag__Button==1: #显示了窗体
|
||||
QTimer.singleShot(80, self._jugement)
|
||||
|
||||
def _jugement(self):
|
||||
'''
|
||||
离开上面窗体之后80ms, 1:进入旁边的菜单框;2:进入弹出的菜单。
|
||||
'''
|
||||
if self.m_menu._hideFlag__Menu!=1:
|
||||
self.m_menu.hide()
|
||||
self.m_menu.close()
|
||||
self._hideFlag__Button=0
|
||||
else:
|
||||
pass
|
||||
|
||||
|
||||
|
||||
#========================================================
|
||||
class BaseMenuWidget(QWidget):
|
||||
#2
|
||||
'''
|
||||
下拉菜单的基类。 被LX继承,父类在18L 实现。
|
||||
'''
|
||||
def __init__(self, parent=None):
|
||||
'''
|
||||
_hideFlag__Menu: 0时隐藏,1时显示;
|
||||
'''
|
||||
|
||||
super(BaseMenuWidget, self).__init__(parent)
|
||||
#无边框,隐藏任务栏;
|
||||
self.setWindowFlags( Qt.FramelessWindowHint|Qt.Tool|Qt.Widget)
|
||||
self.setupUi(self)
|
||||
self._hideFlag__Menu = 0
|
||||
print("L实例化")
|
||||
|
||||
def enterEvent(self, e):
|
||||
#表明进入了弹窗
|
||||
self._hideFlag__Menu=1
|
||||
|
||||
def leaveEvent(self, e):
|
||||
self._hideFlag__Menu=0
|
||||
self.hide()
|
||||
for i in self.children():
|
||||
if isinstance(i, BaseTable):#判断对象是否是tablewiget, 是则隐藏选中item颜色
|
||||
i.clearSelection()
|
||||
|
||||
def _showSomething(self, **kwgs):
|
||||
MW = self.parent()
|
||||
|
||||
if MW.objectName()=="MainWindow":
|
||||
|
||||
try:
|
||||
# MW.Buttom_Vbox.setParent(None)#这是个严重的问题,如果用这个函数会造成78L无法成功
|
||||
_parent=MW.Buttom_Vbox.parent()#获取下面窗体对象的指针
|
||||
|
||||
# ! 目前的安排是离开当前页则释放对象 , 要求页面数据不需要保留才可以。
|
||||
for obj in _parent.children():
|
||||
print(obj)
|
||||
sip.delete(obj)
|
||||
|
||||
MW.Buttom_Vbox = QtWidgets.QVBoxLayout(_parent)
|
||||
MW.Buttom_Vbox.setContentsMargins(0, 0, 0, 0)
|
||||
MW.Buttom_Vbox.setSpacing(0)
|
||||
MW.Buttom_Vbox.setObjectName("Buttom_Vbox")
|
||||
|
||||
except:
|
||||
showERROR()
|
||||
|
||||
# elif msg==QMessageBox.No:
|
||||
# pass
|
||||
# else:
|
||||
# showERROR()
|
||||
def _deleteSomething(self):
|
||||
pass
|
||||
#====================================================
|
||||
class BaseButton(QPushButton):
|
||||
#1
|
||||
'''
|
||||
主菜单的按钮的样式。
|
||||
'''
|
||||
def __init__(self, parent=None):
|
||||
|
||||
super(BaseButton, self).__init__(parent)
|
||||
|
||||
# self.setMinimumWidth(50)
|
||||
# self.setMaximumWidth(80)
|
||||
|
||||
self.setMaximumWidth(80)
|
||||
self.setMinimumHeight(self.width())#保证是个正方形
|
||||
self.setFocusPolicy(Qt.NoFocus)#无焦点,防止背景卡色
|
||||
self.setFlat(True)#无凸起阴影
|
||||
|
||||
self.clicked.connect(self._todo)
|
||||
|
||||
self.png = QLabel(self)
|
||||
print("B实例化")
|
||||
|
||||
def _todo(self, *args, **kwgs):
|
||||
'''
|
||||
每个按钮要重新实现的功能函数。
|
||||
'''
|
||||
pass
|
||||
|
||||
def _createLabel(self, path):
|
||||
'''
|
||||
path:主菜单图标的路径。
|
||||
'''
|
||||
self.png.resize(self.size())
|
||||
self.png_pixmap = QPixmap(path)
|
||||
self.png.setPixmap(self.png_pixmap)
|
||||
self.png.setScaledContents(True)
|
||||
pass
|
||||
def resizeEvent(self, e):
|
||||
self.setMinimumHeight(self.width())
|
||||
self.png.resize(self.size())
|
||||
|
||||
#==================================================
|
||||
class BaseTable(QTableWidget):
|
||||
#3
|
||||
'''
|
||||
下拉菜单中Table的样式。
|
||||
'''
|
||||
def __init__(self, parent=None):
|
||||
super(BaseTable, self).__init__(parent)
|
||||
|
||||
self.horizontalHeader().setSectionResizeMode(3)#列宽设置
|
||||
|
||||
self.horizontalHeader().setStretchLastSection(True); #充满列宽
|
||||
|
||||
self.verticalHeader().setSectionResizeMode(1)#行高设置
|
||||
|
||||
self.verticalHeader().setStretchLastSection(True); #充满行高
|
||||
|
||||
self.setEditTriggers(QAbstractItemView.NoEditTriggers); #只读
|
||||
|
||||
self.itemClicked.connect(self.parent()._showSomething)#Go 66L;
|
||||
|
||||
#关闭滑动条
|
||||
self.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
|
||||
self.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
|
||||
|
||||
print("T实例化")
|
||||
|
||||
def showERROR():
|
||||
errmsg = traceback.format_exc()
|
||||
QMessageBox.warning(QWidget(), '请确认', errmsg,
|
||||
QMessageBox.Ok)
|
14
partner_625781186/5.hoverMenu/CommonHelper.py
Normal file
|
@ -0,0 +1,14 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
'''
|
||||
读取CSS用模块。
|
||||
'''
|
||||
class CommonHelper :
|
||||
|
||||
def __init__(self ) :
|
||||
pass
|
||||
|
||||
@staticmethod
|
||||
def readQss( style):
|
||||
with open( style , 'r') as f:
|
||||
return f.read()
|
||||
|
|
@ -0,0 +1,268 @@
|
|||
<!DOCTYPE html>
|
||||
<html><head>
|
||||
<title>5.hoverMenu.BaseElement</title>
|
||||
<meta charset="UTF-8">
|
||||
<style>
|
||||
body {
|
||||
background: #EDECE6;
|
||||
margin: 0em 1em 10em 1em;
|
||||
color: black;
|
||||
}
|
||||
|
||||
h1 { color: white; background: #85774A; }
|
||||
h2 { color: white; background: #85774A; }
|
||||
h3 { color: white; background: #9D936E; }
|
||||
h4 { color: white; background: #9D936E; }
|
||||
|
||||
a { color: #BA6D36; }
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body><a NAME="top" ID="top"></a>
|
||||
<h1>5.hoverMenu.BaseElement</h1>
|
||||
<p>
|
||||
description: 抽象类模块
|
||||
</p><p>
|
||||
Created on 2018年7月7日
|
||||
</p><p>
|
||||
email: 625781186@qq.com
|
||||
</p>
|
||||
<h3>Global Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Classes</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#BaseButton">BaseButton</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#BaseMenuWidget">BaseMenuWidget</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#BaseTable">BaseTable</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#SingeleWidget">SingeleWidget</a></td>
|
||||
<td>菜单条的每个框。</td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Functions</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#showERROR">showERROR</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<hr /><hr />
|
||||
<a NAME="BaseButton" ID="BaseButton"></a>
|
||||
<h2>BaseButton</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
QPushButton
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#BaseButton.__init__">BaseButton</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#BaseButton._createLabel">_createLabel</a></td>
|
||||
<td>path:主菜单图标的路径。</td>
|
||||
</tr><tr>
|
||||
<td><a href="#BaseButton._todo">_todo</a></td>
|
||||
<td>每个按钮要重新实现的功能函数。</td>
|
||||
</tr><tr>
|
||||
<td><a href="#BaseButton.resizeEvent">resizeEvent</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="BaseButton.__init__" ID="BaseButton.__init__"></a>
|
||||
<h4>BaseButton (Constructor)</h4>
|
||||
<b>BaseButton</b>(<i>parent=None</i>)
|
||||
<a NAME="BaseButton._createLabel" ID="BaseButton._createLabel"></a>
|
||||
<h4>BaseButton._createLabel</h4>
|
||||
<b>_createLabel</b>(<i>path</i>)
|
||||
<p>
|
||||
path:主菜单图标的路径。
|
||||
</p><a NAME="BaseButton._todo" ID="BaseButton._todo"></a>
|
||||
<h4>BaseButton._todo</h4>
|
||||
<b>_todo</b>(<i>*args, **kwgs</i>)
|
||||
<p>
|
||||
每个按钮要重新实现的功能函数。
|
||||
</p><a NAME="BaseButton.resizeEvent" ID="BaseButton.resizeEvent"></a>
|
||||
<h4>BaseButton.resizeEvent</h4>
|
||||
<b>resizeEvent</b>(<i>e</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="BaseMenuWidget" ID="BaseMenuWidget"></a>
|
||||
<h2>BaseMenuWidget</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
QWidget
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#BaseMenuWidget.__init__">BaseMenuWidget</a></td>
|
||||
<td>_hideFlag__Menu: 0时隐藏,1时显示;</td>
|
||||
</tr><tr>
|
||||
<td><a href="#BaseMenuWidget._deleteSomething">_deleteSomething</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#BaseMenuWidget._showSomething">_showSomething</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#BaseMenuWidget.enterEvent">enterEvent</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#BaseMenuWidget.leaveEvent">leaveEvent</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="BaseMenuWidget.__init__" ID="BaseMenuWidget.__init__"></a>
|
||||
<h4>BaseMenuWidget (Constructor)</h4>
|
||||
<b>BaseMenuWidget</b>(<i>parent=None</i>)
|
||||
<p>
|
||||
_hideFlag__Menu: 0时隐藏,1时显示;
|
||||
</p><a NAME="BaseMenuWidget._deleteSomething" ID="BaseMenuWidget._deleteSomething"></a>
|
||||
<h4>BaseMenuWidget._deleteSomething</h4>
|
||||
<b>_deleteSomething</b>(<i></i>)
|
||||
<a NAME="BaseMenuWidget._showSomething" ID="BaseMenuWidget._showSomething"></a>
|
||||
<h4>BaseMenuWidget._showSomething</h4>
|
||||
<b>_showSomething</b>(<i>**kwgs</i>)
|
||||
<a NAME="BaseMenuWidget.enterEvent" ID="BaseMenuWidget.enterEvent"></a>
|
||||
<h4>BaseMenuWidget.enterEvent</h4>
|
||||
<b>enterEvent</b>(<i>e</i>)
|
||||
<a NAME="BaseMenuWidget.leaveEvent" ID="BaseMenuWidget.leaveEvent"></a>
|
||||
<h4>BaseMenuWidget.leaveEvent</h4>
|
||||
<b>leaveEvent</b>(<i>e</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="BaseTable" ID="BaseTable"></a>
|
||||
<h2>BaseTable</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
QTableWidget
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#BaseTable.__init__">BaseTable</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="BaseTable.__init__" ID="BaseTable.__init__"></a>
|
||||
<h4>BaseTable (Constructor)</h4>
|
||||
<b>BaseTable</b>(<i>parent=None</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="SingeleWidget" ID="SingeleWidget"></a>
|
||||
<h2>SingeleWidget</h2>
|
||||
<p>
|
||||
菜单条的每个框。
|
||||
</p>
|
||||
<h3>Derived from</h3>
|
||||
QWidget
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#SingeleWidget.__init__">SingeleWidget</a></td>
|
||||
<td>_hideFlag__Button: 0 表明没有显示弹窗;1表示显示了弹窗。</td>
|
||||
</tr><tr>
|
||||
<td><a href="#SingeleWidget._creatMenu">_creatMenu</a></td>
|
||||
<td>Main.py中被调用。把LX类实例化。</td>
|
||||
</tr><tr>
|
||||
<td><a href="#SingeleWidget._jugement">_jugement</a></td>
|
||||
<td>离开上面窗体之后80ms, 1:进入旁边的菜单框;2:进入弹出的菜单。</td>
|
||||
</tr><tr>
|
||||
<td><a href="#SingeleWidget.enterEvent">enterEvent</a></td>
|
||||
<td>鼠标移入label后 , _hideFlag__Button=1,表明显示了弹窗。</td>
|
||||
</tr><tr>
|
||||
<td><a href="#SingeleWidget.leaveEvent">leaveEvent</a></td>
|
||||
<td>离开时判断是否显示了窗体,80ms后发射到_jugement去检测。</td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="SingeleWidget.__init__" ID="SingeleWidget.__init__"></a>
|
||||
<h4>SingeleWidget (Constructor)</h4>
|
||||
<b>SingeleWidget</b>(<i>parent=None</i>)
|
||||
<p>
|
||||
_hideFlag__Button: 0 表明没有显示弹窗;1表示显示了弹窗。
|
||||
</p><a NAME="SingeleWidget._creatMenu" ID="SingeleWidget._creatMenu"></a>
|
||||
<h4>SingeleWidget._creatMenu</h4>
|
||||
<b>_creatMenu</b>(<i>L_Name, parent</i>)
|
||||
<p>
|
||||
Main.py中被调用。把LX类实例化。
|
||||
</p><a NAME="SingeleWidget._jugement" ID="SingeleWidget._jugement"></a>
|
||||
<h4>SingeleWidget._jugement</h4>
|
||||
<b>_jugement</b>(<i></i>)
|
||||
<p>
|
||||
离开上面窗体之后80ms, 1:进入旁边的菜单框;2:进入弹出的菜单。
|
||||
</p><a NAME="SingeleWidget.enterEvent" ID="SingeleWidget.enterEvent"></a>
|
||||
<h4>SingeleWidget.enterEvent</h4>
|
||||
<b>enterEvent</b>(<i>e</i>)
|
||||
<p>
|
||||
鼠标移入label后 , _hideFlag__Button=1,表明显示了弹窗。
|
||||
</p><a NAME="SingeleWidget.leaveEvent" ID="SingeleWidget.leaveEvent"></a>
|
||||
<h4>SingeleWidget.leaveEvent</h4>
|
||||
<b>leaveEvent</b>(<i>e</i>)
|
||||
<p>
|
||||
离开时判断是否显示了窗体,80ms后发射到_jugement去检测。
|
||||
</p>
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="showERROR" ID="showERROR"></a>
|
||||
<h2>showERROR</h2>
|
||||
<b>showERROR</b>(<i></i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr />
|
||||
</body></html>
|
|
@ -0,0 +1,252 @@
|
|||
<!DOCTYPE html>
|
||||
<html><head>
|
||||
|
||||
</head>
|
||||
<body><a NAME="top" ID="top"></a>
|
||||
<h1>5.hoverMenu.BaseElement</h1>
|
||||
<p>
|
||||
description: 抽象类模块
|
||||
</p><p>
|
||||
Created on 2018年7月7日
|
||||
</p><p>
|
||||
email: 625781186@qq.com
|
||||
</p>
|
||||
<h3>Global Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Classes</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#BaseButton">BaseButton</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#BaseMenuWidget">BaseMenuWidget</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#BaseTable">BaseTable</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#SingeleWidget">SingeleWidget</a></td>
|
||||
<td>菜单条的每个框。</td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Functions</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#showERROR">showERROR</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<hr /><hr />
|
||||
<a NAME="BaseButton" ID="BaseButton"></a>
|
||||
<h2>BaseButton</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
QPushButton
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#BaseButton.__init__">BaseButton</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#BaseButton._createLabel">_createLabel</a></td>
|
||||
<td>path:主菜单图标的路径。</td>
|
||||
</tr><tr>
|
||||
<td><a href="#BaseButton._todo">_todo</a></td>
|
||||
<td>每个按钮要重新实现的功能函数。</td>
|
||||
</tr><tr>
|
||||
<td><a href="#BaseButton.resizeEvent">resizeEvent</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="BaseButton.__init__" ID="BaseButton.__init__"></a>
|
||||
<h4>BaseButton (Constructor)</h4>
|
||||
<b>BaseButton</b>(<i>parent=None</i>)
|
||||
<a NAME="BaseButton._createLabel" ID="BaseButton._createLabel"></a>
|
||||
<h4>BaseButton._createLabel</h4>
|
||||
<b>_createLabel</b>(<i>path</i>)
|
||||
<p>
|
||||
path:主菜单图标的路径。
|
||||
</p><a NAME="BaseButton._todo" ID="BaseButton._todo"></a>
|
||||
<h4>BaseButton._todo</h4>
|
||||
<b>_todo</b>(<i>*args, **kwgs</i>)
|
||||
<p>
|
||||
每个按钮要重新实现的功能函数。
|
||||
</p><a NAME="BaseButton.resizeEvent" ID="BaseButton.resizeEvent"></a>
|
||||
<h4>BaseButton.resizeEvent</h4>
|
||||
<b>resizeEvent</b>(<i>e</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="BaseMenuWidget" ID="BaseMenuWidget"></a>
|
||||
<h2>BaseMenuWidget</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
QWidget
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#BaseMenuWidget.__init__">BaseMenuWidget</a></td>
|
||||
<td>_hideFlag__Menu: 0时隐藏,1时显示;</td>
|
||||
</tr><tr>
|
||||
<td><a href="#BaseMenuWidget._deleteSomething">_deleteSomething</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#BaseMenuWidget._showSomething">_showSomething</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#BaseMenuWidget.enterEvent">enterEvent</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#BaseMenuWidget.leaveEvent">leaveEvent</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="BaseMenuWidget.__init__" ID="BaseMenuWidget.__init__"></a>
|
||||
<h4>BaseMenuWidget (Constructor)</h4>
|
||||
<b>BaseMenuWidget</b>(<i>parent=None</i>)
|
||||
<p>
|
||||
_hideFlag__Menu: 0时隐藏,1时显示;
|
||||
</p><a NAME="BaseMenuWidget._deleteSomething" ID="BaseMenuWidget._deleteSomething"></a>
|
||||
<h4>BaseMenuWidget._deleteSomething</h4>
|
||||
<b>_deleteSomething</b>(<i></i>)
|
||||
<a NAME="BaseMenuWidget._showSomething" ID="BaseMenuWidget._showSomething"></a>
|
||||
<h4>BaseMenuWidget._showSomething</h4>
|
||||
<b>_showSomething</b>(<i>**kwgs</i>)
|
||||
<a NAME="BaseMenuWidget.enterEvent" ID="BaseMenuWidget.enterEvent"></a>
|
||||
<h4>BaseMenuWidget.enterEvent</h4>
|
||||
<b>enterEvent</b>(<i>e</i>)
|
||||
<a NAME="BaseMenuWidget.leaveEvent" ID="BaseMenuWidget.leaveEvent"></a>
|
||||
<h4>BaseMenuWidget.leaveEvent</h4>
|
||||
<b>leaveEvent</b>(<i>e</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="BaseTable" ID="BaseTable"></a>
|
||||
<h2>BaseTable</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
QTableWidget
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#BaseTable.__init__">BaseTable</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="BaseTable.__init__" ID="BaseTable.__init__"></a>
|
||||
<h4>BaseTable (Constructor)</h4>
|
||||
<b>BaseTable</b>(<i>parent=None</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="SingeleWidget" ID="SingeleWidget"></a>
|
||||
<h2>SingeleWidget</h2>
|
||||
<p>
|
||||
菜单条的每个框。
|
||||
</p>
|
||||
<h3>Derived from</h3>
|
||||
QWidget
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#SingeleWidget.__init__">SingeleWidget</a></td>
|
||||
<td>_hideFlag__Button: 0 表明没有显示弹窗;1表示显示了弹窗。</td>
|
||||
</tr><tr>
|
||||
<td><a href="#SingeleWidget._creatMenu">_creatMenu</a></td>
|
||||
<td>Main.py中被调用。把LX类实例化。</td>
|
||||
</tr><tr>
|
||||
<td><a href="#SingeleWidget._jugement">_jugement</a></td>
|
||||
<td>离开上面窗体之后80ms, 1:进入旁边的菜单框;2:进入弹出的菜单。</td>
|
||||
</tr><tr>
|
||||
<td><a href="#SingeleWidget.enterEvent">enterEvent</a></td>
|
||||
<td>鼠标移入label后 , _hideFlag__Button=1,表明显示了弹窗。</td>
|
||||
</tr><tr>
|
||||
<td><a href="#SingeleWidget.leaveEvent">leaveEvent</a></td>
|
||||
<td>离开时判断是否显示了窗体,80ms后发射到_jugement去检测。</td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="SingeleWidget.__init__" ID="SingeleWidget.__init__"></a>
|
||||
<h4>SingeleWidget (Constructor)</h4>
|
||||
<b>SingeleWidget</b>(<i>parent=None</i>)
|
||||
<p>
|
||||
_hideFlag__Button: 0 表明没有显示弹窗;1表示显示了弹窗。
|
||||
</p><a NAME="SingeleWidget._creatMenu" ID="SingeleWidget._creatMenu"></a>
|
||||
<h4>SingeleWidget._creatMenu</h4>
|
||||
<b>_creatMenu</b>(<i>L_Name, parent</i>)
|
||||
<p>
|
||||
Main.py中被调用。把LX类实例化。
|
||||
</p><a NAME="SingeleWidget._jugement" ID="SingeleWidget._jugement"></a>
|
||||
<h4>SingeleWidget._jugement</h4>
|
||||
<b>_jugement</b>(<i></i>)
|
||||
<p>
|
||||
离开上面窗体之后80ms, 1:进入旁边的菜单框;2:进入弹出的菜单。
|
||||
</p><a NAME="SingeleWidget.enterEvent" ID="SingeleWidget.enterEvent"></a>
|
||||
<h4>SingeleWidget.enterEvent</h4>
|
||||
<b>enterEvent</b>(<i>e</i>)
|
||||
<p>
|
||||
鼠标移入label后 , _hideFlag__Button=1,表明显示了弹窗。
|
||||
</p><a NAME="SingeleWidget.leaveEvent" ID="SingeleWidget.leaveEvent"></a>
|
||||
<h4>SingeleWidget.leaveEvent</h4>
|
||||
<b>leaveEvent</b>(<i>e</i>)
|
||||
<p>
|
||||
离开时判断是否显示了窗体,80ms后发射到_jugement去检测。
|
||||
</p>
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="showERROR" ID="showERROR"></a>
|
||||
<h2>showERROR</h2>
|
||||
<b>showERROR</b>(<i></i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr />
|
||||
</body></html>
|
|
@ -0,0 +1,78 @@
|
|||
<!DOCTYPE html>
|
||||
<html><head>
|
||||
<title>5.hoverMenu.CommonHelper</title>
|
||||
<meta charset="UTF-8">
|
||||
<style>
|
||||
body {
|
||||
background: #EDECE6;
|
||||
margin: 0em 1em 10em 1em;
|
||||
color: black;
|
||||
}
|
||||
|
||||
h1 { color: white; background: #85774A; }
|
||||
h2 { color: white; background: #85774A; }
|
||||
h3 { color: white; background: #9D936E; }
|
||||
h4 { color: white; background: #9D936E; }
|
||||
|
||||
a { color: #BA6D36; }
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body><a NAME="top" ID="top"></a>
|
||||
<h1>5.hoverMenu.CommonHelper</h1>
|
||||
<p>
|
||||
读取CSS用模块。
|
||||
</p>
|
||||
<h3>Global Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Classes</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#CommonHelper">CommonHelper</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Functions</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<hr /><hr />
|
||||
<a NAME="CommonHelper" ID="CommonHelper"></a>
|
||||
<h2>CommonHelper</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
None
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#CommonHelper.__init__">CommonHelper</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#CommonHelper.readQss">readQss</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<a NAME="CommonHelper.__init__" ID="CommonHelper.__init__"></a>
|
||||
<h4>CommonHelper (Constructor)</h4>
|
||||
<b>CommonHelper</b>(<i></i>)
|
||||
<a NAME="CommonHelper.readQss" ID="CommonHelper.readQss"></a>
|
||||
<h4>CommonHelper.readQss (static)</h4>
|
||||
<b>readQss</b>(<i></i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr />
|
||||
</body></html>
|
|
@ -0,0 +1,62 @@
|
|||
<!DOCTYPE html>
|
||||
<html><head>
|
||||
|
||||
</head>
|
||||
<body><a NAME="top" ID="top"></a>
|
||||
<h1>5.hoverMenu.CommonHelper</h1>
|
||||
<p>
|
||||
读取CSS用模块。
|
||||
</p>
|
||||
<h3>Global Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Classes</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#CommonHelper">CommonHelper</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Functions</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<hr /><hr />
|
||||
<a NAME="CommonHelper" ID="CommonHelper"></a>
|
||||
<h2>CommonHelper</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
None
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#CommonHelper.__init__">CommonHelper</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#CommonHelper.readQss">readQss</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<a NAME="CommonHelper.__init__" ID="CommonHelper.__init__"></a>
|
||||
<h4>CommonHelper (Constructor)</h4>
|
||||
<b>CommonHelper</b>(<i></i>)
|
||||
<a NAME="CommonHelper.readQss" ID="CommonHelper.readQss"></a>
|
||||
<h4>CommonHelper.readQss (static)</h4>
|
||||
<b>readQss</b>(<i></i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr />
|
||||
</body></html>
|
|
@ -0,0 +1,95 @@
|
|||
<!DOCTYPE html>
|
||||
<html><head>
|
||||
<title>5.hoverMenu.Main</title>
|
||||
<meta charset="UTF-8">
|
||||
<style>
|
||||
body {
|
||||
background: #EDECE6;
|
||||
margin: 0em 1em 10em 1em;
|
||||
color: black;
|
||||
}
|
||||
|
||||
h1 { color: white; background: #85774A; }
|
||||
h2 { color: white; background: #85774A; }
|
||||
h3 { color: white; background: #9D936E; }
|
||||
h4 { color: white; background: #9D936E; }
|
||||
|
||||
a { color: #BA6D36; }
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body><a NAME="top" ID="top"></a>
|
||||
<h1>5.hoverMenu.Main</h1>
|
||||
<p>
|
||||
主函数.
|
||||
</p><p>
|
||||
description: pyqt5悬浮下拉菜单
|
||||
</p><p>
|
||||
Created on 2018年7月7日
|
||||
</p><p>
|
||||
email: 625781186@qq.com
|
||||
</p>
|
||||
<h3>Global Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Classes</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#MainWindow">MainWindow</a></td>
|
||||
<td>Class documentation goes here.</td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Functions</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<hr /><hr />
|
||||
<a NAME="MainWindow" ID="MainWindow"></a>
|
||||
<h2>MainWindow</h2>
|
||||
<p>
|
||||
Class documentation goes here.
|
||||
</p>
|
||||
<h3>Derived from</h3>
|
||||
QMainWindow, Ui_MainWindow
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>app</td></tr><tr><td>qssStyle</td></tr><tr><td>styleFile</td></tr><tr><td>ui</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#MainWindow.__init__">MainWindow</a></td>
|
||||
<td>Constructor</td>
|
||||
</tr><tr>
|
||||
<td><a href="#MainWindow.enterEvent">enterEvent</a></td>
|
||||
<td>自定义标题栏需要重置光标。</td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="MainWindow.__init__" ID="MainWindow.__init__"></a>
|
||||
<h4>MainWindow (Constructor)</h4>
|
||||
<b>MainWindow</b>(<i>parent=None</i>)
|
||||
<p>
|
||||
Constructor
|
||||
</p><dl>
|
||||
<dt><i>parent</i> (QWidget)</dt>
|
||||
<dd>
|
||||
reference to the parent widget
|
||||
</dd>
|
||||
</dl><a NAME="MainWindow.enterEvent" ID="MainWindow.enterEvent"></a>
|
||||
<h4>MainWindow.enterEvent</h4>
|
||||
<b>enterEvent</b>(<i>e</i>)
|
||||
<p>
|
||||
自定义标题栏需要重置光标。
|
||||
</p>
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr />
|
||||
</body></html>
|
|
@ -0,0 +1,79 @@
|
|||
<!DOCTYPE html>
|
||||
<html><head>
|
||||
|
||||
</head>
|
||||
<body><a NAME="top" ID="top"></a>
|
||||
<h1>5.hoverMenu.Main</h1>
|
||||
<p>
|
||||
主函数.
|
||||
</p><p>
|
||||
description: pyqt5悬浮下拉菜单
|
||||
</p><p>
|
||||
Created on 2018年7月7日
|
||||
</p><p>
|
||||
email: 625781186@qq.com
|
||||
</p>
|
||||
<h3>Global Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Classes</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#MainWindow">MainWindow</a></td>
|
||||
<td>Class documentation goes here.</td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Functions</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<hr /><hr />
|
||||
<a NAME="MainWindow" ID="MainWindow"></a>
|
||||
<h2>MainWindow</h2>
|
||||
<p>
|
||||
Class documentation goes here.
|
||||
</p>
|
||||
<h3>Derived from</h3>
|
||||
QMainWindow, Ui_MainWindow
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>app</td></tr><tr><td>qssStyle</td></tr><tr><td>styleFile</td></tr><tr><td>ui</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#MainWindow.__init__">MainWindow</a></td>
|
||||
<td>Constructor</td>
|
||||
</tr><tr>
|
||||
<td><a href="#MainWindow.enterEvent">enterEvent</a></td>
|
||||
<td>自定义标题栏需要重置光标。</td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="MainWindow.__init__" ID="MainWindow.__init__"></a>
|
||||
<h4>MainWindow (Constructor)</h4>
|
||||
<b>MainWindow</b>(<i>parent=None</i>)
|
||||
<p>
|
||||
Constructor
|
||||
</p><dl>
|
||||
<dt><i>parent</i> (QWidget)</dt>
|
||||
<dd>
|
||||
reference to the parent widget
|
||||
</dd>
|
||||
</dl><a NAME="MainWindow.enterEvent" ID="MainWindow.enterEvent"></a>
|
||||
<h4>MainWindow.enterEvent</h4>
|
||||
<b>enterEvent</b>(<i>e</i>)
|
||||
<p>
|
||||
自定义标题栏需要重置光标。
|
||||
</p>
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr />
|
||||
</body></html>
|
|
@ -0,0 +1,358 @@
|
|||
<!DOCTYPE html>
|
||||
<html><head>
|
||||
<title>5.hoverMenu.Menu</title>
|
||||
<meta charset="UTF-8">
|
||||
<style>
|
||||
body {
|
||||
background: #EDECE6;
|
||||
margin: 0em 1em 10em 1em;
|
||||
color: black;
|
||||
}
|
||||
|
||||
h1 { color: white; background: #85774A; }
|
||||
h2 { color: white; background: #85774A; }
|
||||
h3 { color: white; background: #9D936E; }
|
||||
h4 { color: white; background: #9D936E; }
|
||||
|
||||
a { color: #BA6D36; }
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body><a NAME="top" ID="top"></a>
|
||||
<h1>5.hoverMenu.Menu</h1>
|
||||
<p>
|
||||
description: 要增加菜单栏时,在这里添加。<br>
|
||||
</p><p>
|
||||
Created on 2018年7月7日
|
||||
</p><p>
|
||||
email: 625781186@qq.com
|
||||
</p><p>
|
||||
BX: 主菜单按钮;<br>
|
||||
LX:子菜单按钮-继承了UI类和 隐藏基类;<br>
|
||||
</p>
|
||||
<h3>Global Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Classes</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#B1">B1</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#B2">B2</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#B3">B3</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#B4">B4</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#L1">L1</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#L2">L2</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#L3">L3</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#L4">L4</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Functions</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<hr /><hr />
|
||||
<a NAME="B1" ID="B1"></a>
|
||||
<h2>B1</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
BaseButton
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#B1.__init__">B1</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#B1._todo">_todo</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="B1.__init__" ID="B1.__init__"></a>
|
||||
<h4>B1 (Constructor)</h4>
|
||||
<b>B1</b>(<i>parent=None</i>)
|
||||
<a NAME="B1._todo" ID="B1._todo"></a>
|
||||
<h4>B1._todo</h4>
|
||||
<b>_todo</b>(<i>*args, **kwgs</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="B2" ID="B2"></a>
|
||||
<h2>B2</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
BaseButton
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#B2.__init__">B2</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#B2._todo">_todo</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="B2.__init__" ID="B2.__init__"></a>
|
||||
<h4>B2 (Constructor)</h4>
|
||||
<b>B2</b>(<i>parent=None</i>)
|
||||
<a NAME="B2._todo" ID="B2._todo"></a>
|
||||
<h4>B2._todo</h4>
|
||||
<b>_todo</b>(<i>*args, **kwgs</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="B3" ID="B3"></a>
|
||||
<h2>B3</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
BaseButton
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#B3.__init__">B3</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#B3._todo">_todo</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="B3.__init__" ID="B3.__init__"></a>
|
||||
<h4>B3 (Constructor)</h4>
|
||||
<b>B3</b>(<i>parent=None</i>)
|
||||
<a NAME="B3._todo" ID="B3._todo"></a>
|
||||
<h4>B3._todo</h4>
|
||||
<b>_todo</b>(<i>*args, **kwgs</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="B4" ID="B4"></a>
|
||||
<h2>B4</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
BaseButton
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#B4.__init__">B4</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#B4._todo">_todo</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="B4.__init__" ID="B4.__init__"></a>
|
||||
<h4>B4 (Constructor)</h4>
|
||||
<b>B4</b>(<i>parent=None</i>)
|
||||
<a NAME="B4._todo" ID="B4._todo"></a>
|
||||
<h4>B4._todo</h4>
|
||||
<b>_todo</b>(<i>*args, **kwgs</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="L1" ID="L1"></a>
|
||||
<h2>L1</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
Ui_L1.Ui_Form, BaseMenuWidget
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#L1.__init__">L1</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#L1._showSomething">_showSomething</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="L1.__init__" ID="L1.__init__"></a>
|
||||
<h4>L1 (Constructor)</h4>
|
||||
<b>L1</b>(<i>parent=None</i>)
|
||||
<a NAME="L1._showSomething" ID="L1._showSomething"></a>
|
||||
<h4>L1._showSomething</h4>
|
||||
<b>_showSomething</b>(<i>item</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="L2" ID="L2"></a>
|
||||
<h2>L2</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
Ui_L2.Ui_Form, BaseMenuWidget
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#L2.__init__">L2</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#L2._showSomething">_showSomething</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="L2.__init__" ID="L2.__init__"></a>
|
||||
<h4>L2 (Constructor)</h4>
|
||||
<b>L2</b>(<i>parent=None</i>)
|
||||
<a NAME="L2._showSomething" ID="L2._showSomething"></a>
|
||||
<h4>L2._showSomething</h4>
|
||||
<b>_showSomething</b>(<i>item</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="L3" ID="L3"></a>
|
||||
<h2>L3</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
Ui_L3.Ui_Form, BaseMenuWidget
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#L3.__init__">L3</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#L3._showSomething">_showSomething</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="L3.__init__" ID="L3.__init__"></a>
|
||||
<h4>L3 (Constructor)</h4>
|
||||
<b>L3</b>(<i>parent=None</i>)
|
||||
<a NAME="L3._showSomething" ID="L3._showSomething"></a>
|
||||
<h4>L3._showSomething</h4>
|
||||
<b>_showSomething</b>(<i>item</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="L4" ID="L4"></a>
|
||||
<h2>L4</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
Ui_L4.Ui_Form, BaseMenuWidget
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#L4.__init__">L4</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#L4._showSomething">_showSomething</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="L4.__init__" ID="L4.__init__"></a>
|
||||
<h4>L4 (Constructor)</h4>
|
||||
<b>L4</b>(<i>parent=None</i>)
|
||||
<a NAME="L4._showSomething" ID="L4._showSomething"></a>
|
||||
<h4>L4._showSomething</h4>
|
||||
<b>_showSomething</b>(<i>item</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr />
|
||||
</body></html>
|
342
partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.Menu.md
Normal file
|
@ -0,0 +1,342 @@
|
|||
<!DOCTYPE html>
|
||||
<html><head>
|
||||
|
||||
</head>
|
||||
<body><a NAME="top" ID="top"></a>
|
||||
<h1>5.hoverMenu.Menu</h1>
|
||||
<p>
|
||||
description: 要增加菜单栏时,在这里添加。<br>
|
||||
</p><p>
|
||||
Created on 2018年7月7日
|
||||
</p><p>
|
||||
email: 625781186@qq.com
|
||||
</p><p>
|
||||
BX: 主菜单按钮;<br>
|
||||
LX:子菜单按钮-继承了UI类和 隐藏基类;<br>
|
||||
</p>
|
||||
<h3>Global Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Classes</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#B1">B1</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#B2">B2</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#B3">B3</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#B4">B4</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#L1">L1</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#L2">L2</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#L3">L3</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#L4">L4</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Functions</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<hr /><hr />
|
||||
<a NAME="B1" ID="B1"></a>
|
||||
<h2>B1</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
BaseButton
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#B1.__init__">B1</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#B1._todo">_todo</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="B1.__init__" ID="B1.__init__"></a>
|
||||
<h4>B1 (Constructor)</h4>
|
||||
<b>B1</b>(<i>parent=None</i>)
|
||||
<a NAME="B1._todo" ID="B1._todo"></a>
|
||||
<h4>B1._todo</h4>
|
||||
<b>_todo</b>(<i>*args, **kwgs</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="B2" ID="B2"></a>
|
||||
<h2>B2</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
BaseButton
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#B2.__init__">B2</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#B2._todo">_todo</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="B2.__init__" ID="B2.__init__"></a>
|
||||
<h4>B2 (Constructor)</h4>
|
||||
<b>B2</b>(<i>parent=None</i>)
|
||||
<a NAME="B2._todo" ID="B2._todo"></a>
|
||||
<h4>B2._todo</h4>
|
||||
<b>_todo</b>(<i>*args, **kwgs</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="B3" ID="B3"></a>
|
||||
<h2>B3</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
BaseButton
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#B3.__init__">B3</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#B3._todo">_todo</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="B3.__init__" ID="B3.__init__"></a>
|
||||
<h4>B3 (Constructor)</h4>
|
||||
<b>B3</b>(<i>parent=None</i>)
|
||||
<a NAME="B3._todo" ID="B3._todo"></a>
|
||||
<h4>B3._todo</h4>
|
||||
<b>_todo</b>(<i>*args, **kwgs</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="B4" ID="B4"></a>
|
||||
<h2>B4</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
BaseButton
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#B4.__init__">B4</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#B4._todo">_todo</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="B4.__init__" ID="B4.__init__"></a>
|
||||
<h4>B4 (Constructor)</h4>
|
||||
<b>B4</b>(<i>parent=None</i>)
|
||||
<a NAME="B4._todo" ID="B4._todo"></a>
|
||||
<h4>B4._todo</h4>
|
||||
<b>_todo</b>(<i>*args, **kwgs</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="L1" ID="L1"></a>
|
||||
<h2>L1</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
Ui_L1.Ui_Form, BaseMenuWidget
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#L1.__init__">L1</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#L1._showSomething">_showSomething</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="L1.__init__" ID="L1.__init__"></a>
|
||||
<h4>L1 (Constructor)</h4>
|
||||
<b>L1</b>(<i>parent=None</i>)
|
||||
<a NAME="L1._showSomething" ID="L1._showSomething"></a>
|
||||
<h4>L1._showSomething</h4>
|
||||
<b>_showSomething</b>(<i>item</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="L2" ID="L2"></a>
|
||||
<h2>L2</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
Ui_L2.Ui_Form, BaseMenuWidget
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#L2.__init__">L2</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#L2._showSomething">_showSomething</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="L2.__init__" ID="L2.__init__"></a>
|
||||
<h4>L2 (Constructor)</h4>
|
||||
<b>L2</b>(<i>parent=None</i>)
|
||||
<a NAME="L2._showSomething" ID="L2._showSomething"></a>
|
||||
<h4>L2._showSomething</h4>
|
||||
<b>_showSomething</b>(<i>item</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="L3" ID="L3"></a>
|
||||
<h2>L3</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
Ui_L3.Ui_Form, BaseMenuWidget
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#L3.__init__">L3</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#L3._showSomething">_showSomething</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="L3.__init__" ID="L3.__init__"></a>
|
||||
<h4>L3 (Constructor)</h4>
|
||||
<b>L3</b>(<i>parent=None</i>)
|
||||
<a NAME="L3._showSomething" ID="L3._showSomething"></a>
|
||||
<h4>L3._showSomething</h4>
|
||||
<b>_showSomething</b>(<i>item</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr /><hr />
|
||||
<a NAME="L4" ID="L4"></a>
|
||||
<h2>L4</h2>
|
||||
|
||||
<h3>Derived from</h3>
|
||||
Ui_L4.Ui_Form, BaseMenuWidget
|
||||
<h3>Class Attributes</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Class Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<h3>Methods</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="#L4.__init__">L4</a></td>
|
||||
<td></td>
|
||||
</tr><tr>
|
||||
<td><a href="#L4._showSomething">_showSomething</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>Static Methods</h3>
|
||||
<table>
|
||||
<tr><td>None</td></tr>
|
||||
</table>
|
||||
<a NAME="L4.__init__" ID="L4.__init__"></a>
|
||||
<h4>L4 (Constructor)</h4>
|
||||
<b>L4</b>(<i>parent=None</i>)
|
||||
<a NAME="L4._showSomething" ID="L4._showSomething"></a>
|
||||
<h4>L4._showSomething</h4>
|
||||
<b>_showSomething</b>(<i>item</i>)
|
||||
|
||||
<div align="right"><a href="#top">Up</a></div>
|
||||
<hr />
|
||||
</body></html>
|
|
@ -0,0 +1,42 @@
|
|||
<!DOCTYPE html>
|
||||
<html><head>
|
||||
<title>5.hoverMenu</title>
|
||||
<meta charset="UTF-8">
|
||||
<style>
|
||||
body {
|
||||
background: #EDECE6;
|
||||
margin: 0em 1em 10em 1em;
|
||||
color: black;
|
||||
}
|
||||
|
||||
h1 { color: white; background: #85774A; }
|
||||
h2 { color: white; background: #85774A; }
|
||||
h3 { color: white; background: #9D936E; }
|
||||
h4 { color: white; background: #9D936E; }
|
||||
|
||||
a { color: #BA6D36; }
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>5.hoverMenu</h1>
|
||||
|
||||
|
||||
|
||||
<h3>Modules</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="5.hoverMenu.BaseElement.html">BaseElement</a></td>
|
||||
<td>description: 抽象类模块</td>
|
||||
</tr><tr>
|
||||
<td><a href="5.hoverMenu.CommonHelper.html">CommonHelper</a></td>
|
||||
<td>读取CSS用模块。</td>
|
||||
</tr><tr>
|
||||
<td><a href="5.hoverMenu.Main.html">Main</a></td>
|
||||
<td>主函数.</td>
|
||||
</tr><tr>
|
||||
<td><a href="5.hoverMenu.Menu.html">Menu</a></td>
|
||||
<td>description: 要增加菜单栏时,在这里添加。<br></td>
|
||||
</tr>
|
||||
</table>
|
||||
</body></html>
|
|
@ -0,0 +1,26 @@
|
|||
<!DOCTYPE html>
|
||||
<html><head>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<h1>5.hoverMenu</h1>
|
||||
|
||||
|
||||
|
||||
<h3>Modules</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="5.hoverMenu.BaseElement.md">BaseElement</a></td>
|
||||
<td>description: 抽象类模块</td>
|
||||
</tr><tr>
|
||||
<td><a href="5.hoverMenu.CommonHelper.md">CommonHelper</a></td>
|
||||
<td>读取CSS用模块。</td>
|
||||
</tr><tr>
|
||||
<td><a href="5.hoverMenu.Main.md">Main</a></td>
|
||||
<td>主函数.</td>
|
||||
</tr><tr>
|
||||
<td><a href="5.hoverMenu.Menu.md">Menu</a></td>
|
||||
<td>description: 要增加菜单栏时,在这里添加。<br></td>
|
||||
</tr>
|
||||
</table>
|
||||
</body></html>
|
33
partner_625781186/5.hoverMenu/Documentation/index.html
Normal file
|
@ -0,0 +1,33 @@
|
|||
<!DOCTYPE html>
|
||||
<html><head>
|
||||
<title>Table of contents</title>
|
||||
<meta charset="UTF-8">
|
||||
<style>
|
||||
body {
|
||||
background: #EDECE6;
|
||||
margin: 0em 1em 10em 1em;
|
||||
color: black;
|
||||
}
|
||||
|
||||
h1 { color: white; background: #85774A; }
|
||||
h2 { color: white; background: #85774A; }
|
||||
h3 { color: white; background: #9D936E; }
|
||||
h4 { color: white; background: #9D936E; }
|
||||
|
||||
a { color: #BA6D36; }
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Table of contents</h1>
|
||||
|
||||
|
||||
<h3>Packages</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><a href="index-5.hoverMenu.html">hoverMenu</a></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
</body></html>
|
63
partner_625781186/5.hoverMenu/Main.py
Normal file
|
@ -0,0 +1,63 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
"""
|
||||
主函数.
|
||||
|
||||
description: pyqt5悬浮下拉菜单
|
||||
|
||||
Created on 2018年7月7日
|
||||
|
||||
email: 625781186@qq.com
|
||||
"""
|
||||
|
||||
|
||||
from PyQt5 import QtGui, QtWidgets, QtCore
|
||||
from PyQt5.QtCore import *
|
||||
from PyQt5.QtGui import *
|
||||
from PyQt5.QtWidgets import *
|
||||
|
||||
from Menu import *
|
||||
from Ui_Main import Ui_MainWindow
|
||||
#读取CSS用
|
||||
from CommonHelper import CommonHelper
|
||||
|
||||
class MainWindow(QMainWindow, Ui_MainWindow):
|
||||
"""
|
||||
Class documentation goes here.
|
||||
"""
|
||||
|
||||
def __init__(self, parent=None):
|
||||
"""
|
||||
Constructor
|
||||
|
||||
@param parent reference to the parent widget
|
||||
@type QWidget
|
||||
"""
|
||||
super(MainWindow, self).__init__(parent)
|
||||
self.setupUi(self)
|
||||
self.showMaximized()
|
||||
# W1->TestWidget 生成,然后B->,然后L->tablewidget
|
||||
for i in range(1,10):
|
||||
try:
|
||||
txt='''self.W{x}._creatMenu(L{x}, self);
|
||||
'''.format(x=i)
|
||||
|
||||
exec(txt)
|
||||
except:
|
||||
continue
|
||||
|
||||
def enterEvent(self, e):
|
||||
'''自定义标题栏需要重置光标。'''
|
||||
self.setCursor(Qt.ArrowCursor)
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
|
||||
ui = MainWindow()
|
||||
styleFile = './style.css'
|
||||
qssStyle = CommonHelper.readQss( styleFile )
|
||||
ui.setStyleSheet( qssStyle )
|
||||
ui.show()
|
||||
|
||||
sys.exit(app.exec_())
|
471
partner_625781186/5.hoverMenu/Main.ui
Normal file
|
@ -0,0 +1,471 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<author>Lin</author>
|
||||
<class>MainWindow</class>
|
||||
<widget class="QMainWindow" name="MainWindow">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>648</width>
|
||||
<height>493</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>MainWindow</string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true"> #MainWindow { border:none;}</string>
|
||||
</property>
|
||||
<widget class="QWidget" name="centralWidget">
|
||||
<property name="styleSheet">
|
||||
<string notr="true">#centralWidget {border:none;}</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<item>
|
||||
<widget class="QWidget" name="widget" native="true">
|
||||
<property name="styleSheet">
|
||||
<string notr="true">#widget {border:none;}</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_14">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QWidget" name="topWidget" native="true">
|
||||
<property name="styleSheet">
|
||||
<string notr="true">#widget{ border:none; }</string>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout" stretch="1,1,1,1,0,0">
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="SingeleWidget" name="W1" native="true">
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<property name="leftMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<item row="0" column="1">
|
||||
<widget class="B1" name="filemenu_storeData_3">
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QLabel" name="label_15">
|
||||
<property name="text">
|
||||
<string>店铺数据</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Preferred</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<spacer name="horizontalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Preferred</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="SingeleWidget" name="W2" native="true">
|
||||
<layout class="QGridLayout" name="gridLayout_2">
|
||||
<property name="leftMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<item row="1" column="1">
|
||||
<widget class="QLabel" name="label_16">
|
||||
<property name="text">
|
||||
<string>竞品分析</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="B2" name="filemenu_competitiveProductAnalysis_3">
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<spacer name="horizontalSpacer_3">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Preferred</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<spacer name="horizontalSpacer_4">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Preferred</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="SingeleWidget" name="W3" native="true">
|
||||
<layout class="QGridLayout" name="gridLayout_4">
|
||||
<property name="leftMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<spacer name="horizontalSpacer_5">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Preferred</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="B3" name="filemenu_throughTrain_4">
|
||||
<property name="autoFillBackground">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QLabel" name="label_19">
|
||||
<property name="text">
|
||||
<string>直通工具</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<spacer name="horizontalSpacer_6">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Preferred</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="SingeleWidget" name="W4" native="true">
|
||||
<layout class="QGridLayout" name="gridLayout_5">
|
||||
<property name="leftMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<spacer name="horizontalSpacer_7">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Preferred</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="B4" name="filemenu_throughTrain_3">
|
||||
<property name="autoFillBackground">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QLabel" name="label_14">
|
||||
<property name="text">
|
||||
<string>直通工具</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<spacer name="horizontalSpacer_8">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Preferred</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_19">
|
||||
<item>
|
||||
<widget class="QLabel" name="label_17">
|
||||
<property name="text">
|
||||
<string>个人中心</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_18">
|
||||
<property name="text">
|
||||
<string>退出登录</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer_9">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>25</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QWidget" name="buttomWidget" native="true">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="Buttom_Vbox">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<action name="action1">
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="action2">
|
||||
<property name="text">
|
||||
<string>2</string>
|
||||
</property>
|
||||
</action>
|
||||
</widget>
|
||||
<layoutdefault spacing="2" margin="0"/>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>B1</class>
|
||||
<extends>QPushButton</extends>
|
||||
<header>Menu</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>B2</class>
|
||||
<extends>QPushButton</extends>
|
||||
<header>Menu</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>B3</class>
|
||||
<extends>QPushButton</extends>
|
||||
<header>Menu</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>B4</class>
|
||||
<extends>QPushButton</extends>
|
||||
<header>Menu</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>SingeleWidget</class>
|
||||
<extends>QWidget</extends>
|
||||
<header>BaseElement</header>
|
||||
<container>1</container>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources>
|
||||
<include location="tbqrc.qrc"/>
|
||||
</resources>
|
||||
<connections/>
|
||||
<designerdata>
|
||||
<property name="gridDeltaX">
|
||||
<number>10</number>
|
||||
</property>
|
||||
<property name="gridDeltaY">
|
||||
<number>10</number>
|
||||
</property>
|
||||
<property name="gridSnapX">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="gridSnapY">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="gridVisible">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</designerdata>
|
||||
</ui>
|
119
partner_625781186/5.hoverMenu/Menu.py
Normal file
|
@ -0,0 +1,119 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
'''
|
||||
description: 要增加菜单栏时,在这里添加。<br>
|
||||
|
||||
Created on 2018年7月7日
|
||||
|
||||
email: 625781186@qq.com
|
||||
|
||||
BX: 主菜单按钮;<br>
|
||||
LX:子菜单按钮-继承了UI类和 隐藏基类;<br>
|
||||
'''
|
||||
|
||||
from BaseElement import *
|
||||
|
||||
from UStoreData1 import Ui_L1
|
||||
from UCompetitiveProduct2 import Ui_L2
|
||||
from UMarketAnalysis3 import Ui_L3
|
||||
from UThroughTrain4 import Ui_L4
|
||||
|
||||
#============================================= 店铺数据 =======================================
|
||||
class B1( BaseButton):
|
||||
def __init__(self, parent=None):
|
||||
super(B1, self).__init__(parent)
|
||||
self._createLabel(":/static/store_data.png")
|
||||
def _todo(self, *args, **kwgs):
|
||||
super(B1, self)._todo()
|
||||
|
||||
class L1( Ui_L1.Ui_Form, BaseMenuWidget):
|
||||
def __init__(self, parent=None):
|
||||
super(L1, self).__init__(parent)
|
||||
def _showSomething(self, item):
|
||||
super(L1, self)._showSomething()
|
||||
MW = self.parent()#是MainWindow
|
||||
if item.text()=="语音数据":
|
||||
print(1) #功能未实现
|
||||
|
||||
#============================================= 竞品分析 =======================================
|
||||
class B2(BaseButton):
|
||||
def __init__(self, parent=None):
|
||||
super(B2, self).__init__(parent)
|
||||
self._createLabel(":/static/competitiveProductAnalysis.png")
|
||||
def _todo(self, *args, **kwgs):
|
||||
super(B2, self)._todo()
|
||||
|
||||
class L2(Ui_L2.Ui_Form, BaseMenuWidget):
|
||||
def __init__(self, parent=None):
|
||||
super(L2, self).__init__(parent)
|
||||
def _showSomething(self, item):
|
||||
super(L2, self)._showSomething()
|
||||
|
||||
MW = self.parent()#是MainWindow
|
||||
if item.text()=="评价分析":
|
||||
print(1) #功能未实现
|
||||
elif item.text()=="SKU分析":
|
||||
|
||||
from UCompetitiveProduct2 import SKU_Widget
|
||||
#切换窗体
|
||||
self.sku_Widget = SKU_Widget.SKU_Form(MW.Buttom_Vbox.parent())
|
||||
|
||||
self.parent().Buttom_Vbox.addWidget(self.sku_Widget)
|
||||
|
||||
|
||||
elif item.text()=="流量分析":
|
||||
print(3) #功能未实现
|
||||
|
||||
|
||||
#============================================= 市场分析 =======================================
|
||||
class B3(BaseButton):
|
||||
def __init__(self, parent=None):
|
||||
super(B3, self).__init__(parent)
|
||||
self._createLabel(":/static/search.png")
|
||||
|
||||
def _todo(self, *args, **kwgs):
|
||||
super(B3, self)._todo()
|
||||
|
||||
class L3(Ui_L3.Ui_Form, BaseMenuWidget):
|
||||
def __init__(self, parent=None):
|
||||
super(L3, self).__init__(parent)
|
||||
def _showSomething(self, item):
|
||||
super(L3, self)._showSomething()
|
||||
MW = self.parent()#是MainWindow
|
||||
if item.text()=="类目趋势":
|
||||
print(1)#功能未实现
|
||||
elif item.text()=="属性趋势":
|
||||
print(2)#功能未实现
|
||||
elif item.text()=="品牌分析":
|
||||
print(3)#功能未实现
|
||||
|
||||
|
||||
#============================================= 直通车工具 =======================================
|
||||
class B4(BaseButton):
|
||||
def __init__(self, parent=None):
|
||||
super(B4, self).__init__(parent)
|
||||
self._createLabel(":/static/throughTrain.png")
|
||||
|
||||
def _todo(self, *args, **kwgs):
|
||||
super(B4, self)._todo()
|
||||
|
||||
class L4(Ui_L4.Ui_Form,BaseMenuWidget):
|
||||
def __init__(self, parent=None):
|
||||
super(L4, self).__init__(parent)
|
||||
def _showSomething(self, item):
|
||||
super(L4, self)._showSomething()
|
||||
MW = self.parent()#是MainWindow
|
||||
|
||||
if item.text()=="地域分析":
|
||||
from UThroughTrain4 import GeographicAnalysis_Widget
|
||||
self.geo_Widget = GeographicAnalysis_Widget.GeographicAnalysis_Form(MW.Buttom_Vbox.parent())
|
||||
#切换窗体
|
||||
MW.Buttom_Vbox.addWidget(self.geo_Widget)
|
||||
|
||||
self.geo_Widget.show()
|
||||
elif item.text()=="实时数据":
|
||||
print(2)#功能未实现
|
||||
elif item.text()=="标签工具":
|
||||
print(3)
|
||||
|
||||
|
||||
#============================================= 智钻工具 =======================================
|
BIN
partner_625781186/5.hoverMenu/ScreenShot/2.gif
Normal file
After Width: | Height: | Size: 7.2 MiB |
103
partner_625781186/5.hoverMenu/UCompetitiveProduct2/L2.ui
Normal file
|
@ -0,0 +1,103 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Form</class>
|
||||
<widget class="QWidget" name="Form">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>113</width>
|
||||
<height>119</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Form</string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background-color: rgb(85, 170, 255);</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="BaseTable" name="tableWidget">
|
||||
<attribute name="horizontalHeaderVisible">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<attribute name="verticalHeaderVisible">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<attribute name="verticalHeaderHighlightSections">
|
||||
<bool>true</bool>
|
||||
</attribute>
|
||||
<row>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</row>
|
||||
<row>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</row>
|
||||
<row>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</row>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>新建列</string>
|
||||
</property>
|
||||
</column>
|
||||
<item row="0" column="0">
|
||||
<property name="text">
|
||||
<string>评价分析</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<property name="text">
|
||||
<string>SKU分析</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<property name="text">
|
||||
<string>流量分析</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</item>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>BaseTable</class>
|
||||
<extends>QTableWidget</extends>
|
||||
<header>BaseElement</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
|
@ -0,0 +1,35 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
"""
|
||||
SKU分析菜单的界面。
|
||||
"""
|
||||
|
||||
from PyQt5 import QtGui, QtWidgets, QtCore
|
||||
from PyQt5.QtCore import *
|
||||
from PyQt5.QtGui import *
|
||||
from PyQt5.QtWidgets import *
|
||||
|
||||
from .Ui_SKU_Widget import Ui_Form
|
||||
|
||||
|
||||
class SKU_Form(QWidget, Ui_Form):
|
||||
"""
|
||||
Class documentation goes here.
|
||||
"""
|
||||
def __init__(self, parent=None):
|
||||
"""
|
||||
Constructor
|
||||
|
||||
@param parent reference to the parent widget
|
||||
@type QWidget
|
||||
"""
|
||||
super(SKU_Form, self).__init__(parent)
|
||||
self.setupUi(self)
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
ui = SKU_Form()
|
||||
|
||||
ui.show()
|
||||
sys.exit(app.exec_())
|
|
@ -0,0 +1,34 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
"""
|
||||
SKU分析菜单的界面。
|
||||
"""
|
||||
|
||||
from PyQt5 import QtGui, QtWidgets, QtCore
|
||||
from PyQt5.QtCore import *
|
||||
from PyQt5.QtGui import *
|
||||
from PyQt5.QtWidgets import *
|
||||
|
||||
from .Ui_SKU_Widget import Ui_Form
|
||||
|
||||
|
||||
class SKU_Form(QWidget, Ui_Form):
|
||||
"""
|
||||
Class documentation goes here.
|
||||
"""
|
||||
def __init__(self, parent=None):
|
||||
"""
|
||||
Constructor
|
||||
|
||||
@param parent reference to the parent widget
|
||||
@type QWidget
|
||||
"""
|
||||
super(SKU_Form, self).__init__(parent)
|
||||
self.setupUi(self)
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
ui = SKU_Form()
|
||||
|
||||
ui.show()
|
||||
sys.exit(app.exec_())
|
|
@ -0,0 +1,93 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Form</class>
|
||||
<widget class="QWidget" name="Form">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>578</width>
|
||||
<height>340</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Form</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout" stretch="0,1">
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<item>
|
||||
<widget class="QLabel" name="product_links">
|
||||
<property name="text">
|
||||
<string>宝贝链接:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLineEdit" name="product_links_textarea"/>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="start_collecting">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>开始采集</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="clear">
|
||||
<property name="text">
|
||||
<string>清空</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="export_data">
|
||||
<property name="text">
|
||||
<string>导出数据</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSplitter" name="splitter">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<widget class="QTableWidget" name="productHeader">
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>序号</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>SKU</string>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
<widget class="QTableWidget" name="productCountHeader">
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>序号</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>数量</string>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
74
partner_625781186/5.hoverMenu/UCompetitiveProduct2/Ui_L2.py
Normal file
|
@ -0,0 +1,74 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
# Form implementation generated from reading ui file 'D:\pyPro\hoverMenu\UCompetitiveProduct2\L2.ui'
|
||||
#
|
||||
# Created by: PyQt5 UI code generator 5.9
|
||||
#
|
||||
# WARNING! All changes made in this file will be lost!
|
||||
|
||||
from PyQt5 import QtCore, QtGui, QtWidgets
|
||||
|
||||
class Ui_Form(object):
|
||||
def setupUi(self, Form):
|
||||
Form.setObjectName("Form")
|
||||
Form.resize(113, 119)
|
||||
Form.setStyleSheet("background-color: rgb(85, 170, 255);")
|
||||
self.verticalLayout = QtWidgets.QVBoxLayout(Form)
|
||||
self.verticalLayout.setContentsMargins(0, 0, 0, 0)
|
||||
self.verticalLayout.setSpacing(0)
|
||||
self.verticalLayout.setObjectName("verticalLayout")
|
||||
self.tableWidget = BaseTable(Form)
|
||||
self.tableWidget.setObjectName("tableWidget")
|
||||
self.tableWidget.setColumnCount(1)
|
||||
self.tableWidget.setRowCount(3)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.tableWidget.setVerticalHeaderItem(0, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.tableWidget.setVerticalHeaderItem(1, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.tableWidget.setVerticalHeaderItem(2, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.tableWidget.setHorizontalHeaderItem(0, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
item.setTextAlignment(QtCore.Qt.AlignCenter)
|
||||
self.tableWidget.setItem(0, 0, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
item.setTextAlignment(QtCore.Qt.AlignCenter)
|
||||
self.tableWidget.setItem(1, 0, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
item.setTextAlignment(QtCore.Qt.AlignCenter)
|
||||
self.tableWidget.setItem(2, 0, item)
|
||||
self.tableWidget.horizontalHeader().setVisible(False)
|
||||
self.tableWidget.verticalHeader().setVisible(False)
|
||||
self.tableWidget.verticalHeader().setHighlightSections(True)
|
||||
self.verticalLayout.addWidget(self.tableWidget)
|
||||
|
||||
self.retranslateUi(Form)
|
||||
QtCore.QMetaObject.connectSlotsByName(Form)
|
||||
|
||||
def retranslateUi(self, Form):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Form.setWindowTitle(_translate("Form", "Form"))
|
||||
item = self.tableWidget.horizontalHeaderItem(0)
|
||||
item.setText(_translate("Form", "新建列"))
|
||||
__sortingEnabled = self.tableWidget.isSortingEnabled()
|
||||
self.tableWidget.setSortingEnabled(False)
|
||||
item = self.tableWidget.item(0, 0)
|
||||
item.setText(_translate("Form", "评价分析"))
|
||||
item = self.tableWidget.item(1, 0)
|
||||
item.setText(_translate("Form", "SKU分析"))
|
||||
item = self.tableWidget.item(2, 0)
|
||||
item.setText(_translate("Form", "流量分析"))
|
||||
self.tableWidget.setSortingEnabled(__sortingEnabled)
|
||||
|
||||
from BaseElement import BaseTable
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
Form = QtWidgets.QWidget()
|
||||
ui = Ui_Form()
|
||||
ui.setupUi(Form)
|
||||
Form.show()
|
||||
sys.exit(app.exec_())
|
||||
|
|
@ -0,0 +1,90 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
# Form implementation generated from reading ui file 'D:\pyPro\hoverMenu\UCompetitiveProduct2\SKU_Widget.ui'
|
||||
#
|
||||
# Created by: PyQt5 UI code generator 5.9
|
||||
#
|
||||
# WARNING! All changes made in this file will be lost!
|
||||
|
||||
from PyQt5 import QtCore, QtGui, QtWidgets
|
||||
|
||||
class Ui_Form(object):
|
||||
def setupUi(self, Form):
|
||||
Form.setObjectName("Form")
|
||||
Form.resize(578, 340)
|
||||
self.verticalLayout = QtWidgets.QVBoxLayout(Form)
|
||||
self.verticalLayout.setObjectName("verticalLayout")
|
||||
self.horizontalLayout = QtWidgets.QHBoxLayout()
|
||||
self.horizontalLayout.setObjectName("horizontalLayout")
|
||||
self.product_links = QtWidgets.QLabel(Form)
|
||||
self.product_links.setObjectName("product_links")
|
||||
self.horizontalLayout.addWidget(self.product_links)
|
||||
self.product_links_textarea = QtWidgets.QLineEdit(Form)
|
||||
self.product_links_textarea.setObjectName("product_links_textarea")
|
||||
self.horizontalLayout.addWidget(self.product_links_textarea)
|
||||
self.start_collecting = QtWidgets.QPushButton(Form)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.start_collecting.sizePolicy().hasHeightForWidth())
|
||||
self.start_collecting.setSizePolicy(sizePolicy)
|
||||
self.start_collecting.setObjectName("start_collecting")
|
||||
self.horizontalLayout.addWidget(self.start_collecting)
|
||||
self.clear = QtWidgets.QPushButton(Form)
|
||||
self.clear.setObjectName("clear")
|
||||
self.horizontalLayout.addWidget(self.clear)
|
||||
self.export_data = QtWidgets.QPushButton(Form)
|
||||
self.export_data.setObjectName("export_data")
|
||||
self.horizontalLayout.addWidget(self.export_data)
|
||||
self.verticalLayout.addLayout(self.horizontalLayout)
|
||||
self.splitter = QtWidgets.QSplitter(Form)
|
||||
self.splitter.setOrientation(QtCore.Qt.Horizontal)
|
||||
self.splitter.setObjectName("splitter")
|
||||
self.productHeader = QtWidgets.QTableWidget(self.splitter)
|
||||
self.productHeader.setObjectName("productHeader")
|
||||
self.productHeader.setColumnCount(2)
|
||||
self.productHeader.setRowCount(0)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.productHeader.setHorizontalHeaderItem(0, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.productHeader.setHorizontalHeaderItem(1, item)
|
||||
self.productCountHeader = QtWidgets.QTableWidget(self.splitter)
|
||||
self.productCountHeader.setObjectName("productCountHeader")
|
||||
self.productCountHeader.setColumnCount(2)
|
||||
self.productCountHeader.setRowCount(0)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.productCountHeader.setHorizontalHeaderItem(0, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.productCountHeader.setHorizontalHeaderItem(1, item)
|
||||
self.verticalLayout.addWidget(self.splitter)
|
||||
self.verticalLayout.setStretch(1, 1)
|
||||
|
||||
self.retranslateUi(Form)
|
||||
QtCore.QMetaObject.connectSlotsByName(Form)
|
||||
|
||||
def retranslateUi(self, Form):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Form.setWindowTitle(_translate("Form", "Form"))
|
||||
self.product_links.setText(_translate("Form", "宝贝链接:"))
|
||||
self.start_collecting.setText(_translate("Form", "开始采集"))
|
||||
self.clear.setText(_translate("Form", "清空"))
|
||||
self.export_data.setText(_translate("Form", "导出数据"))
|
||||
item = self.productHeader.horizontalHeaderItem(0)
|
||||
item.setText(_translate("Form", "序号"))
|
||||
item = self.productHeader.horizontalHeaderItem(1)
|
||||
item.setText(_translate("Form", "SKU"))
|
||||
item = self.productCountHeader.horizontalHeaderItem(0)
|
||||
item.setText(_translate("Form", "序号"))
|
||||
item = self.productCountHeader.horizontalHeaderItem(1)
|
||||
item.setText(_translate("Form", "数量"))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
Form = QtWidgets.QWidget()
|
||||
ui = Ui_Form()
|
||||
ui.setupUi(Form)
|
||||
Form.show()
|
||||
sys.exit(app.exec_())
|
||||
|
103
partner_625781186/5.hoverMenu/UMarketAnalysis3/L3.ui
Normal file
|
@ -0,0 +1,103 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Form</class>
|
||||
<widget class="QWidget" name="Form">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>113</width>
|
||||
<height>119</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Form</string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background-color: rgb(85, 170, 255);</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="BaseTable" name="tableWidget">
|
||||
<attribute name="horizontalHeaderVisible">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<attribute name="verticalHeaderVisible">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<attribute name="verticalHeaderHighlightSections">
|
||||
<bool>true</bool>
|
||||
</attribute>
|
||||
<row>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</row>
|
||||
<row>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</row>
|
||||
<row>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</row>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>新建列</string>
|
||||
</property>
|
||||
</column>
|
||||
<item row="0" column="0">
|
||||
<property name="text">
|
||||
<string>类目趋势</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<property name="text">
|
||||
<string>属性趋势</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<property name="text">
|
||||
<string>品牌分析</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</item>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>BaseTable</class>
|
||||
<extends>QTableWidget</extends>
|
||||
<header>BaseElement</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
74
partner_625781186/5.hoverMenu/UMarketAnalysis3/Ui_L3.py
Normal file
|
@ -0,0 +1,74 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
# Form implementation generated from reading ui file 'D:\pyPro\hoverMenu\UMarketAnalysis3\L3.ui'
|
||||
#
|
||||
# Created by: PyQt5 UI code generator 5.9
|
||||
#
|
||||
# WARNING! All changes made in this file will be lost!
|
||||
|
||||
from PyQt5 import QtCore, QtGui, QtWidgets
|
||||
|
||||
class Ui_Form(object):
|
||||
def setupUi(self, Form):
|
||||
Form.setObjectName("Form")
|
||||
Form.resize(113, 119)
|
||||
Form.setStyleSheet("background-color: rgb(85, 170, 255);")
|
||||
self.verticalLayout = QtWidgets.QVBoxLayout(Form)
|
||||
self.verticalLayout.setContentsMargins(0, 0, 0, 0)
|
||||
self.verticalLayout.setSpacing(0)
|
||||
self.verticalLayout.setObjectName("verticalLayout")
|
||||
self.tableWidget = BaseTable(Form)
|
||||
self.tableWidget.setObjectName("tableWidget")
|
||||
self.tableWidget.setColumnCount(1)
|
||||
self.tableWidget.setRowCount(3)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.tableWidget.setVerticalHeaderItem(0, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.tableWidget.setVerticalHeaderItem(1, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.tableWidget.setVerticalHeaderItem(2, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.tableWidget.setHorizontalHeaderItem(0, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
item.setTextAlignment(QtCore.Qt.AlignCenter)
|
||||
self.tableWidget.setItem(0, 0, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
item.setTextAlignment(QtCore.Qt.AlignCenter)
|
||||
self.tableWidget.setItem(1, 0, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
item.setTextAlignment(QtCore.Qt.AlignCenter)
|
||||
self.tableWidget.setItem(2, 0, item)
|
||||
self.tableWidget.horizontalHeader().setVisible(False)
|
||||
self.tableWidget.verticalHeader().setVisible(False)
|
||||
self.tableWidget.verticalHeader().setHighlightSections(True)
|
||||
self.verticalLayout.addWidget(self.tableWidget)
|
||||
|
||||
self.retranslateUi(Form)
|
||||
QtCore.QMetaObject.connectSlotsByName(Form)
|
||||
|
||||
def retranslateUi(self, Form):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Form.setWindowTitle(_translate("Form", "Form"))
|
||||
item = self.tableWidget.horizontalHeaderItem(0)
|
||||
item.setText(_translate("Form", "新建列"))
|
||||
__sortingEnabled = self.tableWidget.isSortingEnabled()
|
||||
self.tableWidget.setSortingEnabled(False)
|
||||
item = self.tableWidget.item(0, 0)
|
||||
item.setText(_translate("Form", "类目趋势"))
|
||||
item = self.tableWidget.item(1, 0)
|
||||
item.setText(_translate("Form", "属性趋势"))
|
||||
item = self.tableWidget.item(2, 0)
|
||||
item.setText(_translate("Form", "品牌分析"))
|
||||
self.tableWidget.setSortingEnabled(__sortingEnabled)
|
||||
|
||||
from BaseElement import BaseTable
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
Form = QtWidgets.QWidget()
|
||||
ui = Ui_Form()
|
||||
ui.setupUi(Form)
|
||||
Form.show()
|
||||
sys.exit(app.exec_())
|
||||
|
77
partner_625781186/5.hoverMenu/UStoreData1/L1.ui
Normal file
|
@ -0,0 +1,77 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Form</class>
|
||||
<widget class="QWidget" name="Form">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>113</width>
|
||||
<height>119</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Form</string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background-color: rgb(85, 170, 255);</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="BaseTable" name="tableWidget">
|
||||
<attribute name="horizontalHeaderVisible">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<attribute name="verticalHeaderVisible">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<attribute name="verticalHeaderHighlightSections">
|
||||
<bool>true</bool>
|
||||
</attribute>
|
||||
<row>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</row>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>新建列</string>
|
||||
</property>
|
||||
</column>
|
||||
<item row="0" column="0">
|
||||
<property name="text">
|
||||
<string>语音数据</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</item>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>BaseTable</class>
|
||||
<extends>QTableWidget</extends>
|
||||
<header>BaseElement</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
60
partner_625781186/5.hoverMenu/UStoreData1/Ui_L1.py
Normal file
|
@ -0,0 +1,60 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
# Form implementation generated from reading ui file 'D:\pyPro\hoverMenu\UStoreData1\L1.ui'
|
||||
#
|
||||
# Created by: PyQt5 UI code generator 5.9
|
||||
#
|
||||
# WARNING! All changes made in this file will be lost!
|
||||
|
||||
from PyQt5 import QtCore, QtGui, QtWidgets
|
||||
|
||||
class Ui_Form(object):
|
||||
def setupUi(self, Form):
|
||||
Form.setObjectName("Form")
|
||||
Form.resize(113, 119)
|
||||
Form.setStyleSheet("background-color: rgb(85, 170, 255);")
|
||||
self.verticalLayout = QtWidgets.QVBoxLayout(Form)
|
||||
self.verticalLayout.setContentsMargins(0, 0, 0, 0)
|
||||
self.verticalLayout.setSpacing(0)
|
||||
self.verticalLayout.setObjectName("verticalLayout")
|
||||
self.tableWidget = BaseTable(Form)
|
||||
self.tableWidget.setObjectName("tableWidget")
|
||||
self.tableWidget.setColumnCount(1)
|
||||
self.tableWidget.setRowCount(1)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.tableWidget.setVerticalHeaderItem(0, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.tableWidget.setHorizontalHeaderItem(0, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
item.setTextAlignment(QtCore.Qt.AlignCenter)
|
||||
self.tableWidget.setItem(0, 0, item)
|
||||
self.tableWidget.horizontalHeader().setVisible(False)
|
||||
self.tableWidget.verticalHeader().setVisible(False)
|
||||
self.tableWidget.verticalHeader().setHighlightSections(True)
|
||||
self.verticalLayout.addWidget(self.tableWidget)
|
||||
|
||||
self.retranslateUi(Form)
|
||||
QtCore.QMetaObject.connectSlotsByName(Form)
|
||||
|
||||
def retranslateUi(self, Form):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Form.setWindowTitle(_translate("Form", "Form"))
|
||||
item = self.tableWidget.horizontalHeaderItem(0)
|
||||
item.setText(_translate("Form", "新建列"))
|
||||
__sortingEnabled = self.tableWidget.isSortingEnabled()
|
||||
self.tableWidget.setSortingEnabled(False)
|
||||
item = self.tableWidget.item(0, 0)
|
||||
item.setText(_translate("Form", "语音数据"))
|
||||
self.tableWidget.setSortingEnabled(__sortingEnabled)
|
||||
|
||||
from BaseElement import BaseTable
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
Form = QtWidgets.QWidget()
|
||||
ui = Ui_Form()
|
||||
ui.setupUi(Form)
|
||||
Form.show()
|
||||
sys.exit(app.exec_())
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
"""
|
||||
Module implementing GeographicAnalysis_Form.
|
||||
"""
|
||||
|
||||
from PyQt5 import QtGui, QtWidgets, QtCore
|
||||
from PyQt5.QtCore import *
|
||||
from PyQt5.QtGui import *
|
||||
from PyQt5.QtWidgets import *
|
||||
|
||||
from .Ui_GeographicAnalysis_Widget import Ui_Form
|
||||
|
||||
|
||||
class GeographicAnalysis_Form(QWidget, Ui_Form):
|
||||
"""
|
||||
Class documentation goes here.
|
||||
"""
|
||||
def __init__(self, parent=None):
|
||||
"""
|
||||
Constructor
|
||||
|
||||
@param parent reference to the parent widget
|
||||
@type QWidget
|
||||
"""
|
||||
super(GeographicAnalysis_Form, self).__init__(parent)
|
||||
self.setupUi(self)
|
||||
|
||||
self.geographicAnalysis_table.horizontalHeader().setSectionResizeMode(1)#列宽设置
|
||||
|
||||
self.geographicAnalysis_table.horizontalHeader().setStretchLastSection(True); #充满列宽
|
||||
|
||||
self.geographicAnalysis_table.verticalHeader().setSectionResizeMode(1)#行高设置
|
||||
|
||||
self.geographicAnalysis_table.verticalHeader().setStretchLastSection(True); #充满行高
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
ui = GeographicAnalysis_Form()
|
||||
|
||||
ui.show()
|
||||
sys.exit(app.exec_())
|
|
@ -0,0 +1,42 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
"""
|
||||
Module implementing GeographicAnalysis_Form.
|
||||
"""
|
||||
|
||||
from PyQt5 import QtGui, QtWidgets, QtCore
|
||||
from PyQt5.QtCore import *
|
||||
from PyQt5.QtGui import *
|
||||
from PyQt5.QtWidgets import *
|
||||
|
||||
from .Ui_GeographicAnalysis_Widget import Ui_Form
|
||||
|
||||
|
||||
class GeographicAnalysis_Form(QWidget, Ui_Form):
|
||||
"""
|
||||
Class documentation goes here.
|
||||
"""
|
||||
def __init__(self, parent=None):
|
||||
"""
|
||||
Constructor
|
||||
|
||||
@param parent reference to the parent widget
|
||||
@type QWidget
|
||||
"""
|
||||
super(GeographicAnalysis_Form, self).__init__(parent)
|
||||
self.setupUi(self)
|
||||
|
||||
self.geographicAnalysis_table.horizontalHeader().setSectionResizeMode(1)#列宽设置
|
||||
|
||||
self.geographicAnalysis_table.horizontalHeader().setStretchLastSection(True); #充满列宽
|
||||
|
||||
self.geographicAnalysis_table.verticalHeader().setSectionResizeMode(1)#行高设置
|
||||
|
||||
self.geographicAnalysis_table.verticalHeader().setStretchLastSection(True); #充满行高
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
ui = GeographicAnalysis_Form()
|
||||
|
||||
ui.show()
|
||||
sys.exit(app.exec_())
|
|
@ -0,0 +1,121 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Form</class>
|
||||
<widget class="QWidget" name="Form">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>528</width>
|
||||
<height>300</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Form</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<item>
|
||||
<widget class="QLabel" name="analyzed_csv_label">
|
||||
<property name="text">
|
||||
<string>选择待分析的数据表(*.csv):</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="choose_file">
|
||||
<property name="text">
|
||||
<string>选择文件</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="start_analysis">
|
||||
<property name="text">
|
||||
<string>开始分析</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="clear_data">
|
||||
<property name="text">
|
||||
<string>数据清理</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="download_excel">
|
||||
<property name="text">
|
||||
<string>导出Excel</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||
<item>
|
||||
<widget class="QLabel" name="analyzed_csv">
|
||||
<property name="text">
|
||||
<string>当前文件:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLineEdit" name="file_name"/>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QTableWidget" name="geographicAnalysis_table">
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>省份</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>城市</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>订单数(市)</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>百分比(市)</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>订单数(省)</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>百分比(省)</string>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
109
partner_625781186/5.hoverMenu/UThroughTrain4/L4.ui
Normal file
|
@ -0,0 +1,109 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Form</class>
|
||||
<widget class="QWidget" name="Form">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>113</width>
|
||||
<height>119</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Form</string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background-color: rgb(85, 170, 255);</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="BaseTable" name="tableWidget">
|
||||
<property name="verticalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
<property name="horizontalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
<attribute name="horizontalHeaderVisible">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<attribute name="verticalHeaderVisible">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<attribute name="verticalHeaderHighlightSections">
|
||||
<bool>true</bool>
|
||||
</attribute>
|
||||
<row>
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
</row>
|
||||
<row>
|
||||
<property name="text">
|
||||
<string>2</string>
|
||||
</property>
|
||||
</row>
|
||||
<row>
|
||||
<property name="text">
|
||||
<string>3</string>
|
||||
</property>
|
||||
</row>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>新建列</string>
|
||||
</property>
|
||||
</column>
|
||||
<item row="0" column="0">
|
||||
<property name="text">
|
||||
<string>地域分析</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<property name="text">
|
||||
<string>实时数据</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<property name="text">
|
||||
<string>标签工具</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</item>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>BaseTable</class>
|
||||
<extends>QTableWidget</extends>
|
||||
<header>BaseElement</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
|
@ -0,0 +1,98 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
# Form implementation generated from reading ui file 'D:\pyPro\hoverMenu\UThroughTrain4\GeographicAnalysis_Widget.ui'
|
||||
#
|
||||
# Created by: PyQt5 UI code generator 5.9
|
||||
#
|
||||
# WARNING! All changes made in this file will be lost!
|
||||
|
||||
from PyQt5 import QtCore, QtGui, QtWidgets
|
||||
|
||||
class Ui_Form(object):
|
||||
def setupUi(self, Form):
|
||||
Form.setObjectName("Form")
|
||||
Form.resize(528, 300)
|
||||
self.verticalLayout = QtWidgets.QVBoxLayout(Form)
|
||||
self.verticalLayout.setObjectName("verticalLayout")
|
||||
self.horizontalLayout = QtWidgets.QHBoxLayout()
|
||||
self.horizontalLayout.setObjectName("horizontalLayout")
|
||||
self.analyzed_csv_label = QtWidgets.QLabel(Form)
|
||||
self.analyzed_csv_label.setObjectName("analyzed_csv_label")
|
||||
self.horizontalLayout.addWidget(self.analyzed_csv_label)
|
||||
self.choose_file = QtWidgets.QPushButton(Form)
|
||||
self.choose_file.setObjectName("choose_file")
|
||||
self.horizontalLayout.addWidget(self.choose_file)
|
||||
spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
|
||||
self.horizontalLayout.addItem(spacerItem)
|
||||
self.start_analysis = QtWidgets.QPushButton(Form)
|
||||
self.start_analysis.setObjectName("start_analysis")
|
||||
self.horizontalLayout.addWidget(self.start_analysis)
|
||||
self.clear_data = QtWidgets.QPushButton(Form)
|
||||
self.clear_data.setObjectName("clear_data")
|
||||
self.horizontalLayout.addWidget(self.clear_data)
|
||||
self.download_excel = QtWidgets.QPushButton(Form)
|
||||
self.download_excel.setObjectName("download_excel")
|
||||
self.horizontalLayout.addWidget(self.download_excel)
|
||||
self.verticalLayout.addLayout(self.horizontalLayout)
|
||||
self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
|
||||
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
|
||||
self.analyzed_csv = QtWidgets.QLabel(Form)
|
||||
self.analyzed_csv.setObjectName("analyzed_csv")
|
||||
self.horizontalLayout_2.addWidget(self.analyzed_csv)
|
||||
self.file_name = QtWidgets.QLineEdit(Form)
|
||||
self.file_name.setObjectName("file_name")
|
||||
self.horizontalLayout_2.addWidget(self.file_name)
|
||||
self.verticalLayout.addLayout(self.horizontalLayout_2)
|
||||
self.geographicAnalysis_table = QtWidgets.QTableWidget(Form)
|
||||
self.geographicAnalysis_table.setObjectName("geographicAnalysis_table")
|
||||
self.geographicAnalysis_table.setColumnCount(6)
|
||||
self.geographicAnalysis_table.setRowCount(0)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.geographicAnalysis_table.setHorizontalHeaderItem(0, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.geographicAnalysis_table.setHorizontalHeaderItem(1, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.geographicAnalysis_table.setHorizontalHeaderItem(2, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.geographicAnalysis_table.setHorizontalHeaderItem(3, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.geographicAnalysis_table.setHorizontalHeaderItem(4, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.geographicAnalysis_table.setHorizontalHeaderItem(5, item)
|
||||
self.verticalLayout.addWidget(self.geographicAnalysis_table)
|
||||
|
||||
self.retranslateUi(Form)
|
||||
QtCore.QMetaObject.connectSlotsByName(Form)
|
||||
|
||||
def retranslateUi(self, Form):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Form.setWindowTitle(_translate("Form", "Form"))
|
||||
self.analyzed_csv_label.setText(_translate("Form", "选择待分析的数据表(*.csv):"))
|
||||
self.choose_file.setText(_translate("Form", "选择文件"))
|
||||
self.start_analysis.setText(_translate("Form", "开始分析"))
|
||||
self.clear_data.setText(_translate("Form", "数据清理"))
|
||||
self.download_excel.setText(_translate("Form", "导出Excel"))
|
||||
self.analyzed_csv.setText(_translate("Form", "当前文件:"))
|
||||
item = self.geographicAnalysis_table.horizontalHeaderItem(0)
|
||||
item.setText(_translate("Form", "省份"))
|
||||
item = self.geographicAnalysis_table.horizontalHeaderItem(1)
|
||||
item.setText(_translate("Form", "城市"))
|
||||
item = self.geographicAnalysis_table.horizontalHeaderItem(2)
|
||||
item.setText(_translate("Form", "订单数(市)"))
|
||||
item = self.geographicAnalysis_table.horizontalHeaderItem(3)
|
||||
item.setText(_translate("Form", "百分比(市)"))
|
||||
item = self.geographicAnalysis_table.horizontalHeaderItem(4)
|
||||
item.setText(_translate("Form", "订单数(省)"))
|
||||
item = self.geographicAnalysis_table.horizontalHeaderItem(5)
|
||||
item.setText(_translate("Form", "百分比(省)"))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
Form = QtWidgets.QWidget()
|
||||
ui = Ui_Form()
|
||||
ui.setupUi(Form)
|
||||
Form.show()
|
||||
sys.exit(app.exec_())
|
||||
|
82
partner_625781186/5.hoverMenu/UThroughTrain4/Ui_L4.py
Normal file
|
@ -0,0 +1,82 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
# Form implementation generated from reading ui file 'D:\pyPro\hoverMenu\UThroughTrain4\L4.ui'
|
||||
#
|
||||
# Created by: PyQt5 UI code generator 5.9
|
||||
#
|
||||
# WARNING! All changes made in this file will be lost!
|
||||
|
||||
from PyQt5 import QtCore, QtGui, QtWidgets
|
||||
|
||||
class Ui_Form(object):
|
||||
def setupUi(self, Form):
|
||||
Form.setObjectName("Form")
|
||||
Form.resize(113, 119)
|
||||
Form.setStyleSheet("background-color: rgb(85, 170, 255);")
|
||||
self.verticalLayout = QtWidgets.QVBoxLayout(Form)
|
||||
self.verticalLayout.setContentsMargins(0, 0, 0, 0)
|
||||
self.verticalLayout.setSpacing(0)
|
||||
self.verticalLayout.setObjectName("verticalLayout")
|
||||
self.tableWidget = BaseTable(Form)
|
||||
self.tableWidget.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
|
||||
self.tableWidget.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
|
||||
self.tableWidget.setObjectName("tableWidget")
|
||||
self.tableWidget.setColumnCount(1)
|
||||
self.tableWidget.setRowCount(3)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.tableWidget.setVerticalHeaderItem(0, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.tableWidget.setVerticalHeaderItem(1, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.tableWidget.setVerticalHeaderItem(2, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
self.tableWidget.setHorizontalHeaderItem(0, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
item.setTextAlignment(QtCore.Qt.AlignCenter)
|
||||
self.tableWidget.setItem(0, 0, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
item.setTextAlignment(QtCore.Qt.AlignCenter)
|
||||
self.tableWidget.setItem(1, 0, item)
|
||||
item = QtWidgets.QTableWidgetItem()
|
||||
item.setTextAlignment(QtCore.Qt.AlignCenter)
|
||||
self.tableWidget.setItem(2, 0, item)
|
||||
self.tableWidget.horizontalHeader().setVisible(False)
|
||||
self.tableWidget.verticalHeader().setVisible(False)
|
||||
self.tableWidget.verticalHeader().setHighlightSections(True)
|
||||
self.verticalLayout.addWidget(self.tableWidget)
|
||||
|
||||
self.retranslateUi(Form)
|
||||
QtCore.QMetaObject.connectSlotsByName(Form)
|
||||
|
||||
def retranslateUi(self, Form):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Form.setWindowTitle(_translate("Form", "Form"))
|
||||
item = self.tableWidget.verticalHeaderItem(0)
|
||||
item.setText(_translate("Form", "1"))
|
||||
item = self.tableWidget.verticalHeaderItem(1)
|
||||
item.setText(_translate("Form", "2"))
|
||||
item = self.tableWidget.verticalHeaderItem(2)
|
||||
item.setText(_translate("Form", "3"))
|
||||
item = self.tableWidget.horizontalHeaderItem(0)
|
||||
item.setText(_translate("Form", "新建列"))
|
||||
__sortingEnabled = self.tableWidget.isSortingEnabled()
|
||||
self.tableWidget.setSortingEnabled(False)
|
||||
item = self.tableWidget.item(0, 0)
|
||||
item.setText(_translate("Form", "地域分析"))
|
||||
item = self.tableWidget.item(1, 0)
|
||||
item.setText(_translate("Form", "实时数据"))
|
||||
item = self.tableWidget.item(2, 0)
|
||||
item.setText(_translate("Form", "标签工具"))
|
||||
self.tableWidget.setSortingEnabled(__sortingEnabled)
|
||||
|
||||
from BaseElement import BaseTable
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
Form = QtWidgets.QWidget()
|
||||
ui = Ui_Form()
|
||||
ui.setupUi(Form)
|
||||
Form.show()
|
||||
sys.exit(app.exec_())
|
||||
|
181
partner_625781186/5.hoverMenu/Ui_Main.py
Normal file
|
@ -0,0 +1,181 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
# Form implementation generated from reading ui file 'D:\pyPro\hoverMenu\Main.ui'
|
||||
#
|
||||
# Created by: PyQt5 UI code generator 5.9
|
||||
#
|
||||
# WARNING! All changes made in this file will be lost!
|
||||
|
||||
from PyQt5 import QtCore, QtGui, QtWidgets
|
||||
|
||||
class Ui_MainWindow(object):
|
||||
def setupUi(self, MainWindow):
|
||||
MainWindow.setObjectName("MainWindow")
|
||||
MainWindow.resize(648, 493)
|
||||
MainWindow.setStyleSheet(" #MainWindow { border:none;}")
|
||||
self.centralWidget = QtWidgets.QWidget(MainWindow)
|
||||
self.centralWidget.setStyleSheet("#centralWidget {border:none;}")
|
||||
self.centralWidget.setObjectName("centralWidget")
|
||||
self.verticalLayout = QtWidgets.QVBoxLayout(self.centralWidget)
|
||||
self.verticalLayout.setContentsMargins(0, 0, 0, 0)
|
||||
self.verticalLayout.setSpacing(2)
|
||||
self.verticalLayout.setObjectName("verticalLayout")
|
||||
self.widget = QtWidgets.QWidget(self.centralWidget)
|
||||
self.widget.setStyleSheet("#widget {border:none;}")
|
||||
self.widget.setObjectName("widget")
|
||||
self.verticalLayout_14 = QtWidgets.QVBoxLayout(self.widget)
|
||||
self.verticalLayout_14.setContentsMargins(0, 0, 0, 0)
|
||||
self.verticalLayout_14.setSpacing(0)
|
||||
self.verticalLayout_14.setObjectName("verticalLayout_14")
|
||||
self.topWidget = QtWidgets.QWidget(self.widget)
|
||||
self.topWidget.setStyleSheet("#widget{ border:none; }")
|
||||
self.topWidget.setObjectName("topWidget")
|
||||
self.horizontalLayout = QtWidgets.QHBoxLayout(self.topWidget)
|
||||
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
|
||||
self.horizontalLayout.setSpacing(2)
|
||||
self.horizontalLayout.setObjectName("horizontalLayout")
|
||||
self.W1 = SingeleWidget(self.topWidget)
|
||||
self.W1.setObjectName("W1")
|
||||
self.gridLayout = QtWidgets.QGridLayout(self.W1)
|
||||
self.gridLayout.setContentsMargins(9, 9, 9, 9)
|
||||
self.gridLayout.setSpacing(2)
|
||||
self.gridLayout.setObjectName("gridLayout")
|
||||
self.filemenu_storeData_3 = B1(self.W1)
|
||||
self.filemenu_storeData_3.setText("")
|
||||
self.filemenu_storeData_3.setObjectName("filemenu_storeData_3")
|
||||
self.gridLayout.addWidget(self.filemenu_storeData_3, 0, 1, 1, 1)
|
||||
self.label_15 = QtWidgets.QLabel(self.W1)
|
||||
self.label_15.setAlignment(QtCore.Qt.AlignCenter)
|
||||
self.label_15.setObjectName("label_15")
|
||||
self.gridLayout.addWidget(self.label_15, 1, 1, 1, 1)
|
||||
spacerItem = QtWidgets.QSpacerItem(10, 20, QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum)
|
||||
self.gridLayout.addItem(spacerItem, 0, 0, 1, 1)
|
||||
spacerItem1 = QtWidgets.QSpacerItem(10, 20, QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum)
|
||||
self.gridLayout.addItem(spacerItem1, 0, 2, 1, 1)
|
||||
self.horizontalLayout.addWidget(self.W1)
|
||||
self.W2 = SingeleWidget(self.topWidget)
|
||||
self.W2.setObjectName("W2")
|
||||
self.gridLayout_2 = QtWidgets.QGridLayout(self.W2)
|
||||
self.gridLayout_2.setContentsMargins(9, 9, 9, 9)
|
||||
self.gridLayout_2.setSpacing(2)
|
||||
self.gridLayout_2.setObjectName("gridLayout_2")
|
||||
self.label_16 = QtWidgets.QLabel(self.W2)
|
||||
self.label_16.setAlignment(QtCore.Qt.AlignCenter)
|
||||
self.label_16.setObjectName("label_16")
|
||||
self.gridLayout_2.addWidget(self.label_16, 1, 1, 1, 1)
|
||||
self.filemenu_competitiveProductAnalysis_3 = B2(self.W2)
|
||||
self.filemenu_competitiveProductAnalysis_3.setText("")
|
||||
self.filemenu_competitiveProductAnalysis_3.setObjectName("filemenu_competitiveProductAnalysis_3")
|
||||
self.gridLayout_2.addWidget(self.filemenu_competitiveProductAnalysis_3, 0, 1, 1, 1)
|
||||
spacerItem2 = QtWidgets.QSpacerItem(10, 20, QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum)
|
||||
self.gridLayout_2.addItem(spacerItem2, 0, 0, 1, 1)
|
||||
spacerItem3 = QtWidgets.QSpacerItem(10, 20, QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum)
|
||||
self.gridLayout_2.addItem(spacerItem3, 0, 2, 1, 1)
|
||||
self.horizontalLayout.addWidget(self.W2)
|
||||
self.W3 = SingeleWidget(self.topWidget)
|
||||
self.W3.setObjectName("W3")
|
||||
self.gridLayout_4 = QtWidgets.QGridLayout(self.W3)
|
||||
self.gridLayout_4.setContentsMargins(9, 9, 9, 9)
|
||||
self.gridLayout_4.setSpacing(2)
|
||||
self.gridLayout_4.setObjectName("gridLayout_4")
|
||||
spacerItem4 = QtWidgets.QSpacerItem(10, 20, QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum)
|
||||
self.gridLayout_4.addItem(spacerItem4, 0, 0, 1, 1)
|
||||
self.filemenu_throughTrain_4 = B3(self.W3)
|
||||
self.filemenu_throughTrain_4.setAutoFillBackground(False)
|
||||
self.filemenu_throughTrain_4.setText("")
|
||||
self.filemenu_throughTrain_4.setObjectName("filemenu_throughTrain_4")
|
||||
self.gridLayout_4.addWidget(self.filemenu_throughTrain_4, 0, 1, 1, 1)
|
||||
self.label_19 = QtWidgets.QLabel(self.W3)
|
||||
self.label_19.setAlignment(QtCore.Qt.AlignCenter)
|
||||
self.label_19.setObjectName("label_19")
|
||||
self.gridLayout_4.addWidget(self.label_19, 1, 1, 1, 1)
|
||||
spacerItem5 = QtWidgets.QSpacerItem(10, 20, QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum)
|
||||
self.gridLayout_4.addItem(spacerItem5, 0, 2, 1, 1)
|
||||
self.horizontalLayout.addWidget(self.W3)
|
||||
self.W4 = SingeleWidget(self.topWidget)
|
||||
self.W4.setObjectName("W4")
|
||||
self.gridLayout_5 = QtWidgets.QGridLayout(self.W4)
|
||||
self.gridLayout_5.setContentsMargins(9, 9, 9, 9)
|
||||
self.gridLayout_5.setSpacing(2)
|
||||
self.gridLayout_5.setObjectName("gridLayout_5")
|
||||
spacerItem6 = QtWidgets.QSpacerItem(10, 20, QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum)
|
||||
self.gridLayout_5.addItem(spacerItem6, 0, 0, 1, 1)
|
||||
self.filemenu_throughTrain_3 = B4(self.W4)
|
||||
self.filemenu_throughTrain_3.setAutoFillBackground(False)
|
||||
self.filemenu_throughTrain_3.setText("")
|
||||
self.filemenu_throughTrain_3.setObjectName("filemenu_throughTrain_3")
|
||||
self.gridLayout_5.addWidget(self.filemenu_throughTrain_3, 0, 1, 1, 1)
|
||||
self.label_14 = QtWidgets.QLabel(self.W4)
|
||||
self.label_14.setAlignment(QtCore.Qt.AlignCenter)
|
||||
self.label_14.setObjectName("label_14")
|
||||
self.gridLayout_5.addWidget(self.label_14, 1, 1, 1, 1)
|
||||
spacerItem7 = QtWidgets.QSpacerItem(10, 20, QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum)
|
||||
self.gridLayout_5.addItem(spacerItem7, 0, 2, 1, 1)
|
||||
self.horizontalLayout.addWidget(self.W4)
|
||||
self.verticalLayout_19 = QtWidgets.QVBoxLayout()
|
||||
self.verticalLayout_19.setContentsMargins(0, 0, 0, 0)
|
||||
self.verticalLayout_19.setSpacing(2)
|
||||
self.verticalLayout_19.setObjectName("verticalLayout_19")
|
||||
self.label_17 = QtWidgets.QLabel(self.topWidget)
|
||||
self.label_17.setAlignment(QtCore.Qt.AlignCenter)
|
||||
self.label_17.setObjectName("label_17")
|
||||
self.verticalLayout_19.addWidget(self.label_17)
|
||||
self.label_18 = QtWidgets.QLabel(self.topWidget)
|
||||
self.label_18.setAlignment(QtCore.Qt.AlignCenter)
|
||||
self.label_18.setObjectName("label_18")
|
||||
self.verticalLayout_19.addWidget(self.label_18)
|
||||
self.horizontalLayout.addLayout(self.verticalLayout_19)
|
||||
spacerItem8 = QtWidgets.QSpacerItem(25, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
|
||||
self.horizontalLayout.addItem(spacerItem8)
|
||||
self.horizontalLayout.setStretch(0, 1)
|
||||
self.horizontalLayout.setStretch(1, 1)
|
||||
self.horizontalLayout.setStretch(2, 1)
|
||||
self.horizontalLayout.setStretch(3, 1)
|
||||
self.verticalLayout_14.addWidget(self.topWidget)
|
||||
self.buttomWidget = QtWidgets.QWidget(self.widget)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Expanding)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.buttomWidget.sizePolicy().hasHeightForWidth())
|
||||
self.buttomWidget.setSizePolicy(sizePolicy)
|
||||
self.buttomWidget.setObjectName("buttomWidget")
|
||||
self.Buttom_Vbox = QtWidgets.QVBoxLayout(self.buttomWidget)
|
||||
self.Buttom_Vbox.setContentsMargins(0, 0, 0, 0)
|
||||
self.Buttom_Vbox.setSpacing(0)
|
||||
self.Buttom_Vbox.setObjectName("Buttom_Vbox")
|
||||
self.verticalLayout_14.addWidget(self.buttomWidget)
|
||||
self.verticalLayout.addWidget(self.widget)
|
||||
MainWindow.setCentralWidget(self.centralWidget)
|
||||
self.action1 = QtWidgets.QAction(MainWindow)
|
||||
self.action1.setObjectName("action1")
|
||||
self.action2 = QtWidgets.QAction(MainWindow)
|
||||
self.action2.setObjectName("action2")
|
||||
|
||||
self.retranslateUi(MainWindow)
|
||||
QtCore.QMetaObject.connectSlotsByName(MainWindow)
|
||||
|
||||
def retranslateUi(self, MainWindow):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
|
||||
self.label_15.setText(_translate("MainWindow", "店铺数据"))
|
||||
self.label_16.setText(_translate("MainWindow", "竞品分析"))
|
||||
self.label_19.setText(_translate("MainWindow", "直通工具"))
|
||||
self.label_14.setText(_translate("MainWindow", "直通工具"))
|
||||
self.label_17.setText(_translate("MainWindow", "个人中心"))
|
||||
self.label_18.setText(_translate("MainWindow", "退出登录"))
|
||||
self.action1.setText(_translate("MainWindow", "1"))
|
||||
self.action2.setText(_translate("MainWindow", "2"))
|
||||
|
||||
from BaseElement import SingeleWidget
|
||||
from Menu import B1, B2, B3, B4
|
||||
import tbqrc_rc
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
MainWindow = QtWidgets.QMainWindow()
|
||||
ui = Ui_MainWindow()
|
||||
ui.setupUi(MainWindow)
|
||||
MainWindow.show()
|
||||
sys.exit(app.exec_())
|
||||
|
0
partner_625781186/5.hoverMenu/__init__.py
Normal file
68
partner_625781186/5.hoverMenu/hoverMenu.e4p
Normal file
|
@ -0,0 +1,68 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE Project SYSTEM "Project-5.1.dtd">
|
||||
<!-- eric project file for project hoverMenu -->
|
||||
<!-- Saved: 2018-07-07, 14:22:08 -->
|
||||
<!-- Copyright (C) 2018 , -->
|
||||
<Project version="5.1">
|
||||
<Language></Language>
|
||||
<Hash>873d0c0fade67dd54262d1b6954d5edfac966911</Hash>
|
||||
<ProgLanguage mixed="0">Python3</ProgLanguage>
|
||||
<ProjectType>PyQt5</ProjectType>
|
||||
<Version>0.1</Version>
|
||||
<Author></Author>
|
||||
<Email></Email>
|
||||
<Eol index="0"/>
|
||||
<Sources>
|
||||
<Source>BaseElement.py</Source>
|
||||
<Source>CommonHelper.py</Source>
|
||||
<Source>Main.py</Source>
|
||||
<Source>Menu.py</Source>
|
||||
<Source>UCompetitiveProduct2/SKU_Widget.py</Source>
|
||||
<Source>UCompetitiveProduct2/Ui_L2.py</Source>
|
||||
<Source>UCompetitiveProduct2/Ui_SKU_Widget.py</Source>
|
||||
<Source>UMarketAnalysis3/Ui_L3.py</Source>
|
||||
<Source>UStoreData1/Ui_L1.py</Source>
|
||||
<Source>UThroughTrain4/GeographicAnalysis_Widget.py</Source>
|
||||
<Source>UThroughTrain4/Ui_GeographicAnalysis_Widget.py</Source>
|
||||
<Source>UThroughTrain4/Ui_L4.py</Source>
|
||||
<Source>Ui_Main.py</Source>
|
||||
<Source>__init__.py</Source>
|
||||
<Source>tbqrc_rc.py</Source>
|
||||
</Sources>
|
||||
<Forms>
|
||||
<Form>Main.ui</Form>
|
||||
<Form>UCompetitiveProduct2/L2.ui</Form>
|
||||
<Form>UCompetitiveProduct2/SKU_Widget.ui</Form>
|
||||
<Form>UMarketAnalysis3/L3.ui</Form>
|
||||
<Form>UStoreData1/L1.ui</Form>
|
||||
<Form>UThroughTrain4/GeographicAnalysis_Widget.ui</Form>
|
||||
<Form>UThroughTrain4/GeographicAnalysis_Widget.ui</Form>
|
||||
<Form>UThroughTrain4/L4.ui</Form>
|
||||
</Forms>
|
||||
<Translations/>
|
||||
<Resources>
|
||||
<Resource>tbqrc.qrc</Resource>
|
||||
</Resources>
|
||||
<Interfaces/>
|
||||
<Others/>
|
||||
<Vcs>
|
||||
<VcsType>None</VcsType>
|
||||
</Vcs>
|
||||
<FiletypeAssociations>
|
||||
<FiletypeAssociation pattern="*.e4p" type="OTHERS"/>
|
||||
<FiletypeAssociation pattern="*.idl" type="INTERFACES"/>
|
||||
<FiletypeAssociation pattern="*.md" type="OTHERS"/>
|
||||
<FiletypeAssociation pattern="*.py" type="SOURCES"/>
|
||||
<FiletypeAssociation pattern="*.py3" type="SOURCES"/>
|
||||
<FiletypeAssociation pattern="*.pyw" type="SOURCES"/>
|
||||
<FiletypeAssociation pattern="*.pyw3" type="SOURCES"/>
|
||||
<FiletypeAssociation pattern="*.qm" type="TRANSLATIONS"/>
|
||||
<FiletypeAssociation pattern="*.qrc" type="RESOURCES"/>
|
||||
<FiletypeAssociation pattern="*.rst" type="OTHERS"/>
|
||||
<FiletypeAssociation pattern="*.ts" type="TRANSLATIONS"/>
|
||||
<FiletypeAssociation pattern="*.txt" type="OTHERS"/>
|
||||
<FiletypeAssociation pattern="*.ui" type="FORMS"/>
|
||||
<FiletypeAssociation pattern="README" type="OTHERS"/>
|
||||
<FiletypeAssociation pattern="README.*" type="OTHERS"/>
|
||||
</FiletypeAssociations>
|
||||
</Project>
|
5
partner_625781186/5.hoverMenu/readme.md
Normal file
|
@ -0,0 +1,5 @@
|
|||
# 进入式下拉菜单
|
||||
|
||||
![效果图](ScreenShot/2.gif)
|
||||
|
||||
[文档](Documentation/index-5.hoverMenu.md)
|
BIN
partner_625781186/5.hoverMenu/static/background.jpg
Normal file
After Width: | Height: | Size: 197 KiB |
After Width: | Height: | Size: 4.2 KiB |
BIN
partner_625781186/5.hoverMenu/static/download.jpg
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
partner_625781186/5.hoverMenu/static/drillTools.png
Normal file
After Width: | Height: | Size: 4.8 KiB |
BIN
partner_625781186/5.hoverMenu/static/exit.png
Normal file
After Width: | Height: | Size: 3.9 KiB |
BIN
partner_625781186/5.hoverMenu/static/finance.png
Normal file
After Width: | Height: | Size: 4.1 KiB |
BIN
partner_625781186/5.hoverMenu/static/icon.ico
Normal file
After Width: | Height: | Size: 66 KiB |
BIN
partner_625781186/5.hoverMenu/static/information.png
Normal file
After Width: | Height: | Size: 3.4 KiB |
BIN
partner_625781186/5.hoverMenu/static/login.jpg
Normal file
After Width: | Height: | Size: 37 KiB |
BIN
partner_625781186/5.hoverMenu/static/marketAnalysis.png
Normal file
After Width: | Height: | Size: 3.1 KiB |
BIN
partner_625781186/5.hoverMenu/static/microAmoy.png
Normal file
After Width: | Height: | Size: 3.8 KiB |
BIN
partner_625781186/5.hoverMenu/static/password.png
Normal file
After Width: | Height: | Size: 3.8 KiB |
BIN
partner_625781186/5.hoverMenu/static/qr_main.png
Normal file
After Width: | Height: | Size: 86 KiB |
BIN
partner_625781186/5.hoverMenu/static/register.jpg
Normal file
After Width: | Height: | Size: 37 KiB |
BIN
partner_625781186/5.hoverMenu/static/search.png
Normal file
After Width: | Height: | Size: 4.8 KiB |
BIN
partner_625781186/5.hoverMenu/static/store_data.png
Normal file
After Width: | Height: | Size: 4.8 KiB |
BIN
partner_625781186/5.hoverMenu/static/taobaoLogin.png
Normal file
After Width: | Height: | Size: 6.2 KiB |
BIN
partner_625781186/5.hoverMenu/static/taobaoLogin_title.png
Normal file
After Width: | Height: | Size: 5.9 KiB |
BIN
partner_625781186/5.hoverMenu/static/throughTrain.png
Normal file
After Width: | Height: | Size: 4.4 KiB |
BIN
partner_625781186/5.hoverMenu/static/username_headers.png
Normal file
After Width: | Height: | Size: 3.1 KiB |
660
partner_625781186/5.hoverMenu/style.css
Normal file
|
@ -0,0 +1,660 @@
|
|||
/*background-color: #3daee9; */
|
||||
#topWidget , TestWidget
|
||||
{
|
||||
color: #eff0f1;
|
||||
background-color: #3daee9;
|
||||
/* selection-background-color:#3daee9; */
|
||||
selection-color: #eff0f1;
|
||||
background-clip: border;
|
||||
border-image: none;
|
||||
border: 0px transparent black;
|
||||
outline: 0;
|
||||
|
||||
}
|
||||
TestWidget > QPushButton{
|
||||
border-width: 1px;
|
||||
|
||||
}
|
||||
|
||||
#buttomWidget
|
||||
{
|
||||
border-image: url(:/static/background.jpg);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
QWidget #topWidget >QWidget:hover , TestWidget:hover
|
||||
{
|
||||
background-color: #18465d;
|
||||
color: #eff0f1;
|
||||
}
|
||||
|
||||
QWidget:item:hover
|
||||
{
|
||||
background-color: #18465d;
|
||||
color: #eff0f1;
|
||||
}
|
||||
|
||||
/* QWidget:item:selected
|
||||
{
|
||||
background-color: #18465d;
|
||||
} */
|
||||
|
||||
|
||||
QWidget:disabled
|
||||
{
|
||||
color: #454545;
|
||||
background-color: #31363b;
|
||||
}
|
||||
|
||||
QAbstractItemView
|
||||
{
|
||||
alternate-background-color: #31363b;
|
||||
color: #eff0f1;
|
||||
border: 1px solid 3A3939;
|
||||
border-radius: 2px;
|
||||
}
|
||||
|
||||
QWidget:focus, QMenuBar:focus
|
||||
{
|
||||
border: 1px solid #3daee9;
|
||||
}
|
||||
|
||||
QTabWidget:focus, QCheckBox:focus, QRadioButton:focus, QSlider:focus
|
||||
{
|
||||
border: none;
|
||||
}
|
||||
|
||||
QLineEdit
|
||||
{
|
||||
background-color: #232629;
|
||||
padding: 5px;
|
||||
border-style: solid;
|
||||
border: 1px solid #76797C;
|
||||
border-radius: 2px;
|
||||
color: #eff0f1;
|
||||
}
|
||||
|
||||
QAbstractItemView QLineEdit
|
||||
{
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
QGroupBox {
|
||||
border:1px solid #76797C;
|
||||
border-radius: 2px;
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
QGroupBox::title {
|
||||
subcontrol-origin: margin;
|
||||
subcontrol-position: top center;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
padding-top: 10px;
|
||||
}
|
||||
|
||||
QAbstractScrollArea
|
||||
{
|
||||
border-radius: 2px;
|
||||
border: 1px solid #76797C;
|
||||
background-color: transparent;
|
||||
}
|
||||
/* --------------------------------------- QScrollBar -----------------------------------*/
|
||||
QScrollBar:horizontal
|
||||
{
|
||||
height: 15px;
|
||||
margin: 3px 15px 3px 15px;
|
||||
border: 1px transparent #2A2929;
|
||||
border-radius: 4px;
|
||||
background-color: #2A2929;
|
||||
}
|
||||
|
||||
QScrollBar::handle:horizontal
|
||||
{
|
||||
background-color: #605F5F;
|
||||
min-width: 5px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
QScrollBar::add-line:horizontal
|
||||
{
|
||||
margin: 0px 3px 0px 3px;
|
||||
border-image: url(:/qss_icons/rc/right_arrow_disabled.png);
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
subcontrol-position: right;
|
||||
subcontrol-origin: margin;
|
||||
}
|
||||
|
||||
QScrollBar::sub-line:horizontal
|
||||
{
|
||||
margin: 0px 3px 0px 3px;
|
||||
border-image: url(:/qss_icons/rc/left_arrow_disabled.png);
|
||||
height: 10px;
|
||||
width: 10px;
|
||||
subcontrol-position: left;
|
||||
subcontrol-origin: margin;
|
||||
}
|
||||
|
||||
QScrollBar::add-line:horizontal:hover,QScrollBar::add-line:horizontal:on
|
||||
{
|
||||
border-image: url(:/qss_icons/rc/right_arrow.png);
|
||||
height: 10px;
|
||||
width: 10px;
|
||||
subcontrol-position: right;
|
||||
subcontrol-origin: margin;
|
||||
}
|
||||
|
||||
|
||||
QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on
|
||||
{
|
||||
border-image: url(:/qss_icons/rc/left_arrow.png);
|
||||
height: 10px;
|
||||
width: 10px;
|
||||
subcontrol-position: left;
|
||||
subcontrol-origin: margin;
|
||||
}
|
||||
|
||||
QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal
|
||||
{
|
||||
background: none;
|
||||
}
|
||||
|
||||
|
||||
QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal
|
||||
{
|
||||
background: none;
|
||||
}
|
||||
|
||||
QScrollBar:vertical
|
||||
{
|
||||
background-color: #2A2929;
|
||||
width: 15px;
|
||||
margin: 15px 3px 15px 3px;
|
||||
border: 1px transparent #2A2929;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
QScrollBar::handle:vertical
|
||||
{
|
||||
background-color: #605F5F;
|
||||
min-height: 5px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
QScrollBar::sub-line:vertical
|
||||
{
|
||||
margin: 3px 0px 3px 0px;
|
||||
border-image: url(:/qss_icons/rc/up_arrow_disabled.png);
|
||||
height: 10px;
|
||||
width: 10px;
|
||||
subcontrol-position: top;
|
||||
subcontrol-origin: margin;
|
||||
}
|
||||
|
||||
QScrollBar::add-line:vertical
|
||||
{
|
||||
margin: 3px 0px 3px 0px;
|
||||
border-image: url(:/qss_icons/rc/down_arrow_disabled.png);
|
||||
height: 10px;
|
||||
width: 10px;
|
||||
subcontrol-position: bottom;
|
||||
subcontrol-origin: margin;
|
||||
}
|
||||
|
||||
QScrollBar::sub-line:vertical:hover,QScrollBar::sub-line:vertical:on
|
||||
{
|
||||
|
||||
border-image: url(:/qss_icons/rc/up_arrow.png);
|
||||
height: 10px;
|
||||
width: 10px;
|
||||
subcontrol-position: top;
|
||||
subcontrol-origin: margin;
|
||||
}
|
||||
|
||||
|
||||
QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on
|
||||
{
|
||||
border-image: url(:/qss_icons/rc/down_arrow.png);
|
||||
height: 10px;
|
||||
width: 10px;
|
||||
subcontrol-position: bottom;
|
||||
subcontrol-origin: margin;
|
||||
}
|
||||
|
||||
QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical
|
||||
{
|
||||
background: none;
|
||||
}
|
||||
|
||||
|
||||
QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical
|
||||
{
|
||||
background: none;
|
||||
}
|
||||
|
||||
QTextEdit
|
||||
{
|
||||
background-color: #232629;
|
||||
color: #eff0f1;
|
||||
border: 1px solid #76797C;
|
||||
}
|
||||
|
||||
QPlainTextEdit
|
||||
{
|
||||
background-color: #232629;;
|
||||
color: #eff0f1;
|
||||
border-radius: 2px;
|
||||
border: 1px solid #76797C;
|
||||
}
|
||||
|
||||
QHeaderView::section
|
||||
{
|
||||
background-color: #76797C;
|
||||
color: #eff0f1;
|
||||
padding: 5px;
|
||||
border: 1px solid #76797C;
|
||||
}
|
||||
|
||||
QSizeGrip {
|
||||
image: url(:/qss_icons/rc/sizegrip.png);
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
}
|
||||
|
||||
|
||||
QMainWindow::separator
|
||||
{
|
||||
background-color: #31363b;
|
||||
/* color: white; */
|
||||
padding-left: 4px;
|
||||
spacing: 2px;
|
||||
border: 1px dashed #76797C;
|
||||
}
|
||||
|
||||
QMainWindow::separator:hover
|
||||
{
|
||||
|
||||
background-color: #787876;
|
||||
color: white;
|
||||
padding-left: 4px;
|
||||
border: 1px solid #76797C;
|
||||
spacing: 2px;
|
||||
}
|
||||
|
||||
|
||||
QMenu::separator
|
||||
{
|
||||
height: 1px;
|
||||
background-color: #76797C;
|
||||
color: white;
|
||||
padding-left: 4px;
|
||||
margin-left: 10px;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
|
||||
QFrame
|
||||
{
|
||||
border-radius: 2px;
|
||||
border: 1px solid #76797C;
|
||||
}
|
||||
|
||||
QFrame[frameShape="0"]
|
||||
{
|
||||
border-radius: 2px;
|
||||
border: 1px transparent #76797C;
|
||||
}
|
||||
|
||||
QStackedWidget
|
||||
{
|
||||
border: 1px transparent black;
|
||||
}
|
||||
|
||||
/* --------------------------------------- QPushButton -----------------------------------*/
|
||||
QPushButton
|
||||
{
|
||||
color: #eff0f1;
|
||||
border-width: 1px;
|
||||
border-color: rgb(220, 225, 230);
|
||||
border-style: solid;
|
||||
padding: 5px;
|
||||
border-radius: 2px;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
QPushButton:disabled
|
||||
{
|
||||
background-color: #31363b;
|
||||
border-width: 1px;
|
||||
border-color: #454545;
|
||||
border-style: solid;
|
||||
padding-top: 5px;
|
||||
padding-bottom: 5px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
border-radius: 2px;
|
||||
color: #454545;
|
||||
}
|
||||
|
||||
QPushButton:focus {
|
||||
background-color: #0d354b;
|
||||
color: white;
|
||||
}
|
||||
|
||||
QPushButton:pressed
|
||||
{
|
||||
background-color: #3daee9;
|
||||
padding-top: -15px;
|
||||
padding-bottom: -17px;
|
||||
}
|
||||
|
||||
|
||||
|
||||
QPushButton:checked{
|
||||
background-color: #76797C;
|
||||
border-color: #6A6969;
|
||||
}
|
||||
|
||||
|
||||
|
||||
QLabel
|
||||
{
|
||||
color:white;
|
||||
|
||||
}
|
||||
|
||||
QTabWidget{
|
||||
border: 0px transparent black;
|
||||
}
|
||||
|
||||
QTabWidget::pane {
|
||||
border: 1px solid #76797C;
|
||||
padding: 5px;
|
||||
margin: 0px;
|
||||
}
|
||||
|
||||
QTabWidget::tab-bar {
|
||||
left: 5px; /* move to the right by 5px */
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
QTreeView, QListView
|
||||
{
|
||||
border: 1px solid #76797C;
|
||||
background-color: #232629;
|
||||
}
|
||||
|
||||
QTreeView:branch:selected, QTreeView:branch:hover
|
||||
{
|
||||
background: url(:/qss_icons/rc/transparent.png);
|
||||
}
|
||||
|
||||
QTreeView::branch:has-siblings:!adjoins-item {
|
||||
border-image: url(:/qss_icons/rc/transparent.png);
|
||||
}
|
||||
|
||||
QTreeView::branch:has-siblings:adjoins-item {
|
||||
border-image: url(:/qss_icons/rc/transparent.png);
|
||||
}
|
||||
|
||||
QTreeView::branch:!has-children:!has-siblings:adjoins-item {
|
||||
border-image: url(:/qss_icons/rc/transparent.png);
|
||||
}
|
||||
|
||||
QTreeView::branch:has-children:!has-siblings:closed,
|
||||
QTreeView::branch:closed:has-children:has-siblings {
|
||||
image: url(:/qss_icons/rc/branch_closed.png);
|
||||
}
|
||||
|
||||
QTreeView::branch:open:has-children:!has-siblings,
|
||||
QTreeView::branch:open:has-children:has-siblings {
|
||||
image: url(:/qss_icons/rc/branch_open.png);
|
||||
}
|
||||
|
||||
QTreeView::branch:has-children:!has-siblings:closed:hover,
|
||||
QTreeView::branch:closed:has-children:has-siblings:hover {
|
||||
image: url(:/qss_icons/rc/branch_closed-on.png);
|
||||
}
|
||||
|
||||
QTreeView::branch:open:has-children:!has-siblings:hover,
|
||||
QTreeView::branch:open:has-children:has-siblings:hover {
|
||||
image: url(:/qss_icons/rc/branch_open-on.png);
|
||||
}
|
||||
|
||||
QListView::item:!selected:hover, QTreeView::item:!selected:hover {
|
||||
background: #18465d;
|
||||
outline: 0;
|
||||
color: #eff0f1
|
||||
}
|
||||
|
||||
QListView::item:selected:hover, QTreeView::item:selected:hover {
|
||||
background: #287399;
|
||||
color: #eff0f1;
|
||||
}
|
||||
|
||||
QSlider::groove:horizontal {
|
||||
border: 1px solid #565a5e;
|
||||
height: 4px;
|
||||
background: #565a5e;
|
||||
margin: 0px;
|
||||
border-radius: 2px;
|
||||
}
|
||||
|
||||
QSlider::handle:horizontal {
|
||||
background: #232629;
|
||||
border: 1px solid #565a5e;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
margin: -8px 0;
|
||||
border-radius: 9px;
|
||||
}
|
||||
|
||||
QSlider::groove:vertical {
|
||||
border: 1px solid #565a5e;
|
||||
width: 4px;
|
||||
background: #565a5e;
|
||||
margin: 0px;
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
QSlider::handle:vertical {
|
||||
background: #232629;
|
||||
border: 1px solid #565a5e;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
margin: 0 -8px;
|
||||
border-radius: 9px;
|
||||
}
|
||||
|
||||
QToolButton {
|
||||
background-color: transparent;
|
||||
border: 1px transparent #76797C;
|
||||
border-radius: 2px;
|
||||
margin: 3px;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
QToolButton[popupMode="1"] { /* only for MenuButtonPopup */
|
||||
padding-right: 20px; /* make way for the popup button */
|
||||
border: 1px #76797C;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
QToolButton[popupMode="2"] { /* only for InstantPopup */
|
||||
padding-right: 10px; /* make way for the popup button */
|
||||
border: 1px #76797C;
|
||||
}
|
||||
|
||||
|
||||
QToolButton:hover, QToolButton::menu-button:hover {
|
||||
background-color: transparent;
|
||||
border: 1px solid #3daee9;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
QToolButton:checked, QToolButton:pressed,
|
||||
QToolButton::menu-button:pressed {
|
||||
background-color: #3daee9;
|
||||
border: 1px solid #3daee9;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
/* the subcontrol below is used only in the InstantPopup or DelayedPopup mode */
|
||||
QToolButton::menu-indicator {
|
||||
image: url(:/qss_icons/rc/down_arrow.png);
|
||||
top: -7px; left: -2px; /* shift it a bit */
|
||||
}
|
||||
|
||||
/* the subcontrols below are used only in the MenuButtonPopup mode */
|
||||
QToolButton::menu-button {
|
||||
border: 1px transparent #76797C;
|
||||
border-top-right-radius: 6px;
|
||||
border-bottom-right-radius: 6px;
|
||||
/* 16px width + 4px for border = 20px allocated above */
|
||||
width: 16px;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
QToolButton::menu-arrow {
|
||||
image: url(:/qss_icons/rc/down_arrow.png);
|
||||
}
|
||||
|
||||
QToolButton::menu-arrow:open {
|
||||
border: 1px solid #76797C;
|
||||
}
|
||||
|
||||
QPushButton::menu-indicator {
|
||||
subcontrol-origin: padding;
|
||||
subcontrol-position: bottom right;
|
||||
left: 8px;
|
||||
}
|
||||
|
||||
BaseMenuWidget{
|
||||
|
||||
border:1px solid rgb(17, 66, 116);
|
||||
}
|
||||
|
||||
QTableView
|
||||
{
|
||||
border: 1px solid rgb(17, 66, 116);
|
||||
/* border: 1px solid #76797C; */
|
||||
gridline-color: rgb(17, 66, 116);
|
||||
background-color: #232629;
|
||||
}
|
||||
|
||||
|
||||
QTableView, QHeaderView
|
||||
{
|
||||
border-radius: 0px;
|
||||
}
|
||||
|
||||
QTableView::item:pressed, QListView::item:pressed, QTreeView::item:pressed {
|
||||
background: #18465d;
|
||||
color: #eff0f1;
|
||||
}
|
||||
|
||||
QTableView::item:selected:active, QTreeView::item:selected:active, QListView::item:selected:active {
|
||||
background: #287399;
|
||||
color: #eff0f1;
|
||||
}
|
||||
|
||||
|
||||
QHeaderView
|
||||
{
|
||||
background-color: #31363b;
|
||||
border: 1px transparent;
|
||||
border-radius: 0px;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
|
||||
}
|
||||
|
||||
QHeaderView::section {
|
||||
background-color: #31363b;
|
||||
color: #eff0f1;
|
||||
padding: 5px;
|
||||
border: 1px solid #76797C;
|
||||
border-radius: 0px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one
|
||||
{
|
||||
border-top: 1px solid #76797C;
|
||||
}
|
||||
|
||||
QHeaderView::section::vertical
|
||||
{
|
||||
border-top: transparent;
|
||||
}
|
||||
|
||||
QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one
|
||||
{
|
||||
border-left: 1px solid #76797C;
|
||||
}
|
||||
|
||||
QHeaderView::section::horizontal
|
||||
{
|
||||
border-left: transparent;
|
||||
}
|
||||
|
||||
|
||||
QHeaderView::section:checked
|
||||
{
|
||||
color: white;
|
||||
background-color: #334e5e;
|
||||
}
|
||||
|
||||
/* style the sort indicator */
|
||||
QHeaderView::down-arrow {
|
||||
image: url(:/qss_icons/rc/down_arrow.png);
|
||||
}
|
||||
|
||||
QHeaderView::up-arrow {
|
||||
image: url(:/qss_icons/rc/up_arrow.png);
|
||||
}
|
||||
|
||||
|
||||
|
||||
QStatusBar::item {
|
||||
border: 0px transparent dark;
|
||||
}
|
||||
|
||||
|
||||
QFrame[height="3"], QFrame[width="3"] {
|
||||
background-color: #76797C;
|
||||
}
|
||||
|
||||
|
||||
QSplitter::handle {
|
||||
border: 1px dashed #76797C;
|
||||
}
|
||||
|
||||
QSplitter::handle:hover {
|
||||
background-color: #787876;
|
||||
border: 1px solid #76797C;
|
||||
}
|
||||
|
||||
QSplitter::handle:horizontal {
|
||||
width: 1px;
|
||||
}
|
||||
|
||||
QSplitter::handle:vertical {
|
||||
height: 1px;
|
||||
}
|
||||
|
||||
QProgressBar {
|
||||
border: 1px solid #76797C;
|
||||
border-radius: 5px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
QProgressBar::chunk {
|
||||
background-color: #05B8CC;
|
||||
}
|
||||
|
471
partner_625781186/5.hoverMenu/taobao.ui
Normal file
|
@ -0,0 +1,471 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<author>Lin</author>
|
||||
<class>MainWindow</class>
|
||||
<widget class="QMainWindow" name="MainWindow">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>606</width>
|
||||
<height>355</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>MainWindow</string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true"> #MainWindow { border:none;}</string>
|
||||
</property>
|
||||
<widget class="QWidget" name="centralWidget">
|
||||
<property name="styleSheet">
|
||||
<string notr="true">#centralWidget {border:none;}</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<item>
|
||||
<widget class="QWidget" name="widget" native="true">
|
||||
<property name="styleSheet">
|
||||
<string notr="true">#widget {border:none;}</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_14">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QWidget" name="topWidget" native="true">
|
||||
<property name="styleSheet">
|
||||
<string notr="true">#widget{ border:none; }</string>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout" stretch="1,1,1,1,0,0">
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="SingeleWidget" name="W1" native="true">
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<property name="leftMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<item row="0" column="1">
|
||||
<widget class="B1" name="filemenu_storeData_3">
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QLabel" name="label_15">
|
||||
<property name="text">
|
||||
<string>店铺数据</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Preferred</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<spacer name="horizontalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Preferred</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="SingeleWidget" name="W2" native="true">
|
||||
<layout class="QGridLayout" name="gridLayout_2">
|
||||
<property name="leftMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<item row="1" column="1">
|
||||
<widget class="QLabel" name="label_16">
|
||||
<property name="text">
|
||||
<string>竞品分析</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="B2" name="filemenu_competitiveProductAnalysis_3">
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<spacer name="horizontalSpacer_3">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Preferred</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<spacer name="horizontalSpacer_4">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Preferred</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="SingeleWidget" name="W3" native="true">
|
||||
<layout class="QGridLayout" name="gridLayout_4">
|
||||
<property name="leftMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<spacer name="horizontalSpacer_5">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Preferred</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="B3" name="filemenu_throughTrain_4">
|
||||
<property name="autoFillBackground">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QLabel" name="label_19">
|
||||
<property name="text">
|
||||
<string>直通工具</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<spacer name="horizontalSpacer_6">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Preferred</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="SingeleWidget" name="W4" native="true">
|
||||
<layout class="QGridLayout" name="gridLayout_5">
|
||||
<property name="leftMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<spacer name="horizontalSpacer_7">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Preferred</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="B4" name="filemenu_throughTrain_3">
|
||||
<property name="autoFillBackground">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QLabel" name="label_14">
|
||||
<property name="text">
|
||||
<string>直通工具</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<spacer name="horizontalSpacer_8">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Preferred</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_19">
|
||||
<item>
|
||||
<widget class="QLabel" name="label_17">
|
||||
<property name="text">
|
||||
<string>个人中心</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_18">
|
||||
<property name="text">
|
||||
<string>退出登录</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer_9">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>25</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QWidget" name="buttomWidget" native="true">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="Buttom_Vbox">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<action name="action1">
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="action2">
|
||||
<property name="text">
|
||||
<string>2</string>
|
||||
</property>
|
||||
</action>
|
||||
</widget>
|
||||
<layoutdefault spacing="2" margin="0"/>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>B1</class>
|
||||
<extends>QPushButton</extends>
|
||||
<header>Menu</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>B2</class>
|
||||
<extends>QPushButton</extends>
|
||||
<header>Menu</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>B3</class>
|
||||
<extends>QPushButton</extends>
|
||||
<header>Menu</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>B4</class>
|
||||
<extends>QPushButton</extends>
|
||||
<header>Menu</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>SingeleWidget</class>
|
||||
<extends>QWidget</extends>
|
||||
<header>Menu</header>
|
||||
<container>1</container>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources>
|
||||
<include location="tbqrc.qrc"/>
|
||||
</resources>
|
||||
<connections/>
|
||||
<designerdata>
|
||||
<property name="gridDeltaX">
|
||||
<number>10</number>
|
||||
</property>
|
||||
<property name="gridDeltaY">
|
||||
<number>10</number>
|
||||
</property>
|
||||
<property name="gridSnapX">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="gridSnapY">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="gridVisible">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</designerdata>
|
||||
</ui>
|
24
partner_625781186/5.hoverMenu/tbqrc.qrc
Normal file
|
@ -0,0 +1,24 @@
|
|||
<RCC>
|
||||
<qresource>
|
||||
<file>static/background.jpg</file>
|
||||
<file>static/competitiveProductAnalysis.png</file>
|
||||
<file>static/download.jpg</file>
|
||||
<file>static/drillTools.png</file>
|
||||
<file>static/exit.png</file>
|
||||
<file>static/finance.png</file>
|
||||
<file>static/icon.ico</file>
|
||||
<file>static/information.png</file>
|
||||
<file>static/login.jpg</file>
|
||||
<file>static/marketAnalysis.png</file>
|
||||
<file>static/microAmoy.png</file>
|
||||
<file>static/password.png</file>
|
||||
<file>static/qr_main.png</file>
|
||||
<file>static/register.jpg</file>
|
||||
<file>static/search.png</file>
|
||||
<file>static/store_data.png</file>
|
||||
<file>static/taobaoLogin.png</file>
|
||||
<file>static/taobaoLogin_title.png</file>
|
||||
<file>static/throughTrain.png</file>
|
||||
<file>static/username_headers.png</file>
|
||||
</qresource>
|
||||
</RCC>
|
32009
partner_625781186/5.hoverMenu/tbqrc_rc.py
Normal file
After Width: | Height: | Size: 812 KiB |
|
@ -0,0 +1,49 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
# Form implementation generated from reading ui file 'D:\QGroup_432987409\WoHowLearn\0.M_I_pyqt\partner_625781186\QML_QtQuick_PY\QDialog中嵌入qml窗体并缩放\py_qml.ui'
|
||||
#
|
||||
# Created by: PyQt5 UI code generator 5.9.2
|
||||
#
|
||||
# WARNING! All changes made in this file will be lost!
|
||||
|
||||
from PyQt5 import QtCore, QtGui, QtWidgets
|
||||
|
||||
class Ui_Dialog(object):
|
||||
def setupUi(self, Dialog):
|
||||
Dialog.setObjectName("Dialog")
|
||||
Dialog.resize(420, 317)
|
||||
Dialog.setSizeGripEnabled(True)
|
||||
self.verticalLayout = QtWidgets.QVBoxLayout(Dialog)
|
||||
self.verticalLayout.setObjectName("verticalLayout")
|
||||
self.widget = QtWidgets.QWidget(Dialog)
|
||||
self.widget.setObjectName("widget")
|
||||
self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.widget)
|
||||
self.verticalLayout_2.setObjectName("verticalLayout_2")
|
||||
self.pushButton = QtWidgets.QPushButton(self.widget)
|
||||
self.pushButton.setObjectName("pushButton")
|
||||
self.verticalLayout_2.addWidget(self.pushButton)
|
||||
self.widget_2 = QtWidgets.QWidget(self.widget)
|
||||
self.widget_2.setStyleSheet("background-color: rgb(85, 255, 127);")
|
||||
self.widget_2.setObjectName("widget_2")
|
||||
self.verticalLayout_2.addWidget(self.widget_2)
|
||||
self.verticalLayout.addWidget(self.widget)
|
||||
|
||||
self.retranslateUi(Dialog)
|
||||
QtCore.QMetaObject.connectSlotsByName(Dialog)
|
||||
|
||||
def retranslateUi(self, Dialog):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
|
||||
self.pushButton.setText(_translate("Dialog", "PushButton"))
|
||||
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
Dialog = QtWidgets.QDialog()
|
||||
ui = Ui_Dialog()
|
||||
ui.setupUi(Dialog)
|
||||
Dialog.show()
|
||||
sys.exit(app.exec_())
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE UserProject SYSTEM "UserProject-4.0.dtd">
|
||||
<!-- eric6 user project file for project py_qml -->
|
||||
<!-- Saved: 2018-04-16, 21:51:59 -->
|
||||
<!-- Copyright (C) 2018 , -->
|
||||
<UserProject version="4.0"/>
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE Tasks SYSTEM "Tasks-6.0.dtd">
|
||||
<!-- eric6 tasks file for project py_qml -->
|
||||
<!-- Saved: 2018-04-16, 21:51:59 -->
|
||||
<Tasks version="6.0">
|
||||
<ProjectScanFilter></ProjectScanFilter>
|
||||
</Tasks>
|
|
@ -0,0 +1,63 @@
|
|||
import QtQuick 2.8
|
||||
import QtQuick.Window 2.2
|
||||
import QtQuick.Controls 2.2
|
||||
import QtQuick.Controls.Material 2.0
|
||||
import QtQuick.Layouts 1.0
|
||||
|
||||
Rectangle {
|
||||
id: rectangle
|
||||
visible: true
|
||||
width: 300
|
||||
height: 300
|
||||
|
||||
color: "#0e0c0c"
|
||||
clip: false
|
||||
|
||||
GridLayout {
|
||||
anchors.leftMargin: 0
|
||||
anchors.topMargin: 0
|
||||
anchors.rightMargin: 107
|
||||
anchors.bottomMargin: 0
|
||||
anchors.fill: parent
|
||||
rows: 3
|
||||
columns: 2
|
||||
|
||||
Slider {
|
||||
id: slider
|
||||
Layout.columnSpan: 2
|
||||
value: 0.5
|
||||
}
|
||||
|
||||
Switch {
|
||||
id: switch1
|
||||
text: qsTr("Switch")
|
||||
Layout.columnSpan: 2
|
||||
}
|
||||
|
||||
ProgressBar {
|
||||
id: progressBar
|
||||
Layout.columnSpan: 2
|
||||
value: 0.5
|
||||
}
|
||||
|
||||
RadioButton {
|
||||
id: radioButton
|
||||
text: qsTr("Radio Button")
|
||||
checked: true
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
id: rectangle1
|
||||
x: 183
|
||||
y: -86
|
||||
width: 200
|
||||
height: 100
|
||||
color: "#514e4e"
|
||||
anchors.right: parent.right
|
||||
anchors.rightMargin: -80
|
||||
anchors.bottom: parent.top
|
||||
anchors.bottomMargin: 0
|
||||
rotation: 45
|
||||
}
|
||||
}
|
|
@ -0,0 +1,46 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE Project SYSTEM "Project-5.1.dtd">
|
||||
<!-- eric project file for project py_qml -->
|
||||
<!-- Saved: 2018-04-16, 21:43:34 -->
|
||||
<!-- Copyright (C) 2018 , -->
|
||||
<Project version="5.1">
|
||||
<Language>en_US</Language>
|
||||
<Hash>f9e9b523848f67179e680306c360ec26235c78df</Hash>
|
||||
<ProgLanguage mixed="0">Python3</ProgLanguage>
|
||||
<ProjectType>PyQt5</ProjectType>
|
||||
<Version>0.1</Version>
|
||||
<Author></Author>
|
||||
<Email></Email>
|
||||
<Eol index="0"/>
|
||||
<Sources>
|
||||
<Source>Ui_py_qml.py</Source>
|
||||
<Source>py_qml.py</Source>
|
||||
</Sources>
|
||||
<Forms>
|
||||
<Form>py_qml.ui</Form>
|
||||
</Forms>
|
||||
<Translations/>
|
||||
<Resources/>
|
||||
<Interfaces/>
|
||||
<Others/>
|
||||
<Vcs>
|
||||
<VcsType>None</VcsType>
|
||||
</Vcs>
|
||||
<FiletypeAssociations>
|
||||
<FiletypeAssociation pattern="*.e4p" type="OTHERS"/>
|
||||
<FiletypeAssociation pattern="*.idl" type="INTERFACES"/>
|
||||
<FiletypeAssociation pattern="*.md" type="OTHERS"/>
|
||||
<FiletypeAssociation pattern="*.py" type="SOURCES"/>
|
||||
<FiletypeAssociation pattern="*.py3" type="SOURCES"/>
|
||||
<FiletypeAssociation pattern="*.pyw" type="SOURCES"/>
|
||||
<FiletypeAssociation pattern="*.pyw3" type="SOURCES"/>
|
||||
<FiletypeAssociation pattern="*.qm" type="TRANSLATIONS"/>
|
||||
<FiletypeAssociation pattern="*.qrc" type="RESOURCES"/>
|
||||
<FiletypeAssociation pattern="*.rst" type="OTHERS"/>
|
||||
<FiletypeAssociation pattern="*.ts" type="TRANSLATIONS"/>
|
||||
<FiletypeAssociation pattern="*.txt" type="OTHERS"/>
|
||||
<FiletypeAssociation pattern="*.ui" type="FORMS"/>
|
||||
<FiletypeAssociation pattern="README" type="OTHERS"/>
|
||||
<FiletypeAssociation pattern="README.*" type="OTHERS"/>
|
||||
</FiletypeAssociations>
|
||||
</Project>
|
|
@ -0,0 +1,32 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
"""
|
||||
Module implementing Dialog.
|
||||
"""
|
||||
from PyQt5 import QtGui, QtWidgets, QtCore
|
||||
from PyQt5.QtCore import *
|
||||
from PyQt5.QtGui import *
|
||||
from PyQt5.QtWidgets import *
|
||||
from PyQt5.QtQuickWidgets import *
|
||||
|
||||
from Ui_py_qml import Ui_Dialog
|
||||
|
||||
|
||||
class Dialog(QDialog, Ui_Dialog):
|
||||
|
||||
def __init__(self, parent=None):
|
||||
|
||||
super(Dialog, self).__init__(parent)
|
||||
self.setupUi(self)
|
||||
self.m_quickWidget=QQuickWidget();
|
||||
self.m_quickWidget.setResizeMode(QQuickWidget.SizeRootObjectToView) ;
|
||||
self.m_quickWidget.setSource(QUrl("py_mqltest.qml"));
|
||||
self.verticalLayout.addWidget(self.m_quickWidget)
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
Dialog = Dialog()
|
||||
|
||||
Dialog.show()
|
||||
sys.exit(app.exec_())
|
|
@ -0,0 +1,46 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Dialog</class>
|
||||
<widget class="QDialog" name="Dialog">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>420</width>
|
||||
<height>317</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Dialog</string>
|
||||
</property>
|
||||
<property name="sizeGripEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<item>
|
||||
<widget class="QWidget" name="widget" native="true">
|
||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||
<item>
|
||||
<widget class="QPushButton" name="pushButton">
|
||||
<property name="text">
|
||||
<string>PushButton</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QWidget" name="widget_2" native="true">
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background-color: rgb(85, 255, 127);</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources>
|
||||
<include location="pyqml.qrc"/>
|
||||
</resources>
|
||||
<connections/>
|
||||
</ui>
|
|
@ -0,0 +1,7 @@
|
|||
# QDialog中嵌入QML界面并缩放控件
|
||||
|
||||
使用 QQuickWidget()和QQuickView 嵌入的话.qml文件根节点不能为 Window 和ApplicationWindow,
|
||||
只能为 Rectangle 或Item。
|
||||
见 [QMainWindow中嵌入QML ApplicationWindow界面并缩放控件](../QQmlApplicationEngine之qml嵌入qtwidget_qt5.8以上)
|
||||
|
||||
![截图2](ScreenShot/2.gif)
|
After Width: | Height: | Size: 853 KiB |
|
@ -0,0 +1,37 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
# Form implementation generated from reading ui file 'D:\pyPro\py_qml.ui'
|
||||
#
|
||||
# Created by: PyQt5 UI code generator 5.9.2
|
||||
#
|
||||
# WARNING! All changes made in this file will be lost!
|
||||
|
||||
from PyQt5 import QtCore, QtGui, QtWidgets
|
||||
|
||||
class Ui_MainWindow(object):
|
||||
def setupUi(self, MainWindow):
|
||||
MainWindow.setObjectName("MainWindow")
|
||||
MainWindow.resize(402, 518)
|
||||
self.centralwidget = QtWidgets.QWidget(MainWindow)
|
||||
self.centralwidget.setObjectName("centralwidget")
|
||||
self.verticalLayout = QtWidgets.QVBoxLayout(self.centralwidget)
|
||||
self.verticalLayout.setObjectName("verticalLayout")
|
||||
MainWindow.setCentralWidget(self.centralwidget)
|
||||
|
||||
self.retranslateUi(MainWindow)
|
||||
QtCore.QMetaObject.connectSlotsByName(MainWindow)
|
||||
|
||||
def retranslateUi(self, MainWindow):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtWidgets.QApplication(sys.argv)
|
||||
MainWindow = QtWidgets.QMainWindow()
|
||||
ui = Ui_MainWindow()
|
||||
ui.setupUi(MainWindow)
|
||||
MainWindow.show()
|
||||
sys.exit(app.exec_())
|
||||
|
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 20 KiB |
|
@ -0,0 +1,61 @@
|
|||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2017 The Qt Company Ltd.
|
||||
** Contact: https://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the documentation of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:FDL$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see https://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at https://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Free Documentation License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Free
|
||||
** Documentation License version 1.3 as published by the Free Software
|
||||
** Foundation and appearing in the file included in the packaging of
|
||||
** this file. Please review the following information to ensure
|
||||
** the GNU Free Documentation License version 1.3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/fdl-1.3.html.
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
/*!
|
||||
\example gallery
|
||||
\title Qt Quick Controls 2 - Gallery
|
||||
\ingroup qtquickcontrols2-examples
|
||||
\brief A gallery of controls.
|
||||
|
||||
\raw HTML
|
||||
<div class="table"><table style="background:transparent; border:0px">
|
||||
<tr><td style="border:0px">
|
||||
\endraw
|
||||
\image qtquickcontrols2-gallery-welcome.png
|
||||
\caption Welcome Screen
|
||||
\raw HTML
|
||||
</td><td style="border:0px">
|
||||
\endraw
|
||||
\image qtquickcontrols2-gallery-drawer.png
|
||||
\caption Side Drawer
|
||||
\raw HTML
|
||||
</td><td style="border:0px">
|
||||
\endraw
|
||||
\image qtquickcontrols2-gallery-menu.png
|
||||
\caption Options Menu
|
||||
\raw HTML
|
||||
</td></tr>
|
||||
</table></div>
|
||||
\endraw
|
||||
|
||||
The gallery example is a simple application with a drawer menu that contains
|
||||
all the \l {Qt Quick Controls 2}. Each menu item opens a page that shows the
|
||||
graphical appearance of a control, allows you to interact with the control,
|
||||
and explains in which circumstances it is handy to use this control.
|
||||
|
||||
\include examples-run.qdocinc
|
||||
*/
|
After Width: | Height: | Size: 219 B |
After Width: | Height: | Size: 299 B |
After Width: | Height: | Size: 344 B |
After Width: | Height: | Size: 473 B |
After Width: | Height: | Size: 213 B |
After Width: | Height: | Size: 286 B |
After Width: | Height: | Size: 345 B |
After Width: | Height: | Size: 420 B |
After Width: | Height: | Size: 232 B |
After Width: | Height: | Size: 366 B |
After Width: | Height: | Size: 499 B |
After Width: | Height: | Size: 642 B |
After Width: | Height: | Size: 3 KiB |
After Width: | Height: | Size: 3.2 KiB |
After Width: | Height: | Size: 3.3 KiB |
After Width: | Height: | Size: 3.5 KiB |
After Width: | Height: | Size: 768 B |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.8 KiB |
After Width: | Height: | Size: 2.7 KiB |
After Width: | Height: | Size: 220 B |