我创建了一个绘制数据并允许用户选择的小部件:
https ://gobblin.se/u/kellogs/m/bildschirmfoto-vom-2013-11-12-13-23-54/
遗憾的是,在此屏幕截图中应该出现多个选择(此处为红色),但由于某种原因,此模型的渲染 n不起作用。我确保数据可用并且渲染被调用并且工作正常(正确的位置和尺寸)
所以我的小部件只是创建了一个 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()
谁能给我一个提示可能是什么问题?我不确定,但这可能是合成的问题吗?