wxPython使用系统剪切板的方法

作者:红薯 时间:2023-04-01 14:38:29 

本文实例讲述了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程序设计有所帮助。

标签:wxPython,系统,剪切板
0
投稿

猜你喜欢

  • 五步让你成为GO 语言高手

    2023-06-16 18:00:41
  • Python OpenCV实现传统图片格式与base64转换

    2021-07-20 21:42:21
  • MySQL数据库JDBC编程详解流程

    2024-01-15 09:39:55
  • T-SQL查询为何慎用IN和NOT IN详解

    2024-01-21 08:26:01
  • Python使用迭代器捕获Generator返回值的方法

    2022-11-25 09:40:35
  • python实习总结(yeild,async,azwait和协程)

    2021-06-16 20:40:45
  • Python中用format函数格式化字符串的用法

    2022-04-17 03:02:06
  • Python pygame项目实战英雄动画特效实现

    2021-02-22 21:07:50
  • 分享一下Python 开发者节省时间的10个方法

    2023-02-14 21:57:33
  • MySQL中Multiple primary key defined报错的解决办法

    2024-01-13 20:35:14
  • js取得html iframe中的元素和变量值

    2024-06-07 15:26:17
  • Python递归遍历列表及输出的实现方法

    2022-12-08 17:08:11
  • JS实现两周内自动登录功能

    2023-08-04 21:20:57
  • 栅格:灵活应变

    2008-07-22 12:22:00
  • sqlserver中操作主从关系表的sql语句

    2024-01-22 09:13:14
  • python3 循环读取excel文件并写入json操作

    2022-11-07 15:40:11
  • 可输入的select代码

    2009-12-26 18:25:00
  • Python利用zhdate模块实现农历日期处理

    2023-03-07 22:10:20
  • Python安装selenium包详细过程

    2023-04-12 00:05:31
  • Python简明入门教程

    2021-07-30 08:48:18
  • asp之家 网络编程 m.aspxhome.com