本文介绍了使用wxPython从剪贴板读取图像的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何从剪贴板读取图像?我可以使用wx.Clipboard
从剪贴板读取文本,但不能读取图像.
How can I read an image from the clipboard? I'm able to read text from the clipboard using wx.Clipboard
, but not images.
是否可以用wx.Clipboard
读取图像?如果没有,还有其他方法吗?
Is it possible to read images with wx.Clipboard
? If not, is there another way?
我正在使用Python 2.5和Windows Vista 64位.
I'm using Python 2.5 and Windows Vista 64-bit.
推荐答案
以下内容对我有用(在Mac OSX上经过测试)
The following works for me (tested on Mac OSX)
import wx
class MyFrame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, -1, 'test frame',size=(790, 524))
self.Bind(wx.EVT_LEFT_DOWN, self.OnClick)
self.Bind(wx.EVT_PAINT, self.OnPaint)
self.clip = wx.Clipboard()
self.x = wx.BitmapDataObject()
self.bmp = None
def OnClick(self, evt):
self.clip.Open()
self.clip.GetData(self.x)
self.clip.Close()
self.bmp = self.x.GetBitmap()
self.Refresh()
def OnPaint(self, evt):
if self.bmp:
dc = wx.PaintDC(self)
dc.DrawBitmap(self.bmp, 20, 20, True)
if __name__ == '__main__':
app = wx.App()
frame = MyFrame()
frame.Show()
app.MainLoop()
要使用它,我将其运行,当框架出现时,我使用另一个程序复制图像,然后单击wx框架,然后将复制的图像绘制在其中.
To use this, I run it and when the frame comes up I copy an image using another program and then click in the wx frame, which then causes the copied image to be drawn within it.
这篇关于使用wxPython从剪贴板读取图像的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!