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 从远程服务器下载东西的代码
Feb 10 Python
Python字符串处理函数简明总结
Apr 13 Python
Python中用altzone()方法处理时区的教程
May 22 Python
Python使用xlwt模块操作Excel的方法详解
Mar 27 Python
Python3使用Matplotlib 绘制精美的数学函数图形
Apr 11 Python
python3实现二叉树的遍历与递归算法解析(小结)
Jul 03 Python
Python爬虫爬取Bilibili弹幕过程解析
Oct 10 Python
Python3 A*寻路算法实现方式
Dec 24 Python
Python反爬虫伪装浏览器进行爬虫
Feb 28 Python
python三引号如何输入
Jul 06 Python
python缩进长度是否统一
Aug 02 Python
Python 处理表格进行成绩排序的操作代码
Jul 26 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
JAVA/JSP学习系列之四
2006/10/09 PHP
PHP中的正规表达式(一)
2006/10/09 PHP
PHP 获取文件路径(灵活应用__FILE__)
2013/02/15 PHP
CentOS 上搭建 PHP7 开发测试环境
2017/02/26 PHP
mac系统下安装多个php并自由切换的方法详解
2017/04/21 PHP
Ajax请求PHP后台接口返回信息的实例代码
2018/08/21 PHP
php curl获取https页面内容,不直接输出返回结果的设置方法
2019/01/15 PHP
javascript中利用数组实现的循环队列代码
2010/01/24 Javascript
jquery对ajax的支持介绍
2013/12/10 Javascript
nodejs中解决异步嵌套循环和循环嵌套异步的问题
2017/07/12 NodeJs
weex slider实现滑动底部导航功能
2017/08/28 Javascript
浅谈Angular6的服务和依赖注入
2018/06/27 Javascript
Vue中 v-if/v-show/插值表达式导致闪现的原因及解决办法
2018/10/12 Javascript
Vue Autocomplete 自动完成功能简单示例
2019/05/25 Javascript
Python获取远程文件大小的函数代码分享
2014/05/13 Python
Python 正则表达式实现计算器功能
2017/04/29 Python
Python实现螺旋矩阵的填充算法示例
2017/12/28 Python
python统计多维数组的行数和列数实例
2018/06/23 Python
Python实现栈的方法详解【基于数组和单链表两种方法】
2020/02/22 Python
利用Python裁切tiff图像且读取tiff,shp文件的实例
2020/03/10 Python
python爬虫利用selenium实现自动翻页爬取某鱼数据的思路详解
2020/12/22 Python
利用纯css3实现的文字亮光特效的代码演示
2014/11/27 HTML / CSS
HTML5 manifest离线缓存的示例代码
2018/08/08 HTML / CSS
家乐福巴西网上超市:Carrefour巴西
2016/10/31 全球购物
80年代复古T恤:TruffleShuffle
2018/07/02 全球购物
Diesel美国网上商店:意大利牛仔时装品牌
2020/12/10 全球购物
财务管理专业应届毕业生求职信
2013/09/22 职场文书
酒店办公室文员岗位职责
2013/12/18 职场文书
80后职场人的职业生涯规划
2014/03/08 职场文书
四年级评语大全
2014/04/21 职场文书
2015年企业新年寄语
2014/12/08 职场文书
校园开放日新闻稿
2015/07/17 职场文书
任命书格式范文
2015/09/22 职场文书
《称赞》教学反思
2016/02/17 职场文书
MYSQL如何查看进程和kill进程
2022/03/13 MySQL
带你了解Java中的ForkJoin
2022/04/28 Java/Android