首页
关于
Search
1
解决PyQt资源文件不存在的问题
361 阅读
2
VBA获取拼音缩写
321 阅读
3
欢迎使用 Typecho
317 阅读
4
VB.net使用Newtonsoft.JSON解析JSON
305 阅读
5
VB.net 获取网页源码
147 阅读
默认分类
Code
登录
Search
标签搜索
VB.net
Python
Qt
JSON
VBA
Excel
Hanse
累计撰写
10
篇文章
累计收到
0
条评论
首页
栏目
默认分类
Code
页面
关于
搜索到
10
篇与
的结果
2023-10-23
PyChram配置Qt外部工具
使用Qt开发UI,有一个工具是绕不开的,那就是QtDesigner。对于使用Python开发来说,我们需要把QtDesigner生产的.ui文件,转成对应的.py文件,才可以正常使用。(其实也有另一种方法是直接读取.ui文件,但这种方法的缺点是编程时没有代码补全。)如果涉及到资源文件.qrc,同样也需要转换成.py文件。因此我们需要配置3个外部工具,分别是QtDesigner 用来编辑.ui文件UIC 把.ui文件转换为'py文件RCC 把.qrc文件转换为.py文件省流版新增外部工具打开(或新建)一个工程,点文件->设置,打开设置界面,找到工具->外部工具,点+即可新增外部工具。按照以下图示创建3个外部工具。QtDesigner程序路径C:\Users\username\AppData\Local\Programs\Python\Python310\Lib\site-packages\PySide6\designer.exe其中username为用户名,Python310为对应的Python版本,PySide6为对应的PySide或PyQt版本。此外,以上路径为Python的默认安装路径,如果你不是安装在默认路径,需要按实际情况修改。下同不复赘述。实参$FileName$工作目录$FileDir$UIC程序路径C:\Users\username\AppData\Local\Programs\Python\Python310\Scripts\pyside6-uic.exe其中pyside6-uic的pyside6为对应的PySide或PyQt版本,下同不复赘述。实参$FileName$ -o ui_$FileNameWithoutExtension$.py工作目录$FileDir$RCC程序路径C:\Users\username\AppData\Local\Programs\Python\Python310\Scripts\pyside6-rcc.exe实参-o $FileNameWithoutExtension$_rc.py $FileName$工作目录$FileDir$使用QtDesigner目前在PyCharm中无法直接新建.ui文件,只能手动打开QtDesigner新建.ui文件。QtDesigner的目录具体参看上文QtDesigner的程序路径。此程序以后会经常使用,建议建立一个快捷方式。生成.ui文件后,在.ui文件上右键,外部工具->QtDesigner,即可使用QtDesigner编辑。UIC外部工具->UIC,即可把.ui文件转成.py文件。如mainwindow.ui会转为ui_mainwindow.py。RCC外部工具->RCC,即可把.rcc文件转成.py文件。如icon.qrc会转为icon_rc.py。多了解点外部工具名称:这个本身并没有什么特别支出,可按需任意取名,但考虑到实际使用体验,建议把UIC和RCC改个名字,方便操作时一眼认出。组:默认为外部工具,个人认为这也是最方便使用的。网上很多教程会让你把这几个外部工具列入二级分组,比如Qt,从组织整理上说,这种作法是对的,但如果你的开放环境只有这几个外部工具,其实没必要这样做,这样做会新增一个二级菜单,增加额外的操作。描述:相当于注释,可留空。程序:即要调用的外部程序所在的路径。实参:传入程序的参数,具体详见每个外部工具。工作目录:在哪个文件夹下调用该外部工具,具体详见每个外部工具。其他高级选项:保存默认即可(因为我也不懂)。QtDesigner如果使用命令行(或终端)调用该工具,完整命令为PS D:\MyProject> C:\Users\username\AppData\Local\Programs\Python\Python310\Lib\site-packages\PySide6\designer.exe .\mainwindow.ui运行以后,就会打开D:\MyProject下的mainwindow.ui文件。实参为mainwindow.ui,即当前文件名,可使用宏$FileName$获取。工作目录为D:\MyProject,即文件所在目录,可使用宏$FileDir$获取。网上很多教程会让你在这里使用$ProjectFileDir$,级项目所在目录。如果你的.ui文件是存在项目的根目录下,是可以正常运行的,因为此时项目目录就是文件所在目录。但如果不是,比如存放在src目录下,就会出错。类似的宏还有很多,如有要全部记下来显然不现实,点击旁边的+按钮,即可在众多的宏中选择所需的宏。UIC完整命令为PS D:\MyProject> pyside6-uic .\mainwindow.ui -o ui_mainwindow.py默认情况下,系统会把Python的第三方库加入path路径,所以在调用pyside6-uic.exe时无须填写冗长的完整路径,此外在Windows下,.exe也可以省略。实参为.\mainwindow.ui -o ui_mainwindow.py其中mainwindow.ui为输入文件名,可用宏$FileName$获取。新生成的文件名为ui_mainwindow.py,即ui_不含扩展名的文件名.py,其中不含扩展名的文件名可用宏$FileNameWithoutExtension$获取。因此最后使用宏表示为$FileName$ -o ui_$FileNameWithoutExtension$.py工作目录与上文一致,不再赘述。RCC完整命令为PS D:\MyProject> pyside6-rcc -o icon_rc.py .\icon.qrc请注意,实参部分,先传入的输出文件名icon_rc.py,再传入输入文件名icon.qrc,其他部分与前文的UIC内容是一样的道理,不再赘述。
2023年10月23日
52 阅读
0 评论
0 点赞
2022-01-07
欢迎使用 Typecho
如果您看到这篇文章,表示您的 blog 已经安装成功.
2022年01月07日
317 阅读
0 评论
0 点赞
2020-09-06
解决PyQt资源文件不存在的问题
如果使用Qt Designer设计界面,生成的ui文件,可以使用以下命令转换成py文件。pyside2-uic main.ui > main.py但如果设计中涉及到资源文件(如自定义图片),生产的main.py中会有import icon_rc,提示找不到文件,原因是没有转换对应的资源文件。可以使用以下命令将qrc资源文件转换为py文件。pyside2-rcc -o icon_rc.py icon.qrc
2020年09月06日
361 阅读
0 评论
0 点赞
2020-01-22
VBA获取拼音缩写
摘自网络打开一个空白的Excel表格,按Alt + F11打开VBA界面,在左侧空白处右键,选择插入→模块,然后输入以下代码:Function pinyin(p As String) As String i = Asc(p) Select Case i Case -20319 To -20284: pinyin = "A" Case -20283 To -19776: pinyin = "B" Case -19775 To -19219: pinyin = "C" Case -19218 To -18711: pinyin = "D" Case -18710 To -18527: pinyin = "E" Case -18526 To -18240: pinyin = "F" Case -18239 To -17923: pinyin = "G" Case -17922 To -17418: pinyin = "H" Case -17417 To -16475: pinyin = "J" Case -16474 To -16213: pinyin = "K" Case -16212 To -15641: pinyin = "L" Case -15640 To -15166: pinyin = "M" Case -15165 To -14923: pinyin = "N" Case -14922 To -14915: pinyin = "O" Case -14914 To -14631: pinyin = "P" Case -14630 To -14150: pinyin = "Q" Case -14149 To -14091: pinyin = "R" Case -14090 To -13319: pinyin = "S" Case -13318 To -12839: pinyin = "T" Case -12838 To -12557: pinyin = "W" Case -12556 To -11848: pinyin = "X" Case -11847 To -11056: pinyin = "Y" Case -11055 To -2050: pinyin = "Z" Case Else: pinyin = p End Select End Function Function getpy(str) For i = 1 To Len(str) getpy = getpy & pinyin(Mid(str, i, 1)) Next i End Function在Excel中即可调用自定义函数getpy获得拼音缩写,如=getpy(A1)。
2020年01月22日
321 阅读
0 评论
0 点赞
2020-01-22
VB.net使用Newtonsoft.JSON解析JSON
1.安装Newtonsoft.JSON在【解决方案资源管理器】中右键项目,选择【管理 NuGet 程序包】在浏览页面中搜索并安装Newtonsoft.Json即可2. 导入Newtonsoft.JsonImports Newtonsoft.Json Imports Newtonsoft.Json.Linq3.示例json如下{ "message": null, "data": { "paginationData": [ { "name": "管理员", "user_id": 16394, "groupsname": "" }, { "name": "测试", "user_id": 16395, "groupsname": "部门A" }, { "name": "隔壁老王", "user_id": 16396, "groupsname": "部门A" }, { "name": "小明", "user_id": 16397, "groupsname": "部门B" } ], "result": 1 } }先创建一个对应的结构体Public Structure Employee Dim name As String Dim user_id As Integer Dim groupsname As String End Structure读取并解析jsonDim rawStr As String = System.IO.File.ReadAllText("D:\test.json") '读取json文件,可根据实际情况替换对应语句 Dim p As JObject = CType(JsonConvert.DeserializeObject(rawStr), JObject) '用json文本创建对象 MsgBox(p("message".ToString)) '读取值 Dim emp As List(Of Employee) '创建对应的结构体列表 emp = JsonConvert.DeserializeObject(Of List(Of Employee))(p("data")("paginationData").ToString) '如果有多层结构,可以继续添加p的子孙项 Dim empCount As Integer = emp.Count '全部职员数量 MsgBox(emp(2).name & emp(2).user_id & emp(2).groupsname) '结果为“隔壁老王16396部门A”
2020年01月22日
305 阅读
0 评论
0 点赞
1
2