Skip to content

Commit cde7539

Browse files
v1.4.1.5
========1.4.1.5======== 1. Fixed a bug in copying and creating skins for controls when applying skins. 2. Fix bug in tray menu code generation. 3. Fix version number check bug. 4. Fix the handling of shortcut buttons for adapting multiple controls to font size. 5. Improve direct drag to Frame and LabelFrame processing. 6. Improve the inclusion of module exceptions in pure packaging
1 parent f107761 commit cde7539

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+306
-221
lines changed

PyMe/Ico/ICO_VIP.png

4.55 KB
Loading

PyMe/PyMe.exe

2.67 KB
Binary file not shown.

PyMe/Wizard/En/VideoCapture.wiz

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
name=VideoCapture
2+
lessonid=26
3+
difficulty=Simple
4+
reward=0
5+
introduction=Understand the function of developing video capture using components.
6+
stepindex=0
7+
1=Drag from the left toolbar to create a Canvas control and place it in Form_1, with a size of 800x600 pixels.["Create_Canvas","SetW_Canvas_1_800","SetH_Canvas_1_600"]
8+
2=Find the "VideoCapture" component from the "Other" category on the left toolbar and drag it into Form_1.["Create_VideoCapture"]
9+
3=Select the VideoCapture component, drag the tree item "Canvas_1" from the control tree in the upper right corner to the "Canvas" property value bar of the current "VideoCapture" component, and press Ctrl+S to save the current interface.["DragToAttribute_VideoCapture_Canvas_1","SaveFile_<%=ProjName%>.py"]
10+
4=Drag from the left toolbar to create a Button control and place it on the right side of Canvas_1. Set the text content to "Start Recording".["Create_Button","SetText_启动录制"]
11+
5=Then press ALT and drag to create a Button control and place it under Button 1. Set the text content to "Save Screenshot".["CopyCreate_Button_2","SetText_保存截图"]
12+
6=Then press ALT and drag to create a Button control and place it under Button 2. Set the text content to "stop recording".["CopyCreate_Button_3","SetText_停止录制"]
13+
7=Double click the "Start Camera" button to enter the click event response function. After wrapping, right-click and select "Start Recording" under "VideoCapture_1" in the "Interface Functions".["BindEvent_Button_1_onCommand","FunctionMenu_VideoCapture_StartCapture"]
14+
8=Start a new line below the function, select the "Save Screenshot" button in the thumbnail of the right-hand assistant bar, select the "Button Click" event, and click the "Bind" button to create an event response function.["BindEvent_Button_2_onCommand"]
15+
9=Enter the event response function, right-click after line wrapping, and select "Call Save File Box" in "System Functions".["FunctionMenu_saveFile"]
16+
10=Change the Python format saved in the code to PNG format, and write the code "if savePath:" after line breaks.["WriteCode_if savePath:"]
17+
11=After line breaking, right-click and select "Save Video as Image" under "VideoCapture_1" in the "Interface Functions". In the generated code, modify the parameter 1 of SaveImageToFile to savePath.["FunctionMenu_VideoCapture_SaveImageToFile","WriteCode_VideoCapture_1.SaveImageToFile(savePath,callbackFunction = None)"]
18+
12=Select the "Stop Recording" button in the thumbnail of the right-hand assistant bar, select the "Click" event, and click the "Bind" button to create an event response function.["BindEvent_Button_3_onCommand"]
19+
13=After line breaking, right-click and select "Stop Recording" under "VideoCapture_1" in the "Interface Functions" to generate the corresponding code.["FunctionMenu_VideoCapture_Stop"]
20+
14=Click on Run.["Run"]

