Вывести заданное количество Label - VB
Формулировка задачи:
Условие: В TextBox на Form вводится integer число.
Задача: по этому числу необходимо вывести в Form соответствующее количество Label.
Пояснение: например в TextBox вводится число 3. В Form отражается 3 Label
Что имеем:
Проблема: не знаю как сделать чтобы можно пользователь введя ошибочное число в Text16.Text мог удалить его (при этом корректировалось количество Label), а затем вводя правильное число снова выводилось заданное количество Label. Используя Command знаю... а тут не осилил.
Вроде постарался ясно описать... Спасибо.
Листинг программы
- Private Sub Text16_Change()
- A = Text16.Text
- If A > 0 Then
- For i = 1 To A
- Label13(i).Visible = True
- Text18(i).Visible = True
- Next i
- End If
- End Sub
Решение задачи: «Вывести заданное количество Label»
textual
Листинг программы
- Option Explicit
- Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
- Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
- Private Const GWL_STYLE = (-16)
- Private Const ES_NUMBER = &H2000
- Private Sub Form_Load()
- Text16.Text = 0
- Dim lngOldStyle As Long, WD As Long
- WD = Text16.hwnd
- lngOldStyle = GetWindowLong(WD, GWL_STYLE) ' установка правил ввода только цифр
- lngOldStyle = lngOldStyle + ES_NUMBER
- Call SetWindowLong(WD, GWL_STYLE, lngOldStyle) '
- End Sub
- Private Sub Text16_Change() ' проверка условия
- Dim A As Integer
- Dim I As Integer
- For I = 0 To 60
- Label13(I).Visible = False
- Next I
- If Val(Text16.Text) > 59 Or Text16.Text = Empty Then
- MsgBox "Введённое число не соответствует условиям ввода", vbCritical, "Проверка корректности ввода"
- Text16.Text = Empty
- Exit Sub
- End If
- A = Val(Text16.Text)
- For I = 0 To A - 1
- Label13(I).Visible = True
- Next I
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д