wxPython使用系统剪切板的方法


Posted in Python onJune 16, 2015

本文实例讲述了wxPython使用系统剪切板的方法。分享给大家供大家参考。具体如下:

程序运行效果如下图所示:

wxPython使用系统剪切板的方法

主要代码如下:

import wx
########################################################################
class ClipboardPanel(wx.Panel):
  """"""
  #----------------------------------------------------------------------
  def __init__(self, parent):
    """Constructor"""
    wx.Panel.__init__(self, parent)
    lbl = wx.StaticText(self, label="Enter text to copy to clipboard:")
    self.text = wx.TextCtrl(self, style=wx.TE_MULTILINE)
    copyBtn = wx.Button(self, label="Copy")
    copyBtn.Bind(wx.EVT_BUTTON, self.onCopy)
    copyFlushBtn = wx.Button(self, label="Copy and Flush")
    copyFlushBtn.Bind(wx.EVT_BUTTON, self.onCopyAndFlush)
    sizer = wx.BoxSizer(wx.VERTICAL)
    sizer.Add(lbl, 0, wx.ALL, 5)
    sizer.Add(self.text, 1, wx.EXPAND)
    sizer.Add(copyBtn, 0, wx.ALL|wx.CENTER, 5)
    sizer.Add(copyFlushBtn, 0, wx.ALL|wx.CENTER, 5)
    self.SetSizer(sizer)
  #----------------------------------------------------------------------
  def onCopy(self, event):
    """"""
    self.dataObj = wx.TextDataObject()
    self.dataObj.SetText(self.text.GetValue())
    if wx.TheClipboard.Open():
      wx.TheClipboard.SetData(self.dataObj)
      wx.TheClipboard.Close()
    else:
      wx.MessageBox("Unable to open the clipboard", "Error")
  #----------------------------------------------------------------------
  def onCopyAndFlush(self, event):
    """"""
    self.dataObj = wx.TextDataObject()
    self.dataObj.SetText(self.text.GetValue())
    if wx.TheClipboard.Open():
      wx.TheClipboard.SetData(self.dataObj)
      wx.TheClipboard.Flush()
    else:
      wx.MessageBox("Unable to open the clipboard", "Error")
    self.GetParent().Close()
########################################################################
class ClipboardFrame(wx.Frame):
  """"""
  #----------------------------------------------------------------------
  def __init__(self):
    """Constructor"""
    wx.Frame.__init__(self, None, title="Clipboard Tutorial")
    panel = ClipboardPanel(self)
    self.Show()
if __name__ == "__main__":
  app = wx.App(False)
  frame = ClipboardFrame()
  app.MainLoop()

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
Flask框架学习笔记(一)安装篇(windows安装与centos安装)
Jun 25 Python
在Python中利用Pandas库处理大数据的简单介绍
Apr 07 Python
Python操作串口的方法
Jun 17 Python
基于python实现的抓取腾讯视频所有电影的爬虫
Apr 22 Python
老生常谈Python基础之字符编码
Jun 14 Python
Python cookbook(数据结构与算法)对切片命名清除索引的方法
Mar 13 Python
用PyInstaller把Python代码打包成单个独立的exe可执行文件
May 26 Python
python给微信好友定时推送消息的示例
Feb 20 Python
Python3 集合set入门基础
Feb 10 Python
pytorch实现MNIST手写体识别
Feb 14 Python
基于Python+QT的gui程序开发实现
Jul 03 Python
Python3 使用pip安装git并获取Yahoo金融数据的操作
Apr 08 Python
Python读取键盘输入的2种方法
Jun 16 #Python
Python本地与全局命名空间用法实例
Jun 16 #Python
Python实现简单HTML表格解析的方法
Jun 15 #Python
Python判断Abundant Number的方法
Jun 15 #Python
Python计算一个文件里字数的方法
Jun 15 #Python
Python素数检测实例分析
Jun 15 #Python
Python计算三维矢量幅度的方法
Jun 15 #Python
You might like
转PHP手册及PHP编程标准
2006/12/17 PHP
开启CURL扩展,让服务器支持PHP curl函数(远程采集)
2011/03/19 PHP
php的常量和变量实例详解
2017/06/27 PHP
通过PHP设置BugFree获取邮箱通知
2019/04/25 PHP
Jquery下的26个实用小技巧(jQuery tips, tricks & solutions)
2010/03/01 Javascript
JavaScript版TAB选项卡效果实例
2013/08/16 Javascript
文本框回车提交与禁止提交示例
2013/09/27 Javascript
图片动画横条广告带上下滚动的JS代码
2013/10/25 Javascript
node.js中的定时器nextTick()和setImmediate()区别分析
2014/11/26 Javascript
javascript使用call调用微信API
2014/12/15 Javascript
JS实现图片高亮展示效果实例
2015/11/24 Javascript
mvc中form表单提交的三种方式(推荐)
2016/08/10 Javascript
微信小程序 下拉菜单简单实例
2017/04/13 Javascript
JavaScript实现前端分页控件
2017/04/19 Javascript
微信公众号平台接口开发 获取access_token过程解析
2019/08/14 Javascript
vuex存储复杂参数(如对象数组等)刷新数据丢失的解决方法
2019/11/05 Javascript
微信公众号网页分享功能开发的示例代码
2020/05/27 Javascript
初步剖析C语言编程中的结构体
2016/01/16 Python
Python sqlite3事务处理方法实例分析
2017/06/19 Python
Python如何快速实现分布式任务
2017/07/06 Python
tensorflow 使用flags定义命令行参数的方法
2018/04/23 Python
在Mac下使用python实现简单的目录树展示方法
2018/11/01 Python
python函数局部变量、全局变量、递归知识点总结
2019/11/15 Python
Django将默认的SQLite更换为MySQL的实现
2019/11/18 Python
Python+OpenCV+图片旋转并用原底色填充新四角的例子
2019/12/12 Python
python 实现list或string按指定分段
2019/12/25 Python
html5新特性与用法大全
2018/09/13 HTML / CSS
重新定义牛仔布,100美元以下:Warp + Weft
2018/07/25 全球购物
与世界上最好的跑步专业品牌合作:Fleet Feet
2019/03/22 全球购物
如何配置、使用和清除Smarty缓存
2015/12/23 面试题
介绍一下XMLHttpRequest对象的常用方法和属性
2013/05/24 面试题
Hibernate持久层技术
2013/12/16 面试题
儿科护理实习自我鉴定
2013/09/19 职场文书
会议主持词通用版
2019/04/02 职场文书
使用python绘制横竖条形图
2022/04/21 Python
Win11控制面板快捷键是什么?Win11打开控制面板的方法汇总
2022/07/07 数码科技