PyMe/Wizard/视频捕捉.wiz

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
name=视频组件
2+
lessonid=26
3+
difficulty=简单
4+
reward=0
5+
introduction=了解使用组件开发视频采集的功能。
6+
stepindex=11
7+
1=从左边工具条拖动创建一个Canvas控件放到Form_1中,设置大小为800x600像素。["Create_Canvas","SetW_Canvas_1_800","SetH_Canvas_1_600"]
8+
2=从左边工具条的“其它”分类中找到“VideoCapture"组件,拖入到Form_1中。["Create_VideoCapture"]
9+
3=选中VideoCapture组件,从右上角的控件树中把树项“Canvas_1”拖动到当前“VideoCapture”组件的“Canvas”属性值栏中,按Ctrl+S保存当前界面。["DragToAttribute_VideoCapture_Canvas_1","SaveFile_<%=ProjName%>.py"]
10+
4=从左边工具条拖动创建一个Button控件放到Canvas_1右边,设置文字内容为“启动录制”。["Create_Button","SetText_启动录制"]
11+
5=再按着ALT拖动复制创建一个Button控件放到Button_1下边,设置文字内容为“保存截图”。["CopyCreate_Button_2","SetText_保存截图"]
12+
6=再按着ALT拖动复制创建一个Button控件放到Button_2下边,设置文字内容为“停止录制”。["CopyCreate_Button_3","SetText_停止录制"]
13+
7=双击“启动摄像头”按钮,进入点击事件响应函数,换行后鼠标右键单击,在“界面函数”中的“VideoCapture_1”下选择“开始录像”。["BindEvent_Button_1_onCommand","FunctionMenu_VideoCapture_StartCapture"]
14+
8=在函数下面另起一行,在右侧助手栏缩略图中选择选择“保存截图”按钮,选中“按钮点击”事件,并点击“绑定”按钮,创建事件响应函数。["BindEvent_Button_2_onCommand"]
15+
9=进入事件响应函数,换行后鼠标右键单击,在“系统函数”中选择“调用保存文件框”。["FunctionMenu_saveFile"]
16+
10=将代码中保存Python格式改为PNG格式,换行后编写代码“if savePath:”。["WriteCode_if savePath:"]
17+
11=换行后鼠标右键单击,在“界面函数”中的“VideoCapture_1”下选择“将视频保存为图片”,在生成的代码中将SaveImageToFile的参数1修改为savePath。["FunctionMenu_VideoCapture_SaveImageToFile","WriteCode_VideoCapture_1.SaveImageToFile(savePath,callbackFunction = None)"]
18+
12=在右侧助手栏缩略图中选择选择“停止录制”按钮,选中“点击”事件,并点击“绑定”按钮,创建事件响应函数。["BindEvent_Button_3_onCommand"]
19+
13=换行后鼠标右键单击,在“界面函数”中的“VideoCapture_1”下选择“停止录制”,生成对应代码。["FunctionMenu_VideoCapture_Stop"]
20+
14=点击运行。["Run"]
0 Bytes
Binary file not shown.
Binary file not shown.
20.5 KB
Binary file not shown.
20.5 KB
Binary file not shown.
21 KB
Binary file not shown.
22 KB
Binary file not shown.
21 KB
Binary file not shown.
9.5 KB
Binary file not shown.
Binary file not shown.
Binary file not shown.
65.5 KB
Binary file not shown.
1.02 MB
Binary file not shown.
100 KB
Binary file not shown.
20 KB
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
100 KB
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
68 KB
Binary file not shown.
0 Bytes
Binary file not shown.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
pip
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
Copyright 2010 Pallets
2+
3+
Redistribution and use in source and binary forms, with or without
4+
modification, are permitted provided that the following conditions are
5+
met:
6+
7+
1. Redistributions of source code must retain the above copyright
8+
notice, this list of conditions and the following disclaimer.
9+
10+
2. Redistributions in binary form must reproduce the above copyright
11+
notice, this list of conditions and the following disclaimer in the
12+
documentation and/or other materials provided with the distribution.
13+
14+
3. Neither the name of the copyright holder nor the names of its
15+
contributors may be used to endorse or promote products derived from
16+
this software without specific prior written permission.
17+
18+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19+
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20+
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
21+
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22+
HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23+
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
24+
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
25+
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
26+
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
27+
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28+
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,116 @@
1+
Metadata-Version: 2.1
2+
Name: Flask
3+
Version: 3.0.2
4+
Summary: A simple framework for building complex web applications.
5+
Maintainer-email: Pallets <contact@palletsprojects.com>
6+
Requires-Python: >=3.8
7+
Description-Content-Type: text/x-rst
8+
Classifier: Development Status :: 5 - Production/Stable
9+
Classifier: Environment :: Web Environment
10+
Classifier: Framework :: Flask
11+
Classifier: Intended Audience :: Developers
12+
Classifier: License :: OSI Approved :: BSD License
13+
Classifier: Operating System :: OS Independent
14+
Classifier: Programming Language :: Python
15+
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
16+
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI
17+
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI :: Application
18+
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
19+
Requires-Dist: Werkzeug>=3.0.0
20+
Requires-Dist: Jinja2>=3.1.2
21+
Requires-Dist: itsdangerous>=2.1.2
22+
Requires-Dist: click>=8.1.3
23+
Requires-Dist: blinker>=1.6.2
24+
Requires-Dist: importlib-metadata>=3.6.0; python_version < '3.10'
25+
Requires-Dist: asgiref>=3.2 ; extra == "async"
26+
Requires-Dist: python-dotenv ; extra == "dotenv"
27+
Project-URL: Changes, https://flask.palletsprojects.com/changes/
28+
Project-URL: Chat, https://discord.gg/pallets
29+
Project-URL: Documentation, https://flask.palletsprojects.com/
30+
Project-URL: Donate, https://palletsprojects.com/donate
31+
Project-URL: Issue Tracker, https://github.com/pallets/flask/issues/
32+
Project-URL: Source Code, https://github.com/pallets/flask/
33+
Provides-Extra: async
34+
Provides-Extra: dotenv
35+
36+
Flask
37+
=====
38+
39+
Flask is a lightweight `WSGI`_ web application framework. It is designed
40+
to make getting started quick and easy, with the ability to scale up to
41+
complex applications. It began as a simple wrapper around `Werkzeug`_
42+
and `Jinja`_ and has become one of the most popular Python web
43+
application frameworks.
44+
45+
Flask offers suggestions, but doesn't enforce any dependencies or
46+
project layout. It is up to the developer to choose the tools and
47+
libraries they want to use. There are many extensions provided by the
48+
community that make adding new functionality easy.
49+
50+
.. _WSGI: https://wsgi.readthedocs.io/
51+
.. _Werkzeug: https://werkzeug.palletsprojects.com/
52+
.. _Jinja: https://jinja.palletsprojects.com/
53+
54+
55+
Installing
56+
----------
57+
58+
Install and update using `pip`_:
59+
60+
.. code-block:: text
61+
62+
$ pip install -U Flask
63+
64+
.. _pip: https://pip.pypa.io/en/stable/getting-started/
65+
66+
67+
A Simple Example
68+
----------------
69+
70+
.. code-block:: python
71+
72+
# save this as app.py
73+
from flask import Flask
74+
75+
app = Flask(__name__)
76+
77+
@app.route("/")
78+
def hello():
79+
return "Hello, World!"
80+
81+
.. code-block:: text
82+
83+
$ flask run
84+
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
85+
86+
87+
Contributing
88+
------------
89+
90+
For guidance on setting up a development environment and how to make a
91+
contribution to Flask, see the `contributing guidelines`_.
92+
93+
.. _contributing guidelines: https://github.com/pallets/flask/blob/main/CONTRIBUTING.rst
94+
95+
96+
Donate
97+
------
98+
99+
The Pallets organization develops and supports Flask and the libraries
100+
it uses. In order to grow the community of contributors and users, and
101+
allow the maintainers to devote more time to the projects, `please
102+
donate today`_.
103+
104+
.. _please donate today: https://palletsprojects.com/donate
105+
106+
107+
Links
108+
-----
109+
110+
- Documentation: https://flask.palletsprojects.com/
111+
- Changes: https://flask.palletsprojects.com/changes/
112+
- PyPI Releases: https://pypi.org/project/Flask/
113+
- Source Code: https://github.com/pallets/flask/
114+
- Issue Tracker: https://github.com/pallets/flask/issues/
115+
- Chat: https://discord.gg/pallets
116+
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
../../Scripts/flask.exe,sha256=3HSbS74CAcrZbzqF3G3F2HVmcnGvb_wC2pwgynCUN64,108368
2+
flask-3.0.2.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
3+
flask-3.0.2.dist-info/LICENSE.rst,sha256=SJqOEQhQntmKN7uYPhHg9-HTHwvY-Zp5yESOf_N9B-o,1475
4+
flask-3.0.2.dist-info/METADATA,sha256=5SsBudAoun3E_3ZSRXJLB2V3NAdALovsQMKUvzqcJfM,3588
5+
flask-3.0.2.dist-info/RECORD,,
6+
flask-3.0.2.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7+
flask-3.0.2.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
8+
flask-3.0.2.dist-info/entry_points.txt,sha256=bBP7hTOS5fz9zLtC7sPofBZAlMkEvBxu7KqS6l5lvc4,40
9+
flask/__init__.py,sha256=6xMqdVA0FIQ2U1KVaGX3lzNCdXPzoHPaa0hvQCNcfSk,2625
10+
flask/__main__.py,sha256=bYt9eEaoRQWdejEHFD8REx9jxVEdZptECFsV7F49Ink,30
11+
flask/__pycache__/__init__.cpython-38.pyc,,
12+
flask/__pycache__/__main__.cpython-38.pyc,,
13+
flask/__pycache__/app.cpython-38.pyc,,
14+
flask/__pycache__/blueprints.cpython-38.pyc,,
15+
flask/__pycache__/cli.cpython-38.pyc,,
16+
flask/__pycache__/config.cpython-38.pyc,,
17+
flask/__pycache__/ctx.cpython-38.pyc,,
18+
flask/__pycache__/debughelpers.cpython-38.pyc,,
19+
flask/__pycache__/globals.cpython-38.pyc,,
20+
flask/__pycache__/helpers.cpython-38.pyc,,
21+
flask/__pycache__/logging.cpython-38.pyc,,
22+
flask/__pycache__/sessions.cpython-38.pyc,,
23+
flask/__pycache__/signals.cpython-38.pyc,,
24+
flask/__pycache__/templating.cpython-38.pyc,,
25+
flask/__pycache__/testing.cpython-38.pyc,,
26+
flask/__pycache__/typing.cpython-38.pyc,,
27+
flask/__pycache__/views.cpython-38.pyc,,
28+
flask/__pycache__/wrappers.cpython-38.pyc,,
29+
flask/app.py,sha256=TQfhvSlv1QpaPHeeRz_Ke7JmiSFMMHT-rJR4tqsEHdc,59706
30+
flask/blueprints.py,sha256=H7u4HzNn--riGMTt5GkxUHpYRzCav-WDGSKNnBSEMcU,3160
31+
flask/cli.py,sha256=eegT_64cSOqaKOwI_Am3XwaCSJPZ9UEJ6EmSL0qg8xg,35833
32+
flask/config.py,sha256=QiL9KkQT8RWc0HU2AE26Yw5mdOkNsKv8TEFEbXkqhJk,13328
33+
flask/ctx.py,sha256=4atDhJJ_cpV1VMq4qsfU4E_61M1oN93jlS2H9gjrl58,15120
34+
flask/debughelpers.py,sha256=PGIDhStW_efRjpaa3zHIpo-htStJOR41Ip3OJWPYBwo,6080
35+
flask/globals.py,sha256=XdQZmStBmPIs8t93tjx6pO7Bm3gobAaONWkFcUHaGas,1713
36+
flask/helpers.py,sha256=tYrcQ_73GuSZVEgwFr-eMmV69UriFQDBmt8wZJIAqvg,23084
37+
flask/json/__init__.py,sha256=hLNR898paqoefdeAhraa5wyJy-bmRB2k2dV4EgVy2Z8,5602
38+
flask/json/__pycache__/__init__.cpython-38.pyc,,
39+
flask/json/__pycache__/provider.cpython-38.pyc,,
40+
flask/json/__pycache__/tag.cpython-38.pyc,,
41+
flask/json/provider.py,sha256=q6iB83lSiopy80DZPrU-9mGcWwrD0mvLjiv9fHrRZgc,7646
42+
flask/json/tag.py,sha256=aXslvQyO4QpxviWJqxhyOj0CCQKlYXq1r0H9DKqiEY8,9280
43+
flask/logging.py,sha256=8sM3WMTubi1cBb2c_lPkWpN0J8dMAqrgKRYLLi1dCVI,2377
44+
flask/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
45+
flask/sansio/README.md,sha256=-0X1tECnilmz1cogx-YhNw5d7guK7GKrq_DEV2OzlU0,228
46+
flask/sansio/__pycache__/app.cpython-38.pyc,,
47+
flask/sansio/__pycache__/blueprints.cpython-38.pyc,,
48+
flask/sansio/__pycache__/scaffold.cpython-38.pyc,,
49+
flask/sansio/app.py,sha256=ZF0Yy610NKSpdJ1d6qtG4L2RkCmzngu0G9FFXZf4O_M,38209
50+
flask/sansio/blueprints.py,sha256=Tqe-7EkZ-tbWchm8iDoCfD848f0_3nLv6NNjeIPvHwM,24637
51+
flask/sansio/scaffold.py,sha256=9SSSC6A_zzXhcEVYf9wkrKx2r4uDqfIWsnRNYSvDclU,30879
52+
flask/sessions.py,sha256=bIpZRwiTfnYJn3ikVnCPcF2kNtyRz0dfpsuMADIpSJc,14518
53+
flask/signals.py,sha256=V7lMUww7CqgJ2ThUBn1PiatZtQanOyt7OZpu2GZI-34,750
54+
flask/templating.py,sha256=2TcXLT85Asflm2W9WOSFxKCmYn5e49w_Jkg9-NaaJWo,7537
55+
flask/testing.py,sha256=3BFXb3bP7R5r-XLBuobhczbxDu8-1LWRzYuhbr-lwaE,10163
56+
flask/typing.py,sha256=ZavK-wV28Yv8CQB7u73qZp_jLalpbWdrXS37QR1ftN0,3190
57+
flask/views.py,sha256=B66bTvYBBcHMYk4dA1ScZD0oTRTBl0I5smp1lRm9riI,6939
58+
flask/wrappers.py,sha256=m1j5tIJxIu8_sPPgTAB_G4TTh52Q-HoDuw_qHV5J59g,5831

PyMe/_internal/flask-3.0.2.dist-info/REQUESTED

Whitespace-only changes.
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
Wheel-Version: 1.0
2+
Generator: flit 3.9.0
3+
Root-Is-Purelib: true
4+
Tag: py3-none-any
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[console_scripts]
2+
flask=flask.cli:main
3+

PyMe/_internal/selenium/webdriver/common/devtools/v121/py.typed

Whitespace-only changes.

PyMe/_internal/selenium/webdriver/common/devtools/v122/py.typed

Whitespace-only changes.

PyMe/_internal/selenium/webdriver/common/devtools/v123/py.typed

Whitespace-only changes.
Binary file not shown.
Binary file not shown.
Binary file not shown.

0 commit comments

Comments
 (0)