利用python制作一个雷诺数图形界面计算器并打包生成exe
文章目录GUI制作打包exe问题1exe运行中有黑色控制台2如何用截图生成png做图标GUI制作首先安装包,在这里推荐anaconda可以管理包pip install PySimpleGUI利用PySimpleGUI制作图形界面,根据公式计算雷诺数import PySimpleGUI as sgimport mathlayout = [[sg.Text('速度:',size=(...
·
GUI制作
首先安装包,在这里推荐anaconda可以管理包
pip install PySimpleGUI
利用PySimpleGUI制作图形界面,根据公式计算雷诺数
import PySimpleGUI as sg
import math
layout = [[sg.Text('速度:',size=(5,1)),sg.InputText('1.0'),sg.Text('m/s')],
[sg.Text('密度:',size=(5,1)),sg.InputText('1.225'),sg.Text('kg/m3')],
[sg.Text('粘度:',size=(5,1)),sg.InputText('1.8375e-5'),sg.Text('kg/m-s')],
[sg.Text('长度:',size=(5,1)),sg.InputText('1.0'),sg.Text('m')],
[sg.Text('y+:',size=(5,1)),sg.InputText('1.0')],
[sg.Button("计算"),sg.Button("退出")],
[sg.Text('ΔS=',size=(5,1)),sg.InputText("",key='_DeltaS_'),sg.Text('m')],
[sg.Text('Re=',size=(5,1)),sg.InputText("",key="_Re_")]
]
window = sg.FlexForm('Y+计算器').Layout(layout)
while True:
button, values = window.Read()
if button is None or button =='退出':
break
else:
u = eval(values[0])
rho = eval(values[1])
mu = eval(values[2])
L = eval(values[3])
yplus = eval(values[4])
Re = rho*u*L/mu;
cf = 0.026/pow(Re,1/7);
Twall = cf*rho * u * u/2;
ufric = pow(Twall/rho,0.5);
deltas = yplus * mu / ufric/rho;
window.find_element("_Re_").Update(Re)
window.find_element("_DeltaS_").Update((str(deltas)))
window.Close()
代码写完后运行效果如图
打包exe
在这里打包所采用的方式是pyinstaller,依旧如此先安装包,在这里我用了ananconda安装,根据版本控制可以轻松安装
在这里是打包问题,在终端输入如下,在这里需要有两个文件
pyinstaller -F -w -i re2.ico CFDtools.py
运行后可以生成exe
其中代码含义如下
问题
1exe运行中有黑色控制台
使用上图-w可以使其没有
2如何用截图生成png做图标
截图生成png直接运行会报错如果直接该图标为ico后也会报错,具体原因是尺寸无法扩展无法对应各个不同的情况,如开始菜单桌面。
具体问题解决链接如下
打包成exe执行文件,icon图标显示问题的解决方案
在这里其实还可以利用网上的资源将png在线生成ico
在运行后可以顺利运行,但图标没有更改
此时将图标文件复制进dist文件夹即可显示
点击阅读全文
更多推荐
目录
所有评论(0)