Контроль длины Label. А также VB6 Portable vs VB6 Installed.

Узнай цену своей работы

Формулировка задачи:

Исходя из заголовка темы, вопроса 2:

1.)

Как определить, что в Label уже не хватает места для Caption? Длина букв разная. Например, можно написать при Label.Width=

N

букв "

w

"

M

-раз. Но при той же длинне

N

букв "

i

" можно написать намного больше, чем

M

. Если Label.Caption содержит пробел(ы), то строка пишется только до того пробела, до которого она влезает в ширину Label.Width.

Цель

: Если не влезает, то написать на столько, на сколько влезает; минус 3 символа, чтобы поставить вместо них троеточие.Вопрос: как определить, что символы больше не влезают?

2.)

Привык работать в VB6.0 Portable из-за того, что в Portable-версии работает колесо мыши, в отличии от инсталлируемой версии. Я заметил, что в инсталлируемой версии больше выбора типов проекта, которые можно создать.Вопрос: в чём разница между VB6.0 Portable и инсталлируемой версией, помимо той, что указано выше?

Решение задачи: «Контроль длины Label. А также VB6 Portable vs VB6 Installed.»

textual
Листинг программы
Private Sub Label1_Click()
wd = Label1.Width
s = "Контроль длины Label. А также VB6 Portable vs VB6 Installed."
Label1.AutoSize = True
For i = 1 To Len(s)
  Label1 = Left$(s, i)
  If Label1.Width > wd Then
    Label1 = Left$(Label1, Len(Label1) - 3) & "..."
    Exit For
  End If
Next
Label1.AutoSize = 0
Label1.Width = wd
End Sub

Оцени полезность:

6   голосов , оценка 3.833 из 5