可变大小的用户窗体

Userform with variable size

在我的程序中创建了一个字符串,它的大小变化很大。

此字符串应显示在单独的 window 中。

不幸的是,常规 Msgbox(我相信限制为 1024 个标志)对我的需要来说太小了。

现在我为这个问题创建了一个 Userform 但是当然当有一个巨大的 Userform 并且里面只有两个值时它看起来很傻,但下次我需要大小,因为字符串中有 1000 个值。

我注意到常规 Msgbox 会根据其中字符串的长度改变大小。

如何创建一个用户窗体,根据其内容改变其大小? 我只找到了有关如何使其全屏显示的信息,这对这种情况没有帮助。

我能给你看的唯一真实代码是像这样的通用代码:

Sub Ausgabe1()

Dim Werte As Variant
Dim x As Integer

For i = 0 to X
Werte(i) = i
Next i

MsgBox Werte

End Sub

您可以改变宽度值 属性。我会怎么做是用文本框创建用户窗体并给用户窗体一个显示文本 属性.

Property Let DisplayText(s as String)
Dim x as Long
x = Len(s)
If x > 0 Then 
   Me.Textbox1.Width = x*.7
   Me.Width = Me.Width * 100/x
Else
   Me.Textbox1.Width = 75      ' (edited)
   Me.Width = 100
End If

End Property

然后我会这样称呼它

Load Userform1
With Userform1
   .DisplayText = "your message here"
   .Show
End With

您必须尝试使用​​代码中的数字来使它们适合您的屏幕分辨率等