【发布时间】:2015-05-10 07:19:07
【问题描述】:
好的,由于某种原因,这行不通,但我以前做过。
我正在创建一个hangman 应用程序,但我的动态标签根本不会显示。
我写了这段代码:
Dim xLabel As Integer = lblPosition.Location.X
Dim yLabel As Integer = lblPosition.Location.Y
For i As Integer = 0 To film.Length - 1
Dim label1 As New Label
xLabel += 20
label1.Location = New Point(xLabel, yLabel)
label1.Text = "_"
label1.Font = New Drawing.Font("Century Gothic", _
16, _
FontStyle.Bold)
label1.ForeColor() = Color.White
label1.Name = "lblLetter" & i
Me.Controls.Add(label1)
Next
因此,为film 字符串中的每个字符创建了一个标签,并带有下划线作为文本。 lblPosition 是我作为其他标签位置基础的标签。
标签不显示。我可以把下划线改长一些,它只会显示最后一个字符。
我的表单确实足够宽,我还没有名为label1 的标签。
它也可以编译。
编辑:如果我添加边框,这就是标签的样子,但仍然没有文本。
编辑2:字体大小与第一个下划线相同,如果我使用字母,我得到这个(字体大小也减小了)
【问题讨论】:
-
他们可能正在被添加。字体很大,所以尺寸可能不够高,它们很可能重叠,导致只显示最后一个字符。将borderstyle设置为3D,看看还有什么问题。
-
谢谢,请检查我的编辑
-
字体很大,所以可能不够高 - 下划线 (
_) 将位于底部,可能在边界之外。设置一个足够大的特定尺寸以显示...只需在其中放一个或 2 个字母,您就会看到它们是如何被剪裁的。