gui.py 文件源码

python
阅读 27 收藏 0 点赞 0 评论 0

项目:bp5000 作者: isaiahr 项目源码 文件源码
def paint(self, ev):
        dc = wx.PaintDC(ev.GetEventObject())
        if self.dirty:
            dc.Clear()
            self.dirty = False
        w = min(self.GetSize()[0], self.img.GetWidth()-self.x)
        h = min(self.GetSize()[1], self.img.GetHeight()-self.y)
        bx, by = (0, 0)
        if self.img.GetWidth() > self.GetSize()[0]:
            if self.x + self.GetSize()[0] > self.img.GetWidth():
                self.x = self.img.GetWidth() - self.GetSize()[0]
            self.bx = 0
        else:
            bx = int(.5*(self.GetSize()[0] - self.img.GetWidth()))
            self.x = 0
            self.bx = bx
        if self.img.GetHeight() > self.GetSize()[1]:
            if self.y + self.GetSize()[1] > self.img.GetHeight():
                self.y = self.img.GetHeight() - self.GetSize()[1]
            self.by = 0
        else:
            by = int(.5*(self.GetSize()[1] - self.img.GetHeight()))
            self.y = 0
            self.by = by
        # update if within 100px of borders
        if self.GetParent().GetParent().GetParent().options.get("exprender"):
            if ((self.x < 100 and self.ax > 0) or (self.y < 100 and self.ay > 0)) or ((self.x + w > 1900) or (self.y + h > 1900)):
                self.updatebracketimg()
        sub = wx.Rect(self.x, self.y, w, h)
        bimg = wx.BitmapFromImage(self.img.GetSubImage(sub))
        dc.DrawBitmap(bimg, bx, by)
        if self.extimg:
            param0 = wx.BitmapFromImage(piltowx(self.extimg[0]))
            param1 = self.extimg[1]-self.x+self.bx
            param2 = self.extimg[2]-self.y+self.by
            dc.DrawBitmap(param0, param1, param2)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号