Вверх ↑
Этот топик читают: Гость
Ответов: 52
Рейтинг: 0
#1: 2020-03-14 21:52:59 ЛС | профиль | цитата
Я решил теперь по тестировать слои, и уперся в ноль. Форум листал, но в темах невероятно много флуда.

Add(MainForm,12122846,238,168)
{
Point(onSplitUp)
link(onSplitUp,12583549:doEvent1,[])
}
Add(Button,14582786,441,182)
{
Left=115
Top=180
Layout="333"
}
Add(VBoxLayout,12997269,385,182)
{
Name="111"
Layout=""
}
Add(Hub,12583549,294,189)
{
OutCount=3
}
Add(HBoxLayout,4766090,385,126)
{
Name="222"
Layout=""
}
Add(ToolBarLayout,4893642,385,224)
{
Name="333"
}


Это весь код, над которым я издеваюсь сейчас.
Моя uель - элементы оставались своем месте, при изменении размера окна.
карма: 0

0
vip
#1.1контекстная реклама от партнеров
Ответов: 2193
Рейтинг: 673
#2: 2020-03-14 22:08:07 ЛС | профиль | цитата
atutunnik94, схема не вся вставилась. Слоев много и только одна кнопка.
карма: 10

0
Ответов: 52
Рейтинг: 0
#3: 2020-03-14 22:14:55 ЛС | профиль | цитата
sla8a, Я полагаю что вся, ты назвал все что там и так есть, мне нужно, что эта кнопка при изменений окна оставалась на своем но относительно изменения масштаба.

Добавлю, что если окно из маленького в большое, что и кнопка стала большой, относительно для окна.

Редактировалось 1 раз(а), последний 2020-03-14 22:17:57
карма: 0

0
Ответов: 2193
Рейтинг: 673
#4: 2020-03-14 22:29:00 ЛС | профиль | цитата
Как вариант


Add(MainForm,12122846,154,147)
{
Width=551
Height=490
Position=1
Point(onSplitUp)
}
Add(Button,14582786,476,175)
{
Left=255
Top=185
Layout="ver_01"
HeightScale=10
}
Add(VBoxLayout,12525248,476,56)
{
Name="ver_01"
WidthScale=20
Layout="gor_01"
}
Add(LayoutSpacer,15395016,476,231)
{
Left=260
Top=240
Height=25
Layout="ver_01"
HeightScale=90
}
Add(LayoutSpacer,1029571,477,120)
{
Left=140
Top=5
Width=270
Height=180
Layout="ver_01"
}
Add(HBoxLayout,1562253,322,56)
{
Name="gor_01"
}
Add(LayoutSpacer,6466036,385,56)
{
Top=185
Width=105
Height=85
Layout="gor_01"
}
Add(LayoutSpacer,10192956,560,56)
{
Left=450
Top=185
Width=35
Height=95
Layout="gor_01"
WidthScale=80
}
карма: 10

0
Ответов: 52
Рейтинг: 0
#5: 2020-03-14 22:34:42 ЛС | профиль | цитата
sla8a, подходит, теперь осталось разобраться в логике этого)
Спасибо!

--- Добавлено в 2020-03-14 22:39:06

sla8a, О вроде, уловил) еще раз спасибо, второй день спасаешь)

--- Добавлено в 2020-03-14 22:48:16

И все же, не до конuа осознал,


Add(Image,14618217,933,98)
{
Width=390
Height=270
Color=12632256
WinStyle=4
Layout="111"
ViewStyle=1
}
Add(MainForm,2953706,21,105)
{
Point(onSplitUp)
link(onCreate,15912501:doData,[(411,125)(411,104)])
}
Add(PNG,9116386,861,98)
{
Point(doLoadFromStream)
Point(doBitmap)
link(onBitmap,14618217:doLoad,[])
}
Add(DoData,15912501,770,98)
{
Data=String(001.png)
link(onEventData,13808045:doEvent1,[])
}
Add(Hub,13808045,826,98)
{
link(onEvent1,9116386:doLoad,[])
link(onEvent2,9116386:doBitmap,[(850,111)(850,125)])
}
Add(VBoxLayout,12997269,742,210)
{
Name="111"
Layout=""
}
Add(HBoxLayout,4766090,742,154)
{
Name="222"
Layout="111"
}


Как теперь сделать наоборот, что картинка была постоянно на весь экран?

Редактировалось 3 раз(а), последний 2020-03-14 22:48:16
карма: 0

0
Ответов: 2193
Рейтинг: 673
#6: 2020-03-14 22:58:29 ЛС | профиль | цитата
atutunnik94 писал(а):
теперь осталось разобраться в логике этого

Слой ver_01 (выравнивает по вертикали):
Отступ над кнопкой не растягивается по высоте (свойство HeightScale = 0) его размер не будет изменяться. Оставшееся высота окна будет поделена на все оставшиеся элементы в этом слое. В вашем случае это кнопка и отступ под кнопкой.
Кнопка упрется по вертикале в отступ и будет по вертикали занимать 10 процентов (свойство HeightScale = 10).
Отступ под кнопкой растянется на оставшиеся 90 процентов (свойство HeightScale = 90).
Слой gor_01 (выравнивает по горизонтали):
Отступ крайний слева будет занимать по ширине заданную в нем ширину (свойство WidthScale = 0) и не будет растягиваться. Оставшееся ширина будет поделена между слоем ver_01 (всеми элементами в него входящими) и отступом справа.
Слой ver_01 задаст входящим в него элементав ширину равную 20 процентом (свойство WidthScale = 20).
Отступ крайний правый растянется на 80 процентов (свойство WidthScale = 80).

Имеет значение как расположены элементы на редакторе формы (иконка вверху с изображением карандаша над окном).
atutunnik94 писал(а):
Как теперь сделать наоборот, что картинка была постоянно на весь экран?

Можно без слоев. У Image свойство Align=caClient
Add(Image,14618217,716,224)
{
Width=390
Height=270
Align=5
Color=12632256
WinStyle=4
Layout="111"
ViewStyle=1
}
Add(MainForm,3973624,490,210)
{
Position=1
Point(onSplitUp)
link(onCreate,15912501:doData,[])
}
Add(PNG,9116386,644,224)
{
Point(doLoadFromStream)
Point(doBitmap)
link(onBitmap,14618217:doLoad,[])
}
Add(DoData,15912501,553,224)
{
Data=String(001.png)
link(onEventData,13808045:doEvent1,[])
}
Add(Hub,13808045,609,224)
{
link(onEvent1,9116386:doLoad,[])
link(onEvent2,9116386:doBitmap,[(633,237)(633,251)])
}

Редактировалось 1 раз(а), последний 2020-03-14 23:00:59
карма: 10

0
Ответов: 52
Рейтинг: 0
#7: 2020-03-14 23:02:16 ЛС | профиль | цитата
sla8a, О, спасибо! сделал и второе)

Была бы возможность, лайк поставил, вообще очень помог)

Редактировалось 2 раз(а), последний 2020-03-14 23:04:30
карма: 0

0
7
Сообщение
...
Прикрепленные файлы
(файлы не залиты)