我正在创建一个自定义模块来帮助我用更少的代码和更简洁的语法更快地编写 python。
目前我正在创建一个更简洁的 wx.Accelerator 版本的函数。
到此结束时,我希望:
accel_tbl = wx.AcceleratorTable([(wx.ACCEL_CTRL, ord('O'), PUT_ID_HERE),
(wx.ACCEL_CTRL, ord('S'), PUT_ID_HERE)])
self.SetAcceleratorTable(accel_tbl)
成为:
accelerate((wx.ACCEL_CTRL,'O',PUT_ID_HERE),
(wx.ACCEL_CTRL,'S',PUT_ID_HERE))
唯一的问题是..我不知道从哪里开始....我知道如何通过参数处理信息,但我从来没有学会如何处理参数内包含动态信息的多个元组。
有人可以提供见解吗?谢谢你。
编辑:
当前代码:
## Create a cleaner accelerator
def accelerate(*args):
accel_tbl = wx.AcceleratorTable(list(args))
wx.SetAcceleratorTable(accel_tbl)
当前通话:
import Sky
Sky.accelerate((wx.ACCEL_CTRL,'s',wx.ID_ANY),
(wx.ACCEL_CTRL,'t',wx.ID_ANY))