python编辑文档,python写一个文本编辑器

  python编辑文档,python写一个文本编辑器

  用Python的wx模块创建文本编辑器的方法:

  1、设置按钮的位置

  importwx

  app=wx .应用程序()

  win=wx .框架(无,标题=编辑器,size=(410,335))

  赢了。显示()

  loadButton=wx按钮(win,label=打开,pos=(225,5),size=(80,25))

  保存按钮=wx .按钮(win,label=保存,pos=(315,5),size=(80,25))

  文件名=wx .TextCtrl(win,pos=(5,5),size=(210,25))

  内容=wx .TextCtrl(win,pos=(5,35),size=(390,260),style=wx .TE_MULTILINEwx .HSCROLL)

  应用程序.主循环()2,对窗口内容进行布局

  importwx

  app=wx .应用程序()

  win=wx .框架(无,标题=编辑器,size=(410,335))

  bkg=wx .面板(赢)

  loadButton=wx按钮(bkg,label=打开)

  保存按钮=wx .按钮(bkg,label=保存)

  文件名=wx .文本控制(bkg)

  内容=wx .TextCtrl(bkg,style=wx .TE_MULTILINEwx .HSCROLL)

  hbox=wx .盒子尺寸确定器()

  hbox .添加(文件名,比例=1,标志=wx .展开)

  hbox .Add(loadButton,proportion=0,flag=wx .左边框=5)

  hbox .添加(保存按钮,比例=0,标志=wx .左边框=5)

  vbox=wx .箱式筛分机(wx .垂直)

  vbox .添加(hbox,比例=0,标志=wx .展开wx .ALL,border=5)

  vbox .添加(内容,比例=1,标志=wx .展开wx .左wx .底部wx .右边框=5)

  bkg .设置尺寸(vbox)

  赢了。显示()

  应用程序.主循环()3,添加事件处理函数

  在图像使用者界面术语中,用户执行的动作(比如点击按钮)叫做事件。我们需要让程序注意这些事件并且作出反应。

  假设写了一个负责打开文件的函数,并将其命令为负载,然后就可以像下面这样将函数作为加载按钮的事件处理函数:

  加载按钮。绑定(wx .EVT _按钮,加载)

  让我们来完成剩下的工作,现在需要的就是两个事件处理函数:加载(打开)和保存(保存)。当事件被调用时,它会收到一个事件对象作为它唯一的参数,其中包括发生了什么事情的信息,但是在这里可以忽略这方法的事情,因为程序只关心点击时发生的事情。

  卸载(事件):

  文件=打开(文件名GetValue())

  内容SetValue(file.read())

  file.close()

  文件名使用文件名对象重载方法获取。为了将文本引入文本区,只要使用内容。设定值即可。

  救援函数和负荷类似,除了它需要写入( w ),以及用于文件处理部分的写方法,GetValue用于从文本区获得信息。

  defsave(事件):

  文件=打开(文件名GetValue(), w )

  文件.写入(内容GetValue())

  file.close()完整代码如下:

  importwx

  卸载(事件):

  文件=打开(文件名GetValue())

  内容SetValue(file.read())

  file.close()

  defsave(事件):

  文件=打开(文件名GetValue(), w )

  文件.写入(内容GetValue())

  file.close()

  app=wx .应用程序()

  win=wx .框架(无,标题=编辑器,size=(410,335))

  bkg=wx .面板(赢)

  loadButton=wx按钮(bkg,label=打开)

  加载按钮。绑定(wx .EVT _按钮,加载)

  保存按钮=wx .按钮(bkg,label=保存)

  保存按钮。绑定(wx .EVT _按钮,保存)

  文件名=wx .文本控制(bkg)

  内容=wx .TextCtrl(bkg,style=wx .TE_MULTILINEwx .HSCROLL)

  hbox=wx .盒子尺寸确定器()

  hbox .添加(文件名,比例=1,标志=wx .展开)

  hbox .Add(loadButton,proportion=0,flag=wx .左边框=5)

  hbox .添加(保存按钮,比例=0,标志=wx .左边框=5)

  vbox=wx .箱式筛分机(wx .垂直)

  vbox .添加(hbox,比例=0,标志=wx .展开wx .ALL,border=5)

  vbox .添加(内容,比例=1,标志=wx .展开wx .左wx .底部wx .右边框=5)

  bkg .设置尺寸(vbox)

  赢了。显示()

  应用程序.主循环()执行结果如下:

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: