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 相关文章推荐
Python迭代器和生成器介绍
Mar 06 Python
python3+PyQt5实现使用剪贴板做复制与粘帖示例
Jan 24 Python
python snownlp情感分析简易demo(分享)
Jun 04 Python
Django实现快速分页的方法实例
Oct 22 Python
Django使用HttpResponse返回图片并显示的方法
May 22 Python
替换python字典中的key值方法
Jul 06 Python
python+opencv像素的加减和加权操作的实现
Jul 14 Python
python实现对变位词的判断方法
Apr 05 Python
Python项目跨域问题解决方案
Jun 22 Python
python 下载文件的多种方法汇总
Nov 17 Python
Python中BeautifulSoup通过查找Id获取元素信息
Dec 07 Python
Python基础之元编程知识总结
May 23 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 伪静态隐藏传递参数名的四种方法
2010/02/22 PHP
php学习之运算符相关概念
2011/06/09 PHP
SESSION信息保存在哪个文件目录下以及能够用来保存什么类型的数据
2012/06/17 PHP
php如何调用webservice应用介绍
2012/11/24 PHP
解析:php调用MsSQL存储过程使用内置RETVAL获取过程中的return值
2013/07/03 PHP
PHP仿博客园 个人博客(2) 数据库增添改删
2013/07/05 PHP
PHP格式化MYSQL返回float类型的方法
2016/03/30 PHP
JavaScript 基础问答三
2008/12/03 Javascript
Jquery 动态添加按钮实现代码
2010/05/06 Javascript
关于jQuery参考实例 1.0 jQuery的哲学
2013/04/07 Javascript
Jquery实现页面加载时弹出对话框代码
2013/04/19 Javascript
js光标定位文本框回车表单提交问题的解决方法
2015/05/11 Javascript
jquery实现点击弹出带标题栏的弹出层(从右上角飞入)效果
2015/09/19 Javascript
js实现页面a向页面b传参的方法
2016/05/29 Javascript
jQuery插件HighCharts实现的2D对数饼图效果示例【附demo源码下载】
2017/03/09 Javascript
JSONP基础知识详解
2017/03/19 Javascript
微信小程序实现瀑布流布局与无限加载的方法详解
2017/05/12 Javascript
JS实现点击循环切换显示内容的方法
2017/10/19 Javascript
layui之select的option叠加问题的解决方法
2018/03/08 Javascript
详解Angularjs 自定义指令中的数据绑定
2018/07/19 Javascript
Intellij IDEA搭建vue-cli项目的方法步骤
2018/10/20 Javascript
详解微信小程序与内嵌网页交互实现支付功能
2018/10/22 Javascript
[01:24:16]2018DOTA2亚洲邀请赛 4.6 全明星赛
2018/04/10 DOTA
python中使用enumerate函数遍历元素实例
2014/06/16 Python
在类Unix系统上开始Python3编程入门
2015/08/20 Python
Python实现的批量修改文件后缀名操作示例
2018/12/07 Python
解决python3运行selenium下HTMLTestRunner报错的问题
2018/12/27 Python
Python下简易的单例模式详解
2019/04/08 Python
解决Python3 抓取微信账单信息问题
2019/07/19 Python
python基于socket进行端口转发实现后门隐藏的示例
2019/07/25 Python
python 字符串格式化的示例
2020/09/21 Python
高级护理专业毕业生推荐信
2013/12/25 职场文书
争先创优心得体会
2014/09/12 职场文书
乡镇党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
动作冒险《Hell Is Us》将采用虚幻5 消灭怪物探索王国
2022/04/13 其他游戏
Redis基本数据类型哈希Hash常用操作命令
2022/06/01 Redis