wxPython系统剪切板是如何来使用的呢?下面的内容将会通过具体的实例来演示wxPython系统剪切板的使用方法及相关技巧:
本文实例讲述了wxPython使用系统剪切板的方法。分享给大家供大家参考。具体如下:
程序运行效果如下图所示:
wxPython使用系统剪切板的方法
主要代码如下:
######################################################################## |
class ClipboardPanel(wx.Panel): |
#---------------------------------------------------------------------- |
def __init__(self, parent): |
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.dataObj = wx.TextDataObject() |
self.dataObj.SetText(self.text.GetValue()) |
if wx.TheClipboard.Open(): |
wx.TheClipboard.SetData(self.dataObj) |
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.MessageBox("Unable to open the clipboard", "Error") |
######################################################################## |
class ClipboardFrame(wx.Frame): |
#---------------------------------------------------------------------- |
wx.Frame.__init__(self, None, title="Clipboard Tutorial") |
panel = ClipboardPanel(self) |
if __name__ == "__main__": |
wxPython系统剪切板就是这样,欢迎大家参考。。。。
0 Comments