软件开发
文章平均质量分 64
Marvin Ming
目前在国企研究院做软件研发项目,擅长Python,爬虫、数据分析、软件开发和后端均有涉猎。
关于博客文章有任何问题请留言,我会不定期回复,欢迎交流,但百度10分钟内能够解决的问题不会回复。
其他问题可通过邮箱联系:constmmq@163.com。
展开
-
PySide2之QTableView结合QAbstractTableModel显示表格数据
Model负责与数据源通讯,并提供接口给结构中的别的组件使用。通讯的实质依赖于数据源的类型与Model实现的方式。View从Model获取模型索引,模型索引是数据项的引用。通过把模型索引提供给Model,View可以从数据源中获取数据。需求描述继承QAbstractTableModel类,创建自定义Model,用于保存表格类数据,供QtableView、QChart等视图调用显示。原创 2021-09-05 11:21:48 · 4533 阅读 · 0 评论 -
fortran与python跨语言集成(f2py/gfortran)
软件开发项目,界面使用Python开发,基于性能和资源丰富程度考虑,数值计算部分用Fotran语言实现,然后通过Python调用,其中Fortran代码版本较杂,f77、f90、f95同时共存。目前有如下两种解决方案,由于项目时间较为紧张,最终暂采用了F2Py方案:1. 利用F2Py将Fortran代码编译为pyd格式,在Python中可以直接作为模块import;2. 利用gfortran或intel的编译工具,将Fortran代码编译为dll文件。原创 2020-09-08 11:11:12 · 3867 阅读 · 4 评论 -
PySide2下如何动态添加和移除widgets和layouts
前言在软件开发的过程中,需要在对话框中动态添加和移除控件对象,并且对话框需要根据窗口内容的变化自适应调整自身大小(目前只能自适应变大,不能自适应变小,后续有机会再修改)。下面是代码运行效果截图:代码启动页面动态增加窗口内容动态移除窗口内容代码开发环境:Python3.7 + PySide2PyQt5实现方式基本相同。import sysimport numpy as npfrom PySide2.QtWidgets import QDialog, QWidget, QGrid原创 2021-08-30 15:40:32 · 3906 阅读 · 0 评论 -
Python软件项目打包——pyinstaller
说明本文主要针对于多文件打包,单文件打包不在本博客范围内。大型项目打包可参考本文。经本人测试,在win10系统下打包后的软件,无法在win7下运行。结合以往项目经验,若有跨平台需求,需要在不同平台下分别打包生成对应平台下的可执行文件,方可分发至不同平台用户。部分命令简介–distpath : 打包到哪个目录下-w: 指定生成 GUI 软件,也就是运行时不打开控制台-c: 运行时打开控制台-i : 指定打包后可执行文件的图标–clean: 在构建之前清理PyInstaller缓存并删除临时原创 2020-10-24 16:44:04 · 435 阅读 · 2 评论 -
Qt QGridlayout 布局比例-解决列宽不符合设定问题
在设定完QGridlayout布局内容后,将layout传入下述函数,即可实现行列宽高设定基本符合需求。 def gridLayoutSet(self, layout): # 设置每行每列比例一致 # 需设置每行每列最小宽度或高度,size需小于self.width() / layout.rowCount() rowSize = 100 colSize = 100 for row in range(layout.row原创 2020-09-08 11:12:49 · 7748 阅读 · 0 评论 -
PySide2/PyQt5 实现设置QDockWidget初始大小
尝试了QDockWidget自带的很多方法,发现无法在保证其可调整大小的情况下,设置其初始大小。当QDockWidget不需要支持调整大小时,可按照如下方法进行设置:# 非完整代码,仅供参考from PySide2.QtWidgets import QDockWidget, QMainWindowclass UIMainWindow(QMainWindow): def __init__(self, *args, **kwargs): super(UIMainWindow, s原创 2020-06-23 16:57:14 · 2780 阅读 · 0 评论