0
我在Visual Basic中为一个类项目创建了一个hang子手游戏,并且我创建了一个函数,当您在该单词的适当位置猜出正确的字母时,绘制一个字符串。我的问题是,每当我做出新的猜测时,它会删除旧的图形并添加新的图形。我需要一种方法来保存我绘制的图形,有人知道吗?在Me.Refresh上保留图形
Dim newCharArray() As Char = wordArray(rndNumber).ToCharArray
For i As Integer = 0 To (wordArray(rndNumber).Length - 1) Step 1
If TextBox1.Text = newCharArray(i) Then
correctLetter = newCharArray(i)
letterPos = i
Me.Refresh()
End If
Next
Dim drawFont As New Font("Microsoft YaHei UI", 16)
Dim drawBrush As New SolidBrush(Color.Black)
Dim drawString As [String] = CStr(correctLetter)
Dim drawPoint As New PointF(x:=(x1 + 4) + (letterPos * 40), y:=363)
e.Graphics.DrawString(drawString, drawFont, drawBrush, drawPoint)
你会如何维护所有正确的字符的列表?我无法对它进行硬编码,因为我无法知道我会猜测哪个单词或多长时间。当我复制它时,位图的东西不起作用,我真的不知道它是如何工作的,所以我不知道有什么问题...... –
将它们放入一个“Array”或“List”中,它是私有的。例如:'私人PrevChars作为新集合(的字符)' – Steve
史蒂夫能请你详细说明吗?我对此很新,而且我不明白集合是如何工作的,尤其不是我可以如何在绘画事件中使用它。 –