Python中使用wxPython开发的一个简易笔记本程序实例

 更新时间:2015年02月08日 11:49:15   投稿:junjie  
这篇文章主要介绍了Python中使用wxPython开发的一个简易笔记本程序实例,本文实现打开文件、修改并保存文件功能,需要的朋友可以参考下

一、简介

wxPython是Python语言的一套优秀的GUI图形库,允许Python程序员很方便的创建完整的、功能键全的GUI用户界面。 wxPython是作为优秀的跨平台GUI库wxWidgets的Python封装和Python模块的方式提供给用户的。

二、安装

参考官方网站:http://www.wxpython.org/download.php

三、DEMO

本demo是一个简单的记事本软件,可以打开文件,修改并保存。

import wx

app = wx.App()
win = wx.Frame(
  None,
  title="simple editor",
  size=(410, 335))

bkg = wx.Panel(win)


def openFile(evt):
  dlg = wx.FileDialog(
    win,
    "Open",
    "",
    "",
    "All files (*.*)|*.*",
    wx.FD_OPEN | wx.FD_FILE_MUST_EXIST)
  filepath = ''
  if dlg.ShowModal() == wx.ID_OK:
    filepath = dlg.GetPath()
  else:
    return
  filename.SetValue(filepath)
  fopen = open(filepath)
  fcontent = fopen.read()
  contents.SetValue(fcontent)
  fopen.close()


def saveFile(evt):
  fcontent = contents.GetValue()
  fopen = open(filename.GetValue(), 'w')
  fopen.write(fcontent)
  fopen.close()

openBtn = wx.Button(bkg, label='open')
openBtn.Bind(wx.EVT_BUTTON, openFile)

saveBtn = wx.Button(bkg, label='save')
saveBtn.Bind(wx.EVT_BUTTON, saveFile)

filename = wx.TextCtrl(bkg, style=wx.TE_READONLY)
contents = wx.TextCtrl(bkg, style=wx.TE_MULTILINE)

hbox = wx.BoxSizer()
hbox.Add(openBtn, proportion=0, flag=wx.LEFT | wx.ALL, border=5)
hbox.Add(filename, proportion=1, flag=wx.EXPAND | wx.TOP | wx.BOTTOM, border=5)
hbox.Add(saveBtn, proportion=0, flag=wx.LEFT | wx.ALL, border=5)

bbox = wx.BoxSizer(wx.VERTICAL)
bbox.Add(hbox, proportion=0, flag=wx.EXPAND | wx.ALL)
bbox.Add(
  contents,
  proportion=1,
  flag=wx.EXPAND | wx.LEFT | wx.BOTTOM | wx.RIGHT,
  border=5)

bkg.SetSizer(bbox)
win.Show()
app.MainLoop()

运行效果:

相关文章

  • Python入门教程(十五)Python的字典

    Python入门教程(十五)Python的字典

    这篇文章主要介绍了Python入门教程(十五)Python的字典,Python是一门非常强大好用的语言,也有着易上手的特性,本文为入门教程,需要的朋友可以参考下
    2023-04-04
  • pandas中.loc和.iloc以及.at和.iat的区别说明

    pandas中.loc和.iloc以及.at和.iat的区别说明

    这篇文章主要介绍了pandas中.loc和.iloc以及.at和.iat的区别说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • Django框架视图介绍与使用详解

    Django框架视图介绍与使用详解

    这篇文章主要介绍了Django框架视图介绍与使用,结合实例形式分析了Django框架视图的功能、配置、使用方法及相关操作注意事项,需要的朋友可以参考下
    2019-07-07
  • 使用Python pyWinAuto库自动化Windows任务的示例代码

    使用Python pyWinAuto库自动化Windows任务的示例代码

    pywinauto是Python的一个强大的自动化库,它可以用于控制Windows应用程序的用户界面,本文将详细介绍pywinauto库的安装、基本用法和高级应用,以便你能够更好地了解如何使用它来自动化Windows应用程序,文中有详细的代码示例供大家参考,需要的朋友可以参考下
    2023-11-11
  • 简单了解python shutil模块原理及使用方法

    简单了解python shutil模块原理及使用方法

    这篇文章主要介绍了简单了解python shutil模块原理及使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • Python读取csv文件做K-means分析详情

    Python读取csv文件做K-means分析详情

    这篇文章主要介绍了Python读取csv文件做K-means分析详情,基于时间序列的分析2D读取时间列和高程做一下分析。下文更多详细介绍需要的小伙伴可以参考一下
    2022-03-03
  • Python入门教程(七)Python数字类型

    Python入门教程(七)Python数字类型

    这篇文章主要介绍了Python入门教程(七)Python数字类型,Python是一门非常强大好用的语言,也有着易上手的特性,本文为入门教程,需要的朋友可以参考下
    2023-04-04
  • 基于Python的接口测试框架实例

    基于Python的接口测试框架实例

    下面小编就为大家带来一篇基于Python的接口测试框架实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • python实现自动化报表功能(Oracle/plsql/Excel/多线程)

    python实现自动化报表功能(Oracle/plsql/Excel/多线程)

    这篇文章主要介绍了python实现自动化报表(Oracle/plsql/Excel/多线程)的相关知识,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-12-12
  • Python实现绘制水平线

    Python实现绘制水平线

    这篇文章主要为大家详细介绍如何了在Python中创建一条水平线以及Python 中的 Matplotlib 库的使用,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下
    2023-10-10

最新评论