我的程序将通过在程序运行时绘制彩色点来显示工件设备的状态,以生成机器当前状态的计划。但是,我正在努力弄清楚这些图形方法。我有一个直接的解决方案与creategraphics,但我不喜欢,它会清除重绘图形。
我知道我可以在paint事件中添加图形。但是,如果我想要一个函数,我可以调用它来添加一个特定的元素? 例如。
Dim Diagram as New '...Something?
Public Sub Drawx(ByVal x as single, ByVal y as single)
'Adds an x mark to the diagram with the specified coordinates
End Sub
Private Sub Status_Paint(sender As Object, e As Windows.Forms.PaintEventArgs) Handles Me.Paint
'Redraws all x marks thus far added to the diagram
End Sub
但是由于e.graphics是只读的,我不知道如何在paint事件之外添加这样的图形。我可以在paint事件中设置某种对e.graphics的引用,然后在public函数中绘制它吗?