Массштабирование формы и контролов под нужное разрешение - VB

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

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

Не могу понять сделал форму, а именно сделал картинки нужных размеров, расположил овалы там где надо. И у меня на буке все ОК. Пришел на работу принес прогу доработать, запускаю а у меня все поехало, часть картинок не видно (они увеличились), овалы сместились. Обидно, как сделать чтобы на всех компах было одинаково??? Мистика какая то...

Решение задачи: «Массштабирование формы и контролов под нужное разрешение»

textual
Листинг программы
Dim w As Single, h As Single
 
Private Sub Form_Load()
h = Height: w = Width
End Sub
 
Private Sub Form_Resize()
On Error GoTo err
If Height > 2000 And Width > 3000 Then
Call rsz(w, h)
h = Height: w = Width
Else
Height = 2000: Width = 3000
End If
Exit Sub
err: MsgBox err.Description
err.Clear
End Sub
 
Sub rsz(w, h)
Dim w1 As Single, h1 As Single
w1 = Width / w: h1 = Height / h
 
Dim Cont As Control
 
On Error Resume Next
    For Each Cont In Controls
      With Cont
.Move .Left * w1, .Top * h1, .Width * w1, .Height * h1
      End With
    Next
End Sub

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


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

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

15   голосов , оценка 4.133 из 5
Похожие ответы