1

我有一个带有状态条的表单,其中包含一个进度条和一个标签。这两者都用于向用户显示几个后台工作人员的状态/进度。

我的问题是,有时标签长于表单宽(它包含长度变化很大的参数名称)。该表单具有恒定的宽度,并且用户无法调整其大小。当出现此问题时,标签只是显示为空白,我想将标签切割成表单的长度并在最后连接“...”。

谁能给我一些建议,从哪里开始?我已经尝试过 Google 和 SO 搜索,但无法找到类似的东西。我基本上需要找到字符串的长度,因为它将显示在表单上,​​但我不知道从哪里开始。

4

2 回答 2

2

首先要做的是将StatusStrip.LayoutStylefrom更改TableFlow。这将防止标签消失。接下来,您仍然希望用户有机会阅读标签的全文,即使它已被截断。将StatusStrip.ShowItemToolTips属性设置为True并将标签设置AutoToolTipTrue

让标签的文本不与手柄重叠是一个更难解决的问题,但是由于您使表单无法调整大小,因此您没有这个问题。将表单的SizeGripStyle属性设置为Hide

这将解决您的问题,无需代码。

于 2013-04-24T11:03:54.893 回答
0

你可以尝试这样的事情:

Private Sub Label1_Click(sender As Object, e As EventArgs) Handles Label1.Click
    If Label1.Text.Length > iMaxLblLenght Then
        Label1.Text = Label1.Text.Substring(0, iMaxLblLenght) & "..."
    End If
End Sub
于 2013-04-24T11:01:58.823 回答