我正在使用Linux和e17禁用合成,我想创建一个能够直接在屏幕上绘制简单几何形状和文本的程序。
我的第一个想法是:
import wx
app = wx.App(False)
s = wx.ScreenDC()
s.Pen = wx.Pen("#FF0000")
s.DrawRectangle(60,60,120,120)
但这不起作用,所以我用最后一行代替:
for i in range(0,129):
s.DrawRectangle(60,60,120,120)
它以某种方式使它工作,但它是一个hacky解决方案,并绘制线条,我需要更多的迭代次数。
我认为问题可能在于透明度,但不知道如何解决。
任何帮助都将不胜感激,谢谢。
答案 0 :(得分:2)
您是否在任何地方指定StartDrawingOnTop
?否则,您可能会遇到透明度问题,因此您可能会尝试明确设置。
答案 1 :(得分:1)
我认为你可以通过创建一个框架和面板然后调用框架的SetTransparency方法来设置它。你绝对想要使用DC或像FloatCanvas这样的东西进行绘图。值得一试。