在这篇博客中,我将介绍如何使用Python的wxPython
库开发一个GUI应用程序,该应用程序可以选择文件夹中的.lnk
(快捷方式)文件,并将选中的文件导出为特定格式的buttons.ini
配置文件。这个工具非常适合用来快速生成配置文件,其中包含用户选择的快捷方式,并为每个快捷方式设置特定的属性。
C:\pythoncode\new\lnkTOConfig.py
全部代码
import wx
import os
import win32com.client
class LnkFileSelector(wx.Frame):
def __init__(self, *args, **kw):
super(LnkFileSelector, self).__init__(*args, **kw)
self.InitUI()
self.lnk_files = []
self.selected_files = []
def InitUI(self):
panel = wx.Panel(self)
vbox = wx.BoxSizer(wx.VERTICAL)
hbox1 = wx.BoxSizer(wx.HORIZONTAL)
self.btn_select_folder = wx.Button(panel, label="Select Folder")
self.btn_select_folder.Bind(wx.EVT_BUTTON, self.OnSelectFolder)
hbox1.Add(self.btn_select_folder, flag=wx.LEFT, border=10)
vbox.Add(hbox1, flag=wx.EXPAND | wx.TOP | wx.BOTTOM, border=10)
hbox2 = wx.BoxSizer(wx.HORIZONTAL)
self.listbox1 = wx.ListBox(panel)
self.listbox1.Bind(wx.EVT_LISTBOX_DCLICK, self.OnItemDoubleClick)
hbox2.Add(self.listbox1, proportion=1, flag=wx.EXPAND | wx.ALL, border=10)
self.listbox2 = wx.ListBox(panel)
hbox2.Add(self.listbox2, proportion=1, flag=wx.EXPAND | wx.ALL, border=10)
vbox.Add(hbox2, proportion=1, flag=wx.EXPAND)
hbox3 = wx.BoxSizer(wx.HORIZONTAL)
self.btn_export = wx.Button(panel, label="Export to INI")
self.btn_export.Bind(wx.EVT_BUTTON, self.OnExport)
hbox3.Add(self.btn_export, flag=wx.LEFT, border=10)
vbox.Add(hbox3, flag=wx.ALIGN_CENTER | wx.TOP | wx.BOTTOM, border=10)
panel.SetSizer(vbox)