Страница: 1 |
Страница: 1 |
Вопрос: расположение элементов на форме
Добавлено: 01.08.07 14:31
Автор вопроса: ua4ase
Есть форма с двумя десятками элементов (Label, Frame, Text и т.п.). Написана прога на ВБ6 при разрешении экрана 1024х768. При установке программы на комп где у монитора разрешение 800х600, часть элементов находится за пределами формы. Как в коде программы сделать так, чтобы при различном разрешении монитора все элементы умещались в окне программы?
Ответы
Всего ответов: 3
Номер ответа: 1
Автор ответа:
shuffle
Администратор
ICQ: 201502381
Вопросов: 15
Ответов: 737
Профиль | | #1
Добавлено: 01.08.07 18:00
В событии формы Form_Resize пиши обработчик, которых все элементы на форме перемещает, меняет размеры в соответствии с размером формы в данный момент.
Номер ответа: 2
Автор ответа:
ua4ase
Вопросов: 5
Ответов: 19
Профиль | | #2
Добавлено: 01.08.07 18:18
Скиньте небольшой кусок кода (если можно) или ссылку с примером. Хочу понять на конкретном примере.
Номер ответа: 3
Автор ответа:
shuffle
Администратор
ICQ: 201502381
Вопросов: 15
Ответов: 737
Профиль | | #3
Добавлено: 02.08.07 00:32
Вот кусок из какого-то проекта. Суть дела он отражает.
On Error Resume Next
With SSTab1
.Move .Left, .Top, Me.Width - 3 * .Left, Me.Height - 6 * .Top
End With
If SSTab1.Tab = 1 Then
With SSTab2
.Move .Left, .Top, SSTab1.Width - 2 * .Left, SSTab1.Height - .Top - .Left
End With
If SSTab2.Tab = 0 Then
With MSHFlexGrid1
.Move .Left, .Top, SSTab2.Width - 2 * .Left, SSTab2.Height - .Top - .Left
End With
End If
With Combo3
.Move .Left, .Top, SSTab1.Width - 2 * .Left
End With
With Command6
.Move SSTab1.Width - .Width - Text8.Left
End With
With Command5
.Move Command6.Left - .Width - Text8.Left
End With
With Text8
.Move .Left, .Top, Command5.Left - 2 * .Left
End With
End If
End Sub