Размещение контролов в форме - VB

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

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

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

Решение задачи: «Размещение контролов в форме»

textual
Листинг программы
  1. 8    .WindowState = 2
  2. 9    .SHOW '!!!

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

13   голосов , оценка 3.923 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы