Private Sub Form_Resize()
Command1.Move Form1.ScaleWidth - Command1.Width - 50,50
Command2.Move Command1.left, Command1.Height + 100
End Sub
vvs_adm писал(а):AmedНе, так новички Профессиональные делают сабклассинг
Amed писал(а):Опишите внешний вид программы. Тогда советы будут не абстрактные, а практические.
Еще лучше - скриншот.
PLA писал(а):Но наверняка есть стандартный алгоритм. Например при увеличение ширины, у всех контролов увеличивается ширина на одинаковый коэффициент и относительно линии центра формы отношения остаются те же.
Command1.Width = Command1.Width + 100
Ну так помимо .width изменять надо и .left и .top Вот человек и спрашивает, по какой формуле ему изменять эти параметры Хотя все-таки для каждой формы тут "вручную" считать надо. Например кнопку "Пуск" в правом нижнем углу вполне достаточно оставлять в правом нижнем углу, т.е. изменять только .left и .top А вот некоторые элементы нужно и по ширине менять...dimix писал(а):Может я чего не понял, но почему нельзя использовать
- Код: Выделить всё
Command1.Width = Command1.Width + 100
?
Хочешь коэффициент - ну не прибавляй, а умножай на коэффициент. Стало окно шире в 1.24 раза - умножь Width контрола на 1.24. Относительно линии центра - взяли Width формы и поделили на 2 - вот тебе и центр, пляши от него.
For Each cntrTemp in Form.Controls
cntrTemp.NewSize=cntrTemp_StartSize*Form_NewSize/Form_StartSize
Next cntrTemp
Сейчас этот форум просматривают: Yandex-бот и гости: 40