开罗只是最后一幅画?

时间:2013-11-12 13:34:31

标签: python gtk pygtk cairo pycairo

我创建了一个小部件,用于绘制数据并允许用户进行选择:
https://gobblin.se/u/kellogs/m/bildschirmfoto-vom-2013-11-12-13-23-54/

可悲的是,在此屏幕截图中应显示多个选项(此处为红色),但渲染此模型的因某些原因无效。我确信,数据可用并且渲染被调用并且工作正常(正确的位置和尺寸)

所以我的小部件只是创建一个cairo表面,用于以下方法的迭代,以在绘制的数据行之上呈现选择:

def render_to(self, cairosurface):
    '''external trigger to redraw widget on channel widget surface (only within plotarea!)'''
    cr = cairosurface
    pos_x=self.__getXPos()
    w = self.__getWidth()
    h = self.__getHeight()
    eogclass=self.eogclassification.eogclass
    #background
    r,g,b=eogclass.color
    alpha=0.9
    color=(r,g,b,alpha)
    cr.set_source_rgba(*color)
    cr.rectangle(pos_x, 0, w, h)
    cr.fill()
    #label
    label=eogclass.name
    cr.set_source_rgb(*eogclass.text_color)
    cr.set_font_size(13)
    (x, y, width, height, dx, dy) = cr.text_extents(label)
    cr.move_to(pos_x+w/2 - width/2, h/2) #center within our block
    cr.text_path(label)
    cr.clip()
    cr.stroke()
    cr.paint()

有人可以给我一个提示可能是什么问题吗? 我不确定,但这可能是合成的问题吗?

0 个答案:

没有答案