wxPython使用系统剪切板的方法
2015-06-16 15:05
696 查看
程序运行效果如下图所示:
主要代码如下:
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程序设计有所帮助。
您可能感兴趣的文章:
相关文章推荐
- [原创]java局域网聊天系统
- Windows 系统组策略应用全攻略(下)第1/3页
- C#线程间不能调用剪切板的解决方法
- 如何进行系统配置
- C#操作Clipboard读取剪切板中数据实例详解
- C#列出当前系统所有正在运行程序的方法
- SqlServer系统数据库的作用深入了解
- Powershell获取系统中所有可停止的服务
- 不用杀毒软件也能让系统百毒不侵的技巧
- C#实现系统托盘通知的方法
- Android操作系统的架构设计分析
- 文章推荐系统(二)
- PHP网上调查系统
- Shell脚本实现Linux系统和进程资源监控
- 文章推荐系统(三)
- JS将制定内容复制到剪切板示例代码
- sqlserver 系统存储过程 中文说明
- Android学习笔记--使用剪切板在Activity中传值示例代码
- 多文件上载系统完整版
- 推荐文章系统(一)