wx.dc使用设备上下文实现两种缩放图的方法
python学习手册(第4版)还在进行中,由于中途工作需要,对wxpython的wx.dc进行巩固下。
两种缩放图的源代码如下:
# coding:utf-8 import wx class myFrame(wx.Frame): def __init__(self,parent): wx.Frame.__init__(self,parent,size=(800,500)) self.Bind(wx.EVT_PAINT,self.onPaint) def onPaint(self,evt): dc = wx.PaintDC(self) brush = wx.Brush(wx.Colour(0,123,0)) dc.SetBackground(brush) dc.Clear() #方法一 bmp = wx.Bitmap('sttbutton.png',wx.BITMAP_TYPE_PNG) #换成自己使用的图片名称,注意与源代码放在同一个目录下 image = bmp.ConvertToImage() bmp_image = image.Scale(200,200) #进行图像缩放 bmp2 = wx.Bitmap(bmp_image) dc.DrawBitmap(bmp2,0,0,True) #True表示将位图有透明效果将被透明绘制 dc.Clear() #使用当前背景画笔清除上下文 #方法二 image2 = wx.Image('sttbutton.png',wx.BITMAP_TYPE_PNG) #换成自己使用的图片名称,注意与源代码放在同一个目录下 bmp_image2 = image2.Scale(1000,1000) bmp3 = wx.Bitmap(bmp_image2) dc.DrawBitmap(bmp3,0,0,True) if __name__=='__main__': app = wx.App() frame = myFrame(None) frame.Show() app.MainLoop()
效果图如下
转载本文请注明出处,感谢支持!