Размещение контролов в форме - VB
Формулировка задачи:
Вроде все просто: массив ImgBox размещается по 7 в каждой горизонтали, т.е. ширина каждого бокса равна
(ширина полноэкранной формы - 8 зазоров)/7. Так и делается В КОНЦЕ загрузки формы.
Однако справа от ряда почему-то остается место.
Для проверки вставил кнопку, она таки программно смещается правее.
В чем прикол??
Разрешение 1920х1080. Все размеры по умолчанию в твипах.
Листинг программы
- Private Sub Form_Load()
- Const btZazor As Byte = 10: Const btIntZazor = 10
- Dim i As Byte, rw As Byte, stlb As Byte
- Dim ltrHeight As Long, ltrShir As Long 'height and width of single ltr-imageBox
- btNumLet = 22 'Public: will be removed and readed from ChilDic.MDB or *.ini (of from cmbLNG)
- With FrmChilDic
- .WindowState = 2
- ltrShir = (.ScaleWidth - 8 * btZazor) / 7: ltrHeight = (.ScaleHeight - 6 * btZazor) / 5
- Command1.Left = .ScaleWidth - 5 'debug-тест
- End With
- With ImgLTR(1) '1st ltr-imageBox in array
- .Left = btZazor: .Top = btZazor
- .Height = ltrHeight: .Width = ltrShir
- End With
- For i = 2 To 35 ' 7 x 5 image-boxes
- If i > 33 Then GoTo ni '2 last places are reserved for controls. no lng with more than 33 ltrs
- Load ImgLTR(i)
- rw = (i - 1) \ 7 + 1: stlb = (i - 1) Mod 7 + 1
- With ImgLTR(i)
- .Left = stlb * btZazor + (stlb - 1) * ltrShir: .Top = rw * btZazor + (rw - 1) * ltrHeight
- .Height = ltrHeight: .Width = ltrShir
- End With
- ni:
- Next i
- End Sub
Решение задачи: «Размещение контролов в форме»
textual
Листинг программы
- 8 .WindowState = 2
- 9 .SHOW '!!!
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д