diff --git a/partner_625781186/5.hoverMenu/BaseElement.py b/partner_625781186/5.hoverMenu/BaseElement.py
deleted file mode 100644
index 03db6c4..0000000
--- a/partner_625781186/5.hoverMenu/BaseElement.py
+++ /dev/null
@@ -1,215 +0,0 @@
-# -*- 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)
diff --git a/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.BaseElement.html b/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.BaseElement.html
deleted file mode 100644
index 16529e1..0000000
--- a/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.BaseElement.html
+++ /dev/null
@@ -1,268 +0,0 @@
-
-
-5.hoverMenu.BaseElement
-
-
-
-
-5.hoverMenu.BaseElement
-
-description: 抽象类模块
-
-Created on 2018年7月7日
-
-email: 625781186@qq.com
-
-Global Attributes
-
-Classes
-
-Functions
-
-
-
-BaseButton
-
-Derived from
-QPushButton
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-BaseButton (Constructor)
-BaseButton(parent=None)
-
-BaseButton._createLabel
-_createLabel(path)
-
- path:主菜单图标的路径。
-
-BaseButton._todo
-_todo(*args, **kwgs)
-
- 每个按钮要重新实现的功能函数。
-
-BaseButton.resizeEvent
-resizeEvent(e)
-
-
-
-
-BaseMenuWidget
-
-Derived from
-QWidget
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-BaseMenuWidget (Constructor)
-BaseMenuWidget(parent=None)
-
- _hideFlag__Menu: 0时隐藏,1时显示;
-
-BaseMenuWidget._deleteSomething
-_deleteSomething()
-
-BaseMenuWidget._showSomething
-_showSomething(**kwgs)
-
-BaseMenuWidget.enterEvent
-enterEvent(e)
-
-BaseMenuWidget.leaveEvent
-leaveEvent(e)
-
-
-
-
-BaseTable
-
-Derived from
-QTableWidget
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-BaseTable (Constructor)
-BaseTable(parent=None)
-
-
-
-
-SingeleWidget
-
- 菜单条的每个框。
-
-Derived from
-QWidget
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-SingeleWidget (Constructor)
-SingeleWidget(parent=None)
-
- _hideFlag__Button: 0 表明没有显示弹窗;1表示显示了弹窗。
-
-SingeleWidget._creatMenu
-_creatMenu(L_Name, parent)
-
- Main.py中被调用。把LX类实例化。
-
-SingeleWidget._jugement
-_jugement()
-
- 离开上面窗体之后80ms, 1:进入旁边的菜单框;2:进入弹出的菜单。
-
-SingeleWidget.enterEvent
-enterEvent(e)
-
-鼠标移入label后 , _hideFlag__Button=1,表明显示了弹窗。
-
-SingeleWidget.leaveEvent
-leaveEvent(e)
-
- 离开时判断是否显示了窗体,80ms后发射到_jugement去检测。
-
-
-
-
-showERROR
-showERROR()
-
-
-
-
\ No newline at end of file
diff --git a/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.BaseElement.md b/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.BaseElement.md
deleted file mode 100644
index 0c12e91..0000000
--- a/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.BaseElement.md
+++ /dev/null
@@ -1,252 +0,0 @@
-
-
-
-
-
-5.hoverMenu.BaseElement
-
-description: 抽象类模块
-
-Created on 2018年7月7日
-
-email: 625781186@qq.com
-
-Global Attributes
-
-Classes
-
-Functions
-
-
-
-BaseButton
-
-Derived from
-QPushButton
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-BaseButton (Constructor)
-BaseButton(parent=None)
-
-BaseButton._createLabel
-_createLabel(path)
-
- path:主菜单图标的路径。
-
-BaseButton._todo
-_todo(*args, **kwgs)
-
- 每个按钮要重新实现的功能函数。
-
-BaseButton.resizeEvent
-resizeEvent(e)
-
-
-
-
-BaseMenuWidget
-
-Derived from
-QWidget
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-BaseMenuWidget (Constructor)
-BaseMenuWidget(parent=None)
-
- _hideFlag__Menu: 0时隐藏,1时显示;
-
-BaseMenuWidget._deleteSomething
-_deleteSomething()
-
-BaseMenuWidget._showSomething
-_showSomething(**kwgs)
-
-BaseMenuWidget.enterEvent
-enterEvent(e)
-
-BaseMenuWidget.leaveEvent
-leaveEvent(e)
-
-
-
-
-BaseTable
-
-Derived from
-QTableWidget
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-BaseTable (Constructor)
-BaseTable(parent=None)
-
-
-
-
-SingeleWidget
-
- 菜单条的每个框。
-
-Derived from
-QWidget
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-SingeleWidget (Constructor)
-SingeleWidget(parent=None)
-
- _hideFlag__Button: 0 表明没有显示弹窗;1表示显示了弹窗。
-
-SingeleWidget._creatMenu
-_creatMenu(L_Name, parent)
-
- Main.py中被调用。把LX类实例化。
-
-SingeleWidget._jugement
-_jugement()
-
- 离开上面窗体之后80ms, 1:进入旁边的菜单框;2:进入弹出的菜单。
-
-SingeleWidget.enterEvent
-enterEvent(e)
-
-鼠标移入label后 , _hideFlag__Button=1,表明显示了弹窗。
-
-SingeleWidget.leaveEvent
-leaveEvent(e)
-
- 离开时判断是否显示了窗体,80ms后发射到_jugement去检测。
-
-
-
-
-showERROR
-showERROR()
-
-
-
-
\ No newline at end of file
diff --git a/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.CommonHelper.html b/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.CommonHelper.html
deleted file mode 100644
index 4964270..0000000
--- a/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.CommonHelper.html
+++ /dev/null
@@ -1,78 +0,0 @@
-
-
-5.hoverMenu.CommonHelper
-
-
-
-
-5.hoverMenu.CommonHelper
-
-读取CSS用模块。
-
-Global Attributes
-
-Classes
-
-Functions
-
-
-
-CommonHelper
-
-Derived from
-None
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-CommonHelper (Constructor)
-CommonHelper()
-
-CommonHelper.readQss (static)
-readQss()
-
-
-
-
\ No newline at end of file
diff --git a/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.CommonHelper.md b/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.CommonHelper.md
deleted file mode 100644
index 92ad2d1..0000000
--- a/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.CommonHelper.md
+++ /dev/null
@@ -1,62 +0,0 @@
-
-
-
-
-
-5.hoverMenu.CommonHelper
-
-读取CSS用模块。
-
-Global Attributes
-
-Classes
-
-Functions
-
-
-
-CommonHelper
-
-Derived from
-None
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-CommonHelper (Constructor)
-CommonHelper()
-
-CommonHelper.readQss (static)
-readQss()
-
-
-
-
\ No newline at end of file
diff --git a/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.Main.html b/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.Main.html
deleted file mode 100644
index 45831f1..0000000
--- a/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.Main.html
+++ /dev/null
@@ -1,95 +0,0 @@
-
-
-5.hoverMenu.Main
-
-
-
-
-5.hoverMenu.Main
-
-主函数.
-
-description: pyqt5悬浮下拉菜单
-
-Created on 2018年7月7日
-
-email: 625781186@qq.com
-
-Global Attributes
-
-Classes
-
-Functions
-
-
-
-MainWindow
-
- Class documentation goes here.
-
-Derived from
-QMainWindow, Ui_MainWindow
-Class Attributes
-
-app |
qssStyle |
styleFile |
ui |
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-MainWindow (Constructor)
-MainWindow(parent=None)
-
- Constructor
-
-- parent (QWidget)
--
-reference to the parent widget
-
-
-MainWindow.enterEvent
-enterEvent(e)
-
-自定义标题栏需要重置光标。
-
-
-
-
\ No newline at end of file
diff --git a/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.Main.md b/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.Main.md
index 75f0184..6401bf9 100644
--- a/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.Main.md
+++ b/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.Main.md
@@ -1,6 +1,10 @@
+5.hoverMenu.Main
+
+
5.hoverMenu.Main
@@ -11,6 +15,8 @@ description: pyqt5悬浮下拉菜单
Created on 2018年7月7日
+Author: 人间白头
+
email: 625781186@qq.com
Global Attributes
@@ -21,7 +27,7 @@ email: 625781186@qq.com
Functions
@@ -32,13 +38,13 @@ email: 625781186@qq.com
MainWindow
- Class documentation goes here.
+ 主窗口.
Derived from
-QMainWindow, Ui_MainWindow
+Ui_MainWindow, QMainWindow
Class Attributes
-app |
qssStyle |
styleFile |
ui |
+app |
ui |
Class Methods
@@ -48,10 +54,16 @@ QMainWindow, Ui_MainWindow
Static Methods
@@ -62,18 +74,23 @@ QMainWindow, Ui_MainWindow
MainWindow (Constructor)
MainWindow(parent=None)
- Constructor
-
-- parent (QWidget)
--
-reference to the parent widget
-
-
-MainWindow.enterEvent
-enterEvent(e)
+
+
+
+
+MainWindow.__initUI
+__initUI()
-自定义标题栏需要重置光标。
-
+ 一些无法在基础元素累中初始化的参数。
+
+MainWindow.readCSS
+readCSS(obj)
+
+ 用于设置样式,SingeleWidget类中也需要用到。
+
+MainWindow.start_animation
+start_animation(checked)
+
\ No newline at end of file
diff --git a/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.Menu.html b/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.Menu.html
deleted file mode 100644
index f12988b..0000000
--- a/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.Menu.html
+++ /dev/null
@@ -1,358 +0,0 @@
-
-
-5.hoverMenu.Menu
-
-
-
-
-5.hoverMenu.Menu
-
-description: 要增加菜单栏时,在这里添加。
-
-Created on 2018年7月7日
-
-email: 625781186@qq.com
-
-BX: 主菜单按钮;
-LX:子菜单按钮-继承了UI类和 隐藏基类;
-
-Global Attributes
-
-Classes
-
-Functions
-
-
-
-B1
-
-Derived from
-BaseButton
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-B1 (Constructor)
-B1(parent=None)
-
-B1._todo
-_todo(*args, **kwgs)
-
-
-
-
-B2
-
-Derived from
-BaseButton
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-B2 (Constructor)
-B2(parent=None)
-
-B2._todo
-_todo(*args, **kwgs)
-
-
-
-
-B3
-
-Derived from
-BaseButton
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-B3 (Constructor)
-B3(parent=None)
-
-B3._todo
-_todo(*args, **kwgs)
-
-
-
-
-B4
-
-Derived from
-BaseButton
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-B4 (Constructor)
-B4(parent=None)
-
-B4._todo
-_todo(*args, **kwgs)
-
-
-
-
-L1
-
-Derived from
-Ui_L1.Ui_Form, BaseMenuWidget
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-L1 (Constructor)
-L1(parent=None)
-
-L1._showSomething
-_showSomething(item)
-
-
-
-
-L2
-
-Derived from
-Ui_L2.Ui_Form, BaseMenuWidget
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-L2 (Constructor)
-L2(parent=None)
-
-L2._showSomething
-_showSomething(item)
-
-
-
-
-L3
-
-Derived from
-Ui_L3.Ui_Form, BaseMenuWidget
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-L3 (Constructor)
-L3(parent=None)
-
-L3._showSomething
-_showSomething(item)
-
-
-
-
-L4
-
-Derived from
-Ui_L4.Ui_Form, BaseMenuWidget
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-L4 (Constructor)
-L4(parent=None)
-
-L4._showSomething
-_showSomething(item)
-
-
-
-
\ No newline at end of file
diff --git a/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.Menu.md b/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.Menu.md
deleted file mode 100644
index a90c371..0000000
--- a/partner_625781186/5.hoverMenu/Documentation/5.hoverMenu.Menu.md
+++ /dev/null
@@ -1,342 +0,0 @@
-
-
-
-
-
-5.hoverMenu.Menu
-
-description: 要增加菜单栏时,在这里添加。
-
-Created on 2018年7月7日
-
-email: 625781186@qq.com
-
-BX: 主菜单按钮;
-LX:子菜单按钮-继承了UI类和 隐藏基类;
-
-Global Attributes
-
-Classes
-
-Functions
-
-
-
-B1
-
-Derived from
-BaseButton
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-B1 (Constructor)
-B1(parent=None)
-
-B1._todo
-_todo(*args, **kwgs)
-
-
-
-
-B2
-
-Derived from
-BaseButton
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-B2 (Constructor)
-B2(parent=None)
-
-B2._todo
-_todo(*args, **kwgs)
-
-
-
-
-B3
-
-Derived from
-BaseButton
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-B3 (Constructor)
-B3(parent=None)
-
-B3._todo
-_todo(*args, **kwgs)
-
-
-
-
-B4
-
-Derived from
-BaseButton
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-B4 (Constructor)
-B4(parent=None)
-
-B4._todo
-_todo(*args, **kwgs)
-
-
-
-
-L1
-
-Derived from
-Ui_L1.Ui_Form, BaseMenuWidget
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-L1 (Constructor)
-L1(parent=None)
-
-L1._showSomething
-_showSomething(item)
-
-
-
-
-L2
-
-Derived from
-Ui_L2.Ui_Form, BaseMenuWidget
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-L2 (Constructor)
-L2(parent=None)
-
-L2._showSomething
-_showSomething(item)
-
-
-
-
-L3
-
-Derived from
-Ui_L3.Ui_Form, BaseMenuWidget
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-L3 (Constructor)
-L3(parent=None)
-
-L3._showSomething
-_showSomething(item)
-
-
-
-
-L4
-
-Derived from
-Ui_L4.Ui_Form, BaseMenuWidget
-Class Attributes
-
-Class Methods
-
-Methods
-
-Static Methods
-
-
-L4 (Constructor)
-L4(parent=None)
-
-L4._showSomething
-_showSomething(item)
-
-
-
-
\ No newline at end of file
diff --git a/partner_625781186/5.hoverMenu/Documentation/index-5.hoverMenu.html b/partner_625781186/5.hoverMenu/Documentation/index-5.hoverMenu.html
deleted file mode 100644
index bb42618..0000000
--- a/partner_625781186/5.hoverMenu/Documentation/index-5.hoverMenu.html
+++ /dev/null
@@ -1,42 +0,0 @@
-
-
-5.hoverMenu
-
-
-
-
-5.hoverMenu
-
-
-
-Modules
-
-
\ No newline at end of file
diff --git a/partner_625781186/5.hoverMenu/Documentation/index-5.hoverMenu.md b/partner_625781186/5.hoverMenu/Documentation/index-5.hoverMenu.md
deleted file mode 100644
index 9e28799..0000000
--- a/partner_625781186/5.hoverMenu/Documentation/index-5.hoverMenu.md
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-5.hoverMenu
-
-
-
-Modules
-
-
\ No newline at end of file
diff --git a/partner_625781186/5.hoverMenu/Documentation/index.html b/partner_625781186/5.hoverMenu/Documentation/index.html
deleted file mode 100644
index a899830..0000000
--- a/partner_625781186/5.hoverMenu/Documentation/index.html
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
-Table of contents
-
-
-
-
-Table of contents
-
-
-Packages
-
-
-
\ No newline at end of file
diff --git a/partner_625781186/5.hoverMenu/Main.py b/partner_625781186/5.hoverMenu/Main.py
index b35dfcf..5e57736 100644
--- a/partner_625781186/5.hoverMenu/Main.py
+++ b/partner_625781186/5.hoverMenu/Main.py
@@ -7,57 +7,130 @@ description: pyqt5悬浮下拉菜单
Created on 2018年7月7日
+Author: 人间白头
+
email: 625781186@qq.com
"""
+import sys
from PyQt5 import QtGui, QtWidgets, QtCore
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
-from Menu import *
+from U_FuncWidget.Menu import *
from Ui_Main import Ui_MainWindow
-#读取CSS用
-from CommonHelper import CommonHelper
-class MainWindow(QMainWindow, Ui_MainWindow):
+from Tools.CommonHelper import CommonHelper #读取CSS用
+from Tools.qmf_showError import w_showERROR #弹窗报错
+
+
+class MainWindow(Ui_MainWindow, QMainWindow):
"""
- 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)
+# 用于存储界面是否需要删除,
+# 目前只支持9个菜单按钮。
+ self.Wid_Obj={
+ "b1":{}, "b2":{}, "b3":{}, "b4":{}, "b5":{},
+ "b6":{}, "b7":{}, "b8":{}, "b9":{},
+ }
+
+ self.__initUI()
+
+ def __initUI(self):
+ '''
+ 一些无法在基础元素累中初始化的参数。
+ '''
+
+ # 有用判断最长的label的长度
+ label_width = 0
+
+ self.label_list = []
+
+ # 从上部分窗体的子对象中循环选取出self.WX
+ for WX in self.topWidget.children():
+ # 判断是不是WX窗体
+ name = WX.objectName()[0]
+ if name =="W" and isinstance(WX, SingeleWidget):
+ num = WX.objectName()[1]
+ # 从全局中取 LX类
+ LX = globals()["L%s"%num]
+ del WX.m_menu
+ WX.m_menu = LX(self)
+
+ label = WX.findChild(QLabel)
+ self.label_list.append(label)
+
+ # 判断文字最长的label
+ if label_width < len(label.text()):
+ label_width = len(label.text())
+
+ # 用空格填充label, 使其宽度统一
+ for label in self.label_list:
+
+ length = label_width - len(label.text())
+ size = length
+ text = label.text()
+
+ if length%2:
+ text = ' '+ text +' '
+ text = ' '*size+ text +' '*size
+ label.setText(text)
+
+ self.readCSS(self)
+
+ self.DEFAULT = {}
+ self.animation = QPropertyAnimation(self.topWidget, b'maximumHeight' )
+ self.toggleButton.clicked.connect(self.start_animation)
+
+ def readCSS(self, obj):
+ '''
+ 用于设置样式,SingeleWidget类中也需要用到。
+ '''
+ styleFile = './Tools/style.css'
+ qssStyle = CommonHelper.readQss( styleFile )
+ obj.setStyleSheet( qssStyle )
+
+ def start_animation(self, checked):
+
+ CurrentHeight = self.topWidget.height()
+ if self.DEFAULT == {}:
+ self.DEFAULT["len"] = CurrentHeight
+ if CurrentHeight == 0:
+ direction = QAbstractAnimation.Backward
+ self.toggleButton.setText("↑")
+ else:
+ direction = QAbstractAnimation.Forward
+ self.toggleButton.setText("↓")
+ self.animation.setDirection(direction)
+ self.animation.setDuration(150)
+ self.animation.setStartValue(self.DEFAULT["len"])
+ self.animation.setEndValue(0)
+ self.animation.start()
+
+# 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()
-
+
+# import qdarkstyle
+# app.setStyleSheet(qdarkstyle.load_stylesheet_pyqt5())
+
+ ui.show()
+
sys.exit(app.exec_())
diff --git a/partner_625781186/5.hoverMenu/Main.ui b/partner_625781186/5.hoverMenu/Main.ui
index 51e778f..78f7ecb 100644
--- a/partner_625781186/5.hoverMenu/Main.ui
+++ b/partner_625781186/5.hoverMenu/Main.ui
@@ -7,21 +7,55 @@
0
0
- 797
- 536
+ 908
+ 518
MainWindow
- #MainWindow { border:none;}
+ * #MainWindow { border:none;}
+ #widget{ border:none; }
+/*#topWidget QWidget{ background-color: green; }
+#widget QLabel{ background-color: rgb(85, 0, 255); }*/
+
#centralWidget {border:none;}
+
+ 0
+
+
+ 0
+
+
+ 2
+
+
+ 0
+
+
+ 0
+
+ -
+
+
+ background-color:#1d4371;
+
+border-radius:0px;
+
+
+ ↑
+
+
+ true
+
+
+
-
@@ -46,9 +80,9 @@
-
- #widget{ border:none; }
+
-
+
0
@@ -61,282 +95,14 @@
0
-
-
-
-
-
- 9
-
-
- 9
-
-
- 9
-
-
- 9
-
-
-
-
-
-
-
-
-
- -
-
-
- 店铺数据
-
-
- Qt::AlignCenter
-
-
-
- -
-
-
- Qt::Horizontal
-
-
- QSizePolicy::Preferred
-
-
-
- 10
- 20
-
-
-
-
- -
-
-
- Qt::Horizontal
-
-
- QSizePolicy::Preferred
-
-
-
- 10
- 20
-
-
-
-
-
-
-
- -
-
-
-
- 9
-
-
- 9
-
-
- 9
-
-
- 9
-
-
-
-
-
- 竞品分析
-
-
- Qt::AlignCenter
-
-
-
- -
-
-
-
-
-
-
- -
-
-
- Qt::Horizontal
-
-
- QSizePolicy::Preferred
-
-
-
- 10
- 20
-
-
-
-
- -
-
-
- Qt::Horizontal
-
-
- QSizePolicy::Preferred
-
-
-
- 10
- 20
-
-
-
-
-
-
-
- -
-
-
-
- 9
-
-
- 9
-
-
- 9
-
-
- 9
-
-
-
-
-
- Qt::Horizontal
-
-
- QSizePolicy::Preferred
-
-
-
- 10
- 20
-
-
-
-
- -
-
-
- false
-
-
-
-
-
-
- -
-
-
- 直通车工具工具工具
-
-
- Qt::AlignCenter
-
-
-
- -
-
-
- Qt::Horizontal
-
-
- QSizePolicy::Preferred
-
-
-
- 10
- 20
-
-
-
-
-
-
-
- -
-
-
-
- 9
-
-
- 9
-
-
- 9
-
-
- 9
-
-
-
-
-
- Qt::Horizontal
-
-
- QSizePolicy::Preferred
-
-
-
- 10
- 20
-
-
-
-
- -
-
-
- false
-
-
-
-
-
-
- -
-
-
- 直通
-
-
- Qt::AlignCenter
-
-
-
- -
-
-
- Qt::Horizontal
-
-
- QSizePolicy::Preferred
-
-
-
- 10
- 20
-
-
-
-
-
-
-
- -
+
+ 2
+
+
-
+
+ 6
+
-
@@ -359,31 +125,228 @@
- -
-
-
- Qt::Horizontal
-
-
-
- 25
- 20
-
-
-
+
-
+
+
+
+ 9
+
+
+ 9
+
+
+ 9
+
+
+ 9
+
+
-
+
+
-
+
+
+
+ 0
+ 0
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ 店铺数据
+
+
+ Qt::AlignCenter
+
+
+
+
+
+
+ -
+
+
+
+ 9
+
+
+ 9
+
+
+ 9
+
+
+ 9
+
+
-
+
+
-
+
+
+
+ 0
+ 0
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ 店铺
+
+
+ Qt::AlignCenter
+
+
+
+
+
+
+ -
+
+
+
+ 9
+
+
+ 9
+
+
+ 9
+
+
+ 9
+
+
-
+
+
-
+
+
+
+ 0
+ 0
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ 店铺数据
+
+
+ Qt::AlignCenter
+
+
+
+
+
+
+ -
+
+
+
+ QLayout::SetMinAndMaxSize
+
+
+ 9
+
+
+ 9
+
+
+ 9
+
+
+ 9
+
+
-
+
+
+
+ 0
+ 0
+
+
+
+ 店店店
+
+
+ Qt::AlignCenter
+
+
+ false
+
+
+
+ -
+
+
-
+
+
+
+ 0
+ 0
+
+
+
+
+
+
+
+
+
+
+
-
-
+
0
0
-
+
0
@@ -423,27 +386,27 @@
B1
QPushButton
-
+
B2
QPushButton
-
+
B3
QPushButton
-
+
B4
QPushButton
-
+
SingeleWidget
QWidget
-
+
1
diff --git a/partner_625781186/5.hoverMenu/Menu.py b/partner_625781186/5.hoverMenu/Menu.py
deleted file mode 100644
index ddcd8f1..0000000
--- a/partner_625781186/5.hoverMenu/Menu.py
+++ /dev/null
@@ -1,119 +0,0 @@
-# -*- coding: utf-8 -*-
-'''
-description: 要增加菜单栏时,在这里添加。
-
-Created on 2018年7月7日
-
-email: 625781186@qq.com
-
-BX: 主菜单按钮;
-LX:子菜单按钮-继承了UI类和 隐藏基类;
-'''
-
-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)
-
-
-#============================================= 智钻工具 =======================================
diff --git a/partner_625781186/5.hoverMenu/CommonHelper.py b/partner_625781186/5.hoverMenu/Tools/CommonHelper.py
similarity index 100%
rename from partner_625781186/5.hoverMenu/CommonHelper.py
rename to partner_625781186/5.hoverMenu/Tools/CommonHelper.py
diff --git a/partner_625781186/5.hoverMenu/Tools/Ui_Main.py b/partner_625781186/5.hoverMenu/Tools/Ui_Main.py
new file mode 100644
index 0000000..4e468e5
--- /dev/null
+++ b/partner_625781186/5.hoverMenu/Tools/Ui_Main.py
@@ -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_())
+
diff --git a/partner_625781186/5.hoverMenu/Tools/__init__.py b/partner_625781186/5.hoverMenu/Tools/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/partner_625781186/5.hoverMenu/Tools/qmf_showError.py b/partner_625781186/5.hoverMenu/Tools/qmf_showError.py
new file mode 100644
index 0000000..6b40d3f
--- /dev/null
+++ b/partner_625781186/5.hoverMenu/Tools/qmf_showError.py
@@ -0,0 +1,52 @@
+
+"""
+Created on 2018-09-09
+
+description: 错误提示窗模块
+
+author: 625781186@qq.com
+
+site: https://github.com/625781186
+"""
+
+
+from PyQt5 import QtGui, QtWidgets, QtCore
+from PyQt5.QtCore import *
+from PyQt5.QtGui import *
+from PyQt5.QtWidgets import *
+
+import traceback
+
+def w_showERROR(widget=None):
+
+ errmsg = traceback.format_exc()
+# QMessageBox.warning(QWidget(), '请确认', errmsg,
+# QMessageBox.Ok)
+ msg = QErrorMessage(widget)
+ msg.setModal(True)
+ msg.showMessage(errmsg)
+
+def f_showERROR(func, *args, **kwargs):
+ def _doWhat(*args, **kwargs):
+ try:
+ func(*args, **kwargs)
+ except:
+ import sys
+ app =QApplication(sys.argv)
+ errmsg = traceback.format_exc()
+ print(errmsg)
+ gitMsg=QMessageBox()
+
+ gitMsg.setWindowTitle("错误")
+
+ gitMsg.setText(errmsg)
+ gitMsg.setDetailedText(errmsg)
+ gitMsg.setStandardButtons(QMessageBox.Ok)
+ gitMsg.buttons()[-1].click()
+
+ gitMsg.exec_()
+
+ sys.exit(app.exec_())
+ return
+
+ return _doWhat
diff --git a/partner_625781186/5.hoverMenu/style.css b/partner_625781186/5.hoverMenu/Tools/style.css
similarity index 97%
rename from partner_625781186/5.hoverMenu/style.css
rename to partner_625781186/5.hoverMenu/Tools/style.css
index aaf5cd3..32283bd 100644
--- a/partner_625781186/5.hoverMenu/style.css
+++ b/partner_625781186/5.hoverMenu/Tools/style.css
@@ -1,5 +1,5 @@
/*background-color: #3daee9; */
- #topWidget , TestWidget
+ #topWidget
{
color: #eff0f1;
background-color: #3daee9;
@@ -9,14 +9,10 @@
border-image: none;
border: 0px transparent black;
outline: 0;
-
}
-TestWidget > QPushButton{
- border-width: 1px;
-
-}
+
- #buttomWidget
+ #bottomWidget
{
border-image: url(:/static/background.jpg);
}
@@ -36,10 +32,10 @@ TestWidget > QPushButton{
color: #eff0f1;
}
- /* QWidget:item:selected
+ QWidget:item:selected
{
background-color: #18465d;
- } */
+ }
QWidget:disabled
@@ -312,7 +308,23 @@ TestWidget > QPushButton{
{
border: 1px transparent black;
}
+
+ BaseMenuWidget{
+ border:1px solid rgb(17, 66, 116);
+ }
+
+ QPushButton[M_Action='isTrue']
+{
+ border:none ;
+ border-radius:0px;
+ }
+ QPushButton[M_Action='isTrue']:pressed
+{
+ background-color: #3daee9;
+ color: #eff0f1;
+ }
+
/* --------------------------------------- QPushButton -----------------------------------*/
QPushButton
{
@@ -351,11 +363,9 @@ TestWidget > QPushButton{
padding-bottom: -17px;
}
-
-
QPushButton:checked{
- background-color: #76797C;
- border-color: #6A6969;
+ background-color: #287399;
+ border-color: #287399;
}
@@ -534,10 +544,7 @@ TestWidget > QPushButton{
left: 8px;
}
- BaseMenuWidget{
- border:1px solid rgb(17, 66, 116);
- }
QTableView
{
diff --git a/partner_625781186/5.hoverMenu/UCompetitiveProduct2/L2.ui b/partner_625781186/5.hoverMenu/UCompetitiveProduct2/L2.ui
deleted file mode 100644
index 7e83928..0000000
--- a/partner_625781186/5.hoverMenu/UCompetitiveProduct2/L2.ui
+++ /dev/null
@@ -1,103 +0,0 @@
-
-
- Form
-
-
-
- 0
- 0
- 113
- 119
-
-
-
- Form
-
-
- background-color: rgb(85, 170, 255);
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
- -
-
-
- false
-
-
- false
-
-
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新建列
-
-
- -
-
- 评价分析
-
-
- AlignCenter
-
-
- -
-
- SKU分析
-
-
- AlignCenter
-
-
- -
-
- 流量分析
-
-
- AlignCenter
-
-
-
-
-
-
-
-
- BaseTable
- QTableWidget
-
-
-
-
-
-
diff --git a/partner_625781186/5.hoverMenu/UCompetitiveProduct2/SKU_Widget.py~ b/partner_625781186/5.hoverMenu/UCompetitiveProduct2/SKU_Widget.py~
deleted file mode 100644
index 45931f7..0000000
--- a/partner_625781186/5.hoverMenu/UCompetitiveProduct2/SKU_Widget.py~
+++ /dev/null
@@ -1,34 +0,0 @@
-# -*- 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_())
diff --git a/partner_625781186/5.hoverMenu/UCompetitiveProduct2/Ui_L2.py b/partner_625781186/5.hoverMenu/UCompetitiveProduct2/Ui_L2.py
deleted file mode 100644
index 8a08b5b..0000000
--- a/partner_625781186/5.hoverMenu/UCompetitiveProduct2/Ui_L2.py
+++ /dev/null
@@ -1,74 +0,0 @@
-# -*- 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_())
-
diff --git a/partner_625781186/5.hoverMenu/UMarketAnalysis3/L3.ui b/partner_625781186/5.hoverMenu/UMarketAnalysis3/L3.ui
deleted file mode 100644
index 0e65b19..0000000
--- a/partner_625781186/5.hoverMenu/UMarketAnalysis3/L3.ui
+++ /dev/null
@@ -1,103 +0,0 @@
-
-
- Form
-
-
-
- 0
- 0
- 113
- 119
-
-
-
- Form
-
-
- background-color: rgb(85, 170, 255);
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
- -
-
-
- false
-
-
- false
-
-
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新建列
-
-
- -
-
- 类目趋势
-
-
- AlignCenter
-
-
- -
-
- 属性趋势
-
-
- AlignCenter
-
-
- -
-
- 品牌分析
-
-
- AlignCenter
-
-
-
-
-
-
-
-
- BaseTable
- QTableWidget
-
-
-
-
-
-
diff --git a/partner_625781186/5.hoverMenu/UMarketAnalysis3/Ui_L3.py b/partner_625781186/5.hoverMenu/UMarketAnalysis3/Ui_L3.py
deleted file mode 100644
index 6f6df0c..0000000
--- a/partner_625781186/5.hoverMenu/UMarketAnalysis3/Ui_L3.py
+++ /dev/null
@@ -1,74 +0,0 @@
-# -*- 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_())
-
diff --git a/partner_625781186/5.hoverMenu/UStoreData1/L1.ui b/partner_625781186/5.hoverMenu/UStoreData1/L1.ui
deleted file mode 100644
index 179c45f..0000000
--- a/partner_625781186/5.hoverMenu/UStoreData1/L1.ui
+++ /dev/null
@@ -1,77 +0,0 @@
-
-
- Form
-
-
-
- 0
- 0
- 113
- 119
-
-
-
- Form
-
-
- background-color: rgb(85, 170, 255);
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
- -
-
-
- false
-
-
- false
-
-
- true
-
-
-
-
-
-
-
-
- 新建列
-
-
- -
-
- 语音数据
-
-
- AlignCenter
-
-
-
-
-
-
-
-
- BaseTable
- QTableWidget
-
-
-
-
-
-
diff --git a/partner_625781186/5.hoverMenu/UStoreData1/Ui_L1.py b/partner_625781186/5.hoverMenu/UStoreData1/Ui_L1.py
deleted file mode 100644
index 09bc6f3..0000000
--- a/partner_625781186/5.hoverMenu/UStoreData1/Ui_L1.py
+++ /dev/null
@@ -1,60 +0,0 @@
-# -*- 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_())
-
diff --git a/partner_625781186/5.hoverMenu/UThroughTrain4/GeographicAnalysis_Widget.py~ b/partner_625781186/5.hoverMenu/UThroughTrain4/GeographicAnalysis_Widget.py~
deleted file mode 100644
index 26a003e..0000000
--- a/partner_625781186/5.hoverMenu/UThroughTrain4/GeographicAnalysis_Widget.py~
+++ /dev/null
@@ -1,42 +0,0 @@
-# -*- 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_())
diff --git a/partner_625781186/5.hoverMenu/UThroughTrain4/L4.ui b/partner_625781186/5.hoverMenu/UThroughTrain4/L4.ui
deleted file mode 100644
index 51fe33c..0000000
--- a/partner_625781186/5.hoverMenu/UThroughTrain4/L4.ui
+++ /dev/null
@@ -1,109 +0,0 @@
-
-
- Form
-
-
-
- 0
- 0
- 113
- 119
-
-
-
- Form
-
-
- background-color: rgb(85, 170, 255);
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
- -
-
-
- Qt::ScrollBarAlwaysOff
-
-
- Qt::ScrollBarAlwaysOff
-
-
- false
-
-
- false
-
-
- true
-
-
-
- 1
-
-
-
-
- 2
-
-
-
-
- 3
-
-
-
-
- 新建列
-
-
- -
-
- 地域分析
-
-
- AlignCenter
-
-
- -
-
- 实时数据
-
-
- AlignCenter
-
-
- -
-
- 标签工具
-
-
- AlignCenter
-
-
-
-
-
-
-
-
- BaseTable
- QTableWidget
-
-
-
-
-
-
diff --git a/partner_625781186/5.hoverMenu/UThroughTrain4/Ui_L4.py b/partner_625781186/5.hoverMenu/UThroughTrain4/Ui_L4.py
deleted file mode 100644
index 69555c3..0000000
--- a/partner_625781186/5.hoverMenu/UThroughTrain4/Ui_L4.py
+++ /dev/null
@@ -1,82 +0,0 @@
-# -*- 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_())
-
diff --git a/partner_625781186/5.hoverMenu/U_FuncWidget/BaseElement.py b/partner_625781186/5.hoverMenu/U_FuncWidget/BaseElement.py
new file mode 100644
index 0000000..276c708
--- /dev/null
+++ b/partner_625781186/5.hoverMenu/U_FuncWidget/BaseElement.py
@@ -0,0 +1,284 @@
+# -*- coding: utf-8 -*-
+'''
+description: 抽象类模块
+
+Created on 2018年7月7日
+
+Author: 人间白头
+
+email: 625781186@qq.com
+
+'''
+import sip , functools
+
+from PyQt5 import QtGui, QtWidgets, QtCore
+from PyQt5.QtCore import *
+from PyQt5.QtGui import *
+from PyQt5.QtWidgets import *
+
+from Tools.qmf_showError import f_showERROR, w_showERROR
+from Tools.CommonHelper import CommonHelper
+
+
+SHOWMENU = {"yes":True , "no":False , "setShow":True , "setHide":False }
+ENTERMENU = {"yes":True , "no":False }
+
+class SingeleWidget(QWidget):
+ '''
+ 菜单栏的每个框。
+ '''
+ #1
+
+ Button_hideFlag = SHOWMENU["setHide"]
+
+ def __init__(self, parent=None):
+ '''
+ Button_hideFlag: 0 表明没有显示弹窗;1表示显示了弹窗。
+ '''
+ super(SingeleWidget, self).__init__(parent)
+
+ # 很重要 , 否则样式背景无效!
+ self.setAttribute(Qt.WA_StyledBackground, True)
+
+ # 这个m_menu没有用, 有用的是main.py中生成的m_menu
+ self.m_menu = QWidget()
+
+ # 用来测试qss的 , 可以注释掉
+ self.setProperty("WID", "isTrue")
+
+ def enterEvent(self, e):
+
+ #设置菜单窗体的宽度
+ self.m_menu.setMinimumWidth(self.width())
+ self.m_menu.setMaximumWidth(self.width())
+
+ #我靠! 把菜单窗体对齐到按钮框
+ menu_Pos = self.mapToGlobal(
+ QPoint( self.parent().x() ,
+ self.parent().height() )
+ )
+
+ self.m_menu.move(menu_Pos)
+
+ self.m_menu.show()
+
+ #表明显示了弹窗
+ self.Button_hideFlag = SHOWMENU["setShow"]
+
+ def leaveEvent(self, e):
+ '''
+ 离开时判断是否显示了窗体,80ms后发射到_jugement去检测。
+ '''
+ if self.Button_hideFlag is SHOWMENU["yes"]: #显示了窗体
+ QTimer.singleShot(80, self._jugement)
+
+ def _jugement(self):
+ '''
+ 离开上面窗体之后80ms, 1:进入旁边的菜单框;2:进入弹出的菜单。
+ '''
+ if self.m_menu.Menu_hideFlag is ENTERMENU["no"]:
+ self.m_menu.hide()
+ self.m_menu.close()
+ self.Button_hideFlag = SHOWMENU["setHide"]
+
+#==================================================
+class BaseMenuWidget(QTableWidget):
+ #2
+ '''
+ 下拉菜单。
+ '''
+ m_currentRow = None
+ m_currentCol = None
+
+ Menu_hideFlag = ENTERMENU["no"]
+
+ def __init__(self, parent=None):
+ '''
+ Menu_hideFlag: 0时隐藏,1时显示;
+ '''
+
+ super(BaseMenuWidget, self).__init__(parent)
+
+ self.__initUI()
+
+ def __initUI(self):
+
+ #无边框,隐藏任务栏;
+ self.setWindowFlags( Qt.FramelessWindowHint|Qt.Tool|Qt.Widget)
+ #列宽设置
+ self.horizontalHeader().setSectionResizeMode(3)
+ #充满列宽
+ self.horizontalHeader().setStretchLastSection(True)
+ #行高模式
+ self.verticalHeader().setSectionResizeMode(1)
+ #充满行高
+ self.verticalHeader().setStretchLastSection(True)
+ #只读
+ self.setEditTriggers(QAbstractItemView.NoEditTriggers)
+
+ # 隐藏表头
+ self.horizontalHeader().setVisible(False);
+ self.verticalHeader().setVisible(False);
+
+ # 关闭滑动条
+ self.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
+ self.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
+
+ self.setColumnCount(1);
+ self._setHeight()
+
+ # 不知道为啥main.py中的下拉菜单样式要重新赋予一次
+ self.parent().readCSS(self)
+
+ def _setHeight(self):
+ height = self.rowCount()*40
+ self.setMinimumHeight(height)
+ self.setMaximumHeight(height)
+
+ def enterEvent(self, e):
+ #表明进入了弹窗
+ self.Menu_hideFlag = ENTERMENU["yes"]
+
+ def leaveEvent(self, e):
+ #表名离开了弹窗
+ self.Menu_hideFlag = ENTERMENU["no"]
+ self.hide()
+
+ #取消点击的按钮
+ if self.m_currentRow is not None:
+ self.clearSelection()
+ self.cellWidget(self.m_currentRow,
+ self.m_currentCol).setCheckable(False)
+
+ def _addAction(self, text, MyWidget=None, func=None, *args, **kwags):
+ '''
+ obj : QPushButton对象;
+ text:obj的字;
+ func:obj点击链接的信号;
+ MyWidget:想要显示的窗体对象;
+ '''
+ self.insertRow(self.rowCount())
+ self._setHeight()
+ row = self.rowCount()-1
+ col = self.columnCount()-1
+
+ obj = QPushButton(text)
+ obj.setProperty("M_Action", "isTrue")
+ obj.setFlat(True)
+ obj.setCheckable(True);
+ obj.setAutoExclusive(True);
+
+ #老子真聪明,哈哈
+ #按钮默认连接changeTab函数
+ if func == None :
+ func = self.changeTab
+ obj.clicked.connect(lambda: setattr(self , "m_currentRow" , row))
+ obj.clicked.connect(lambda: setattr(self , "m_currentCol" , col))
+
+ obj.clicked.connect(functools.partial(
+ func,
+ text,
+ MyWidget,
+ *args,
+ **kwags)
+ )
+
+ self.setCellWidget(row, col , obj);
+
+ def _findParent(self, currentObj):
+ '''
+ 递归找父窗口。
+ '''
+
+ if currentObj.parent().objectName()=="MainWindow":
+ return currentObj.parent()
+
+ #这里有返回值,返回倒数第二次的
+ return self._findParent(currentObj.parent())
+
+ def changeTab(self, text, MyWidget, *args, **kwags):
+ #返回的MainWindow
+ mw = self._findParent(self)
+
+ #save:是否保留窗体;id:在mw.Wid_Obj 二级字典的键值;
+ if "save" in kwags and "id" in kwags:
+ save, id = kwags["save"], kwags["id"]
+ #B1类-b1; B2类-b2;
+ _key = "b"+ self.__class__.__name__[-1]
+# print(_key)
+ childrens = mw.bottomWidget.children()[1:]
+ if childrens!=[]:
+ for obj in childrens:
+ # 隐藏所有对象
+ obj.setVisible(False)
+ # 如果没有不可删除的属性,就删掉
+ if not hasattr(obj, "SAVE"):
+ sip.delete(obj)
+ del obj
+
+ #如果为"s", 即对象不删除,保存到字典中;
+ if save=="s":
+ if MyWidget is not None:
+ #第一次点击到时候判断是否存在二级字典中;
+ if id in mw.Wid_Obj[_key].keys():
+ print("存在wid_obj:", mw.Wid_Obj[_key][id])
+ print("EXIT?:",mw.Wid_Obj[_key][id].SAVE )
+ mw.Wid_Obj[_key][id].setVisible(True)
+ else:
+ #不存在则创建;
+ print("saving..")
+ obj_Widget = MyWidget()
+ #动态添加不删除标志
+ obj_Widget.SAVE = True
+ #存对象
+ mw.Wid_Obj[_key][id] = obj_Widget
+ #加到布局
+ mw.Bottom_Vbox.addWidget(obj_Widget)
+
+ elif save=="d":
+ obj_Widget = MyWidget(mw)
+ mw.Bottom_Vbox.addWidget(obj_Widget)
+
+ print(mw.Wid_Obj)
+
+#==================================================
+class BaseButton(QPushButton):
+ #1
+ '''
+ 菜单栏的按钮的样式。
+ '''
+ def __init__(self, parent=None):
+
+ super(BaseButton, self).__init__(parent)
+
+ self.setMinimumWidth(70)
+ self.setMaximumWidth(88)
+ self.setMinimumHeight(self.width()) #保证是个正方形
+
+ self.setFocusPolicy(Qt.NoFocus) #无焦点,防止背景卡色
+ self.setFlat(True) #无凸起阴影
+
+ self.clicked.connect(self._todo)
+
+ self.png = QLabel(self)
+
+ 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 _todo(self, *args, **kwgs):
+ '''
+ 每个按钮要重新实现的功能函数。
+ '''
+ pass
+
+ def resizeEvent(self, e):
+ self.setMinimumHeight(self.width())
+ self.png.resize(self.size())
+
diff --git a/partner_625781186/5.hoverMenu/U_FuncWidget/Menu.py b/partner_625781186/5.hoverMenu/U_FuncWidget/Menu.py
new file mode 100644
index 0000000..4cc8ee5
--- /dev/null
+++ b/partner_625781186/5.hoverMenu/U_FuncWidget/Menu.py
@@ -0,0 +1,97 @@
+# -*- coding: utf-8 -*-
+'''
+description: 要增加菜单栏时,在这里添加。
+
+Created on 2018年7月7日
+
+Author: 人间白头
+
+email: 625781186@qq.com
+
+BX: 主菜单按钮;
+LX:子菜单按钮 BaseMenuWidget - 是个QTableWidget;
+'''
+
+from U_FuncWidget.BaseElement import *
+
+from U_FuncWidget.UThroughTrain4 import GeographicAnalysis_Widget
+from U_FuncWidget.UCompetitiveProduct2 import SKU_Widget
+
+#=========================== 店铺数据 ===========================
+
+class B1( BaseButton):
+ def __init__(self, parent=None):
+ super(B1, self).__init__(parent)
+ self._createLabel(":/static/store_data.png")
+
+ def _todo(self, *args, **kwgs):
+ self.msg = QErrorMessage()
+ self.msg.showMessage("你可以在此添加额外功能。")
+
+class L1(BaseMenuWidget):
+ def __init__(self, parent=None):
+ super(L1, self).__init__(parent)
+
+ self._addAction("病人信息",
+ GeographicAnalysis_Widget.Form,
+ id="1", save= "s")
+ self._addAction("病人", )
+
+
+#=========================== 竞品分析 ===========================
+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(BaseMenuWidget):
+ def __init__(self, parent=None):
+ super(L2, self).__init__(parent)
+
+# 各种传入参数测试 , 也可关联到定义函数
+ self._addAction("病人信息",
+ SKU_Widget.Form,
+ id="2", save= "s" )
+
+ self._addAction("检测1")
+
+ self._addAction("检测2", "hello" )
+
+ self._addAction("标定3", "word", self.cusTomerFunc)
+
+ self._addAction("标定4", "word",
+ self.cusTomerFunc,
+ id="4", save= "d" )
+
+ def cusTomerFunc(self, *a, **kw):
+ self.changeTab("",
+ GeographicAnalysis_Widget.Form,
+ *a, **kw)
+ print(a, kw)
+
+#============================= 市场分析 ===========================
+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(BaseMenuWidget):
+ def __init__(self, parent=None):
+ super(L3, self).__init__(parent)
+
+
+#============================ 直通车工具 ===========================
+class B4(BaseButton):
+ def __init__(self, parent=None):
+ super(B4, self).__init__(parent)
+ self._createLabel(":/static/throughTrain.png")
+
+class L4(BaseMenuWidget):
+ def __init__(self, parent=None):
+ super(L4, self).__init__(parent)
+
diff --git a/partner_625781186/5.hoverMenu/UCompetitiveProduct2/SKU_Widget.py b/partner_625781186/5.hoverMenu/U_FuncWidget/UCompetitiveProduct2/SKU_Widget.py
similarity index 88%
rename from partner_625781186/5.hoverMenu/UCompetitiveProduct2/SKU_Widget.py
rename to partner_625781186/5.hoverMenu/U_FuncWidget/UCompetitiveProduct2/SKU_Widget.py
index e902594..ac4c533 100644
--- a/partner_625781186/5.hoverMenu/UCompetitiveProduct2/SKU_Widget.py
+++ b/partner_625781186/5.hoverMenu/U_FuncWidget/UCompetitiveProduct2/SKU_Widget.py
@@ -12,7 +12,7 @@ from PyQt5.QtWidgets import *
from .Ui_SKU_Widget import Ui_Form
-class SKU_Form(QWidget, Ui_Form):
+class Form(QWidget, Ui_Form):
"""
Class documentation goes here.
"""
@@ -23,7 +23,7 @@ class SKU_Form(QWidget, Ui_Form):
@param parent reference to the parent widget
@type QWidget
"""
- super(SKU_Form, self).__init__(parent)
+ super(Form, self).__init__(parent)
self.setupUi(self)
if __name__ == "__main__":
diff --git a/partner_625781186/5.hoverMenu/UCompetitiveProduct2/SKU_Widget.ui b/partner_625781186/5.hoverMenu/U_FuncWidget/UCompetitiveProduct2/SKU_Widget.ui
similarity index 100%
rename from partner_625781186/5.hoverMenu/UCompetitiveProduct2/SKU_Widget.ui
rename to partner_625781186/5.hoverMenu/U_FuncWidget/UCompetitiveProduct2/SKU_Widget.ui
diff --git a/partner_625781186/5.hoverMenu/UCompetitiveProduct2/Ui_SKU_Widget.py b/partner_625781186/5.hoverMenu/U_FuncWidget/UCompetitiveProduct2/Ui_SKU_Widget.py
similarity index 94%
rename from partner_625781186/5.hoverMenu/UCompetitiveProduct2/Ui_SKU_Widget.py
rename to partner_625781186/5.hoverMenu/U_FuncWidget/UCompetitiveProduct2/Ui_SKU_Widget.py
index 14abfed..60c0fb0 100644
--- a/partner_625781186/5.hoverMenu/UCompetitiveProduct2/Ui_SKU_Widget.py
+++ b/partner_625781186/5.hoverMenu/U_FuncWidget/UCompetitiveProduct2/Ui_SKU_Widget.py
@@ -1,8 +1,8 @@
# -*- coding: utf-8 -*-
-# Form implementation generated from reading ui file 'D:\pyPro\hoverMenu\UCompetitiveProduct2\SKU_Widget.ui'
+# Form implementation generated from reading ui file 'D:\QGroup_432987409\WoHowLearn\0.M_I_pyqt\partner_625781186\5.hoverMenu\U_FuncWidget\UCompetitiveProduct2\SKU_Widget.ui'
#
-# Created by: PyQt5 UI code generator 5.9
+# Created by: PyQt5 UI code generator 5.10.1
#
# WARNING! All changes made in this file will be lost!
diff --git a/partner_625781186/5.hoverMenu/U_FuncWidget/UCompetitiveProduct2/__init__.py b/partner_625781186/5.hoverMenu/U_FuncWidget/UCompetitiveProduct2/__init__.py
new file mode 100644
index 0000000..880a3f5
--- /dev/null
+++ b/partner_625781186/5.hoverMenu/U_FuncWidget/UCompetitiveProduct2/__init__.py
@@ -0,0 +1 @@
+"""自定义界面."""
\ No newline at end of file
diff --git a/partner_625781186/5.hoverMenu/U_FuncWidget/UMarketAnalysis3/__init__.py b/partner_625781186/5.hoverMenu/U_FuncWidget/UMarketAnalysis3/__init__.py
new file mode 100644
index 0000000..880a3f5
--- /dev/null
+++ b/partner_625781186/5.hoverMenu/U_FuncWidget/UMarketAnalysis3/__init__.py
@@ -0,0 +1 @@
+"""自定义界面."""
\ No newline at end of file
diff --git a/partner_625781186/5.hoverMenu/U_FuncWidget/UStoreData1/__init__.py b/partner_625781186/5.hoverMenu/U_FuncWidget/UStoreData1/__init__.py
new file mode 100644
index 0000000..880a3f5
--- /dev/null
+++ b/partner_625781186/5.hoverMenu/U_FuncWidget/UStoreData1/__init__.py
@@ -0,0 +1 @@
+"""自定义界面."""
\ No newline at end of file
diff --git a/partner_625781186/5.hoverMenu/UThroughTrain4/GeographicAnalysis_Widget.py b/partner_625781186/5.hoverMenu/U_FuncWidget/UThroughTrain4/GeographicAnalysis_Widget.py
similarity index 90%
rename from partner_625781186/5.hoverMenu/UThroughTrain4/GeographicAnalysis_Widget.py
rename to partner_625781186/5.hoverMenu/U_FuncWidget/UThroughTrain4/GeographicAnalysis_Widget.py
index 5feae63..9baaaff 100644
--- a/partner_625781186/5.hoverMenu/UThroughTrain4/GeographicAnalysis_Widget.py
+++ b/partner_625781186/5.hoverMenu/U_FuncWidget/UThroughTrain4/GeographicAnalysis_Widget.py
@@ -12,7 +12,7 @@ from PyQt5.QtWidgets import *
from .Ui_GeographicAnalysis_Widget import Ui_Form
-class GeographicAnalysis_Form(QWidget, Ui_Form):
+class Form(QWidget, Ui_Form):
"""
Class documentation goes here.
"""
@@ -23,7 +23,7 @@ class GeographicAnalysis_Form(QWidget, Ui_Form):
@param parent reference to the parent widget
@type QWidget
"""
- super(GeographicAnalysis_Form, self).__init__(parent)
+ super(Form, self).__init__(parent)
self.setupUi(self)
self.geographicAnalysis_table.horizontalHeader().setSectionResizeMode(1)#列宽设置
diff --git a/partner_625781186/5.hoverMenu/UThroughTrain4/GeographicAnalysis_Widget.ui b/partner_625781186/5.hoverMenu/U_FuncWidget/UThroughTrain4/GeographicAnalysis_Widget.ui
similarity index 100%
rename from partner_625781186/5.hoverMenu/UThroughTrain4/GeographicAnalysis_Widget.ui
rename to partner_625781186/5.hoverMenu/U_FuncWidget/UThroughTrain4/GeographicAnalysis_Widget.ui
diff --git a/partner_625781186/5.hoverMenu/UThroughTrain4/Ui_GeographicAnalysis_Widget.py b/partner_625781186/5.hoverMenu/U_FuncWidget/UThroughTrain4/Ui_GeographicAnalysis_Widget.py
similarity index 100%
rename from partner_625781186/5.hoverMenu/UThroughTrain4/Ui_GeographicAnalysis_Widget.py
rename to partner_625781186/5.hoverMenu/U_FuncWidget/UThroughTrain4/Ui_GeographicAnalysis_Widget.py
diff --git a/partner_625781186/5.hoverMenu/U_FuncWidget/UThroughTrain4/__init__.py b/partner_625781186/5.hoverMenu/U_FuncWidget/UThroughTrain4/__init__.py
new file mode 100644
index 0000000..880a3f5
--- /dev/null
+++ b/partner_625781186/5.hoverMenu/U_FuncWidget/UThroughTrain4/__init__.py
@@ -0,0 +1 @@
+"""自定义界面."""
\ No newline at end of file
diff --git a/partner_625781186/5.hoverMenu/U_FuncWidget/__init__.py b/partner_625781186/5.hoverMenu/U_FuncWidget/__init__.py
new file mode 100644
index 0000000..d9b5ddf
--- /dev/null
+++ b/partner_625781186/5.hoverMenu/U_FuncWidget/__init__.py
@@ -0,0 +1,3 @@
+"""
+添加功能及自定义界面.
+"""
\ No newline at end of file
diff --git a/partner_625781186/5.hoverMenu/Ui_Main.py b/partner_625781186/5.hoverMenu/Ui_Main.py
index 9d993c3..6fc8238 100644
--- a/partner_625781186/5.hoverMenu/Ui_Main.py
+++ b/partner_625781186/5.hoverMenu/Ui_Main.py
@@ -2,7 +2,7 @@
# Form implementation generated from reading ui file 'D:\QGroup_432987409\WoHowLearn\0.M_I_pyqt\partner_625781186\5.hoverMenu\Main.ui'
#
-# Created by: PyQt5 UI code generator 5.9
+# Created by: PyQt5 UI code generator 5.10.1
#
# WARNING! All changes made in this file will be lost!
@@ -11,15 +11,26 @@ 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;}")
+ MainWindow.resize(908, 518)
+ MainWindow.setStyleSheet("* #MainWindow { border:none;}\n"
+" #widget{ border:none; }\n"
+"/*#topWidget QWidget{ background-color: green; }\n"
+"#widget QLabel{ background-color: rgb(85, 0, 255); }*/\n"
+"")
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.setContentsMargins(0, 2, 0, 0)
+ self.verticalLayout.setSpacing(0)
self.verticalLayout.setObjectName("verticalLayout")
+ self.toggleButton = QtWidgets.QPushButton(self.centralWidget)
+ self.toggleButton.setStyleSheet("background-color:#1d4371;\n"
+"\n"
+"border-radius:0px;")
+ self.toggleButton.setFlat(True)
+ self.toggleButton.setObjectName("toggleButton")
+ self.verticalLayout.addWidget(self.toggleButton)
self.widget = QtWidgets.QWidget(self.centralWidget)
self.widget.setStyleSheet("#widget {border:none;}")
self.widget.setObjectName("widget")
@@ -28,92 +39,14 @@ class Ui_MainWindow(object):
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.setStyleSheet("")
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 = QtWidgets.QGridLayout(self.topWidget)
+ self.gridLayout_2.setContentsMargins(0, 0, 0, 0)
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.setContentsMargins(-1, -1, 6, -1)
self.verticalLayout_19.setSpacing(2)
self.verticalLayout_19.setObjectName("verticalLayout_19")
self.label_17 = QtWidgets.QLabel(self.topWidget)
@@ -124,26 +57,138 @@ class Ui_MainWindow(object):
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.gridLayout_2.addLayout(self.verticalLayout_19, 1, 4, 1, 1)
+ self.W2 = SingeleWidget(self.topWidget)
+ self.W2.setObjectName("W2")
+ self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.W2)
+ self.verticalLayout_5.setContentsMargins(9, 9, 9, 9)
+ self.verticalLayout_5.setSpacing(2)
+ self.verticalLayout_5.setObjectName("verticalLayout_5")
+ self.horizontalLayout_5 = QtWidgets.QHBoxLayout()
+ self.horizontalLayout_5.setSpacing(2)
+ self.horizontalLayout_5.setObjectName("horizontalLayout_5")
+ self.filemenu_storeData_6 = B2(self.W2)
+ sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
+ sizePolicy.setHorizontalStretch(0)
+ sizePolicy.setVerticalStretch(0)
+ sizePolicy.setHeightForWidth(self.filemenu_storeData_6.sizePolicy().hasHeightForWidth())
+ self.filemenu_storeData_6.setSizePolicy(sizePolicy)
+ self.filemenu_storeData_6.setText("")
+ self.filemenu_storeData_6.setObjectName("filemenu_storeData_6")
+ self.horizontalLayout_5.addWidget(self.filemenu_storeData_6)
+ self.verticalLayout_5.addLayout(self.horizontalLayout_5)
+ self.label_22 = QtWidgets.QLabel(self.W2)
+ sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred)
+ sizePolicy.setHorizontalStretch(0)
+ sizePolicy.setVerticalStretch(0)
+ sizePolicy.setHeightForWidth(self.label_22.sizePolicy().hasHeightForWidth())
+ self.label_22.setSizePolicy(sizePolicy)
+ self.label_22.setAlignment(QtCore.Qt.AlignCenter)
+ self.label_22.setObjectName("label_22")
+ self.verticalLayout_5.addWidget(self.label_22)
+ self.gridLayout_2.addWidget(self.W2, 1, 1, 1, 1)
+ self.W4 = SingeleWidget(self.topWidget)
+ self.W4.setObjectName("W4")
+ self.verticalLayout_7 = QtWidgets.QVBoxLayout(self.W4)
+ self.verticalLayout_7.setContentsMargins(9, 9, 9, 9)
+ self.verticalLayout_7.setSpacing(2)
+ self.verticalLayout_7.setObjectName("verticalLayout_7")
+ self.horizontalLayout_7 = QtWidgets.QHBoxLayout()
+ self.horizontalLayout_7.setSpacing(2)
+ self.horizontalLayout_7.setObjectName("horizontalLayout_7")
+ self.filemenu_storeData_8 = B4(self.W4)
+ sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
+ sizePolicy.setHorizontalStretch(0)
+ sizePolicy.setVerticalStretch(0)
+ sizePolicy.setHeightForWidth(self.filemenu_storeData_8.sizePolicy().hasHeightForWidth())
+ self.filemenu_storeData_8.setSizePolicy(sizePolicy)
+ self.filemenu_storeData_8.setText("")
+ self.filemenu_storeData_8.setObjectName("filemenu_storeData_8")
+ self.horizontalLayout_7.addWidget(self.filemenu_storeData_8)
+ self.verticalLayout_7.addLayout(self.horizontalLayout_7)
+ self.label_24 = QtWidgets.QLabel(self.W4)
+ sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred)
+ sizePolicy.setHorizontalStretch(0)
+ sizePolicy.setVerticalStretch(0)
+ sizePolicy.setHeightForWidth(self.label_24.sizePolicy().hasHeightForWidth())
+ self.label_24.setSizePolicy(sizePolicy)
+ self.label_24.setAlignment(QtCore.Qt.AlignCenter)
+ self.label_24.setObjectName("label_24")
+ self.verticalLayout_7.addWidget(self.label_24)
+ self.gridLayout_2.addWidget(self.W4, 1, 3, 1, 1)
+ self.W1 = SingeleWidget(self.topWidget)
+ self.W1.setObjectName("W1")
+ self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.W1)
+ self.verticalLayout_2.setContentsMargins(9, 9, 9, 9)
+ self.verticalLayout_2.setSpacing(2)
+ self.verticalLayout_2.setObjectName("verticalLayout_2")
+ self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
+ self.horizontalLayout_2.setSpacing(2)
+ self.horizontalLayout_2.setObjectName("horizontalLayout_2")
+ self.filemenu_storeData_3 = B1(self.W1)
+ sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
+ sizePolicy.setHorizontalStretch(0)
+ sizePolicy.setVerticalStretch(0)
+ sizePolicy.setHeightForWidth(self.filemenu_storeData_3.sizePolicy().hasHeightForWidth())
+ self.filemenu_storeData_3.setSizePolicy(sizePolicy)
+ self.filemenu_storeData_3.setText("")
+ self.filemenu_storeData_3.setObjectName("filemenu_storeData_3")
+ self.horizontalLayout_2.addWidget(self.filemenu_storeData_3)
+ self.verticalLayout_2.addLayout(self.horizontalLayout_2)
+ self.label_15 = QtWidgets.QLabel(self.W1)
+ sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred)
+ sizePolicy.setHorizontalStretch(0)
+ sizePolicy.setVerticalStretch(0)
+ sizePolicy.setHeightForWidth(self.label_15.sizePolicy().hasHeightForWidth())
+ self.label_15.setSizePolicy(sizePolicy)
+ self.label_15.setAlignment(QtCore.Qt.AlignCenter)
+ self.label_15.setObjectName("label_15")
+ self.verticalLayout_2.addWidget(self.label_15)
+ self.gridLayout_2.addWidget(self.W1, 1, 0, 1, 1)
+ self.W3 = SingeleWidget(self.topWidget)
+ self.W3.setObjectName("W3")
+ self.gridLayout = QtWidgets.QGridLayout(self.W3)
+ self.gridLayout.setSizeConstraint(QtWidgets.QLayout.SetMinAndMaxSize)
+ self.gridLayout.setContentsMargins(9, 9, 9, 9)
+ self.gridLayout.setSpacing(2)
+ self.gridLayout.setObjectName("gridLayout")
+ self.label_23 = QtWidgets.QLabel(self.W3)
+ sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred)
+ sizePolicy.setHorizontalStretch(0)
+ sizePolicy.setVerticalStretch(0)
+ sizePolicy.setHeightForWidth(self.label_23.sizePolicy().hasHeightForWidth())
+ self.label_23.setSizePolicy(sizePolicy)
+ self.label_23.setAlignment(QtCore.Qt.AlignCenter)
+ self.label_23.setWordWrap(False)
+ self.label_23.setObjectName("label_23")
+ self.gridLayout.addWidget(self.label_23, 1, 0, 1, 1)
+ self.horizontalLayout_6 = QtWidgets.QHBoxLayout()
+ self.horizontalLayout_6.setSpacing(2)
+ self.horizontalLayout_6.setObjectName("horizontalLayout_6")
+ self.filemenu_storeData_7 = B3(self.W3)
+ sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
+ sizePolicy.setHorizontalStretch(0)
+ sizePolicy.setVerticalStretch(0)
+ sizePolicy.setHeightForWidth(self.filemenu_storeData_7.sizePolicy().hasHeightForWidth())
+ self.filemenu_storeData_7.setSizePolicy(sizePolicy)
+ self.filemenu_storeData_7.setText("")
+ self.filemenu_storeData_7.setObjectName("filemenu_storeData_7")
+ self.horizontalLayout_6.addWidget(self.filemenu_storeData_7)
+ self.gridLayout.addLayout(self.horizontalLayout_6, 0, 0, 1, 1)
+ self.gridLayout_2.addWidget(self.W3, 1, 2, 1, 1)
self.verticalLayout_14.addWidget(self.topWidget)
- self.buttomWidget = QtWidgets.QWidget(self.widget)
+ self.bottomWidget = 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)
+ sizePolicy.setHeightForWidth(self.bottomWidget.sizePolicy().hasHeightForWidth())
+ self.bottomWidget.setSizePolicy(sizePolicy)
+ self.bottomWidget.setObjectName("bottomWidget")
+ self.Bottom_Vbox = QtWidgets.QVBoxLayout(self.bottomWidget)
+ self.Bottom_Vbox.setContentsMargins(0, 0, 0, 0)
+ self.Bottom_Vbox.setSpacing(0)
+ self.Bottom_Vbox.setObjectName("Bottom_Vbox")
+ self.verticalLayout_14.addWidget(self.bottomWidget)
self.verticalLayout.addWidget(self.widget)
MainWindow.setCentralWidget(self.centralWidget)
self.action1 = QtWidgets.QAction(MainWindow)
@@ -157,18 +202,22 @@ class Ui_MainWindow(object):
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.toggleButton.setText(_translate("MainWindow", "↑"))
self.label_17.setText(_translate("MainWindow", "个人中心"))
self.label_18.setText(_translate("MainWindow", "退出登录"))
+ self.label_22.setText(_translate("MainWindow", "店铺数据"))
+ self.label_24.setText(_translate("MainWindow", "店铺"))
+ self.label_15.setText(_translate("MainWindow", "店铺数据"))
+ self.label_23.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
+from U_FuncWidget.BaseElement import SingeleWidget
+from U_FuncWidget.Menu import B1, B2, B3, B4
+try:
+ import tbqrc_rc
+except:
+ from . import tbqrc_rc
if __name__ == "__main__":
import sys
diff --git a/partner_625781186/5.hoverMenu/hoverMenu.e4p b/partner_625781186/5.hoverMenu/hoverMenu.e4p
index c5e568e..2527e5d 100644
--- a/partner_625781186/5.hoverMenu/hoverMenu.e4p
+++ b/partner_625781186/5.hoverMenu/hoverMenu.e4p
@@ -1,9 +1,9 @@
-
+
-
+
-
+
873d0c0fade67dd54262d1b6954d5edfac966911
Python3
@@ -13,40 +13,34 @@
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
+
+
+
-
tbqrc.qrc
-
Documentation
- /Documentation
None
@@ -87,8 +81,8 @@
- tbqrc_rc.py
- Ui_Main.py
+ Ui_*.py
+ *_rc.py
@@ -103,6 +97,12 @@
False
+
+ useRecursion
+
+
+ True
+
diff --git a/partner_625781186/5.hoverMenu/readme.md b/partner_625781186/5.hoverMenu/readme.md
index d741461..0a6d2c6 100644
--- a/partner_625781186/5.hoverMenu/readme.md
+++ b/partner_625781186/5.hoverMenu/readme.md
@@ -1,22 +1,26 @@
+## 更新 2018年9月9日
+- 在程序中定义 离开当前页面可以选择是删除数据还是保留 ;
+- 收缩动画 ;
+
# 进入式下拉菜单
![效果图](ScreenShot/2.gif)
-[文档](Documentation/index-5.hoverMenu.md)
+## [程序文档 , emmm可能没什么用](Documentation/README-5.hoverMenu.md)
### 添加额外菜单
-- 1. 将W1整个窗体(连通子部件,按住Ctrl+鼠标左键复制),且对象名更改为W1-W9;
+
+- 1.将W1整个窗体(连通子部件,按住Ctrl+鼠标左键复制);
+- 2.修改对象名更改为WX , 并将按钮的提升类设定为BX;
+### ↑这两点至关重要↑
![提升类.png](https://upload-images.jianshu.io/upload_images/10769157-aded44441a666282.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
-- 2.从复制旧的文件夹,并更改LX.ui中的每条;
-
-![image.png](https://upload-images.jianshu.io/upload_images/10769157-e9d969a4ad55f05d.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
- 3.在Menu.py中为你的菜单添加图标及事件;
+ - BaseElement.py 对菜单栏的框/按钮/下拉菜单 定义;
+ - Menu.py 对菜单栏按钮添加功能/对下拉菜单添加条目及功能;
-![image.png](https://upload-images.jianshu.io/upload_images/10769157-9819676a7ed8329e.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
+![image.png](https://upload-images.jianshu.io/upload_images/10769157-44f6e8eee864054e.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
## 下一步要做的
-我不知道你能不能看懂我的文档,反正只是做一个思路,我自己也觉得太难用了,啥时候用空封装一下(估计一直懒一下);
-
-也有可能寻找一种简单的解决办法。
\ No newline at end of file
+没想好;
\ No newline at end of file