![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
"Резиновый" интерфейс [D7, XP]
novai © (2014-06-03 09:04:00)Всем привет! Делаю "Резиновый" интерфейс в программе.
Есть область отрисовки: FWidth, FHeight
В ней есть область: Left, Top, Width, Height, Font
Как пропорционально отмасштабировать Left, Top, Width, Height, Font.Size
после изменения FWidth, FHeight (те было FWidth1 стало FWidth2 итд)?
Понимаю, что простецкая математика, но что-то не соображу...
brother (2014-06-04 08:02:00) [1]я откуда знаю? я топиком ошибся)
Германн (2014-06-04 03:23:00) [2]
> brother © (03.06.14 10:36) [7]
>
> да, так и делаю, спс.
А кто такой novai?
Anatoly Podgoretsky (2014-06-03 11:26:00) [3]"Резиновый" интерфейс номер 1
brother (2014-06-03 10:36:00) [4]да, так и делаю, спс.
megavoid (2014-06-03 10:35:00) [5]можно, Canvas.TextWidth(S: String)
novai (2014-06-03 09:24:00) [6]а может как-нибудь можно учитывать Font.Name?
MBo (2014-06-03 09:10:00) [7]Font.Size (или Font.Height) будет масштабироваться только приблизительно
MBo (2014-06-03 09:09:00) [8]>Как пропорционально
В начальной школе это называется именно пропорцией:
Left2 := Left1 * FWidth2 div FWidth1
novai (2014-06-03 09:08:00) [9]что делать с масштабированием Font.Size?
junglecat (2014-06-03 09:06:00) [10]Width = Width * FWidth2 / FWidth1