# 000144. Панель элементов

Панель элементов||wmysterio|wmysterio|<wmysterio@yandex.ru>|||Всем хай! Мы продолжаем делать приложения с помощью форм. Сегодня мы детальнее рассмотрим пример использования "Панели элементов". Она состоит из стандартных объектов, которые действуют в приложениях. Их можно поделить на две большие группы: элементы, которые видимы пользователю и те, которые скрытие, но всё же работают в программе. Среди основных видимых объектов, можно отметить такие, как тестовое поле, чекбоксы и радио-кнопки, элементы выбора в списке, кнопки и тому подобные. Среди часто используемых невидимых элементов можно выделить объекты диалогов, таймеры. В обе группы частично входят объекты категории "Контейнеры", назначение которых в группировке элементов.\
\
Давайте напишем сейчас свой браузер! Он будет только открывать 1 страничку и ничего больше. Найдём в панели элементов объект WebBrowse и не отпуская ЛКМ перетащим на макет нашей формы, теперь окно поменялось, разместив на нём макет браузера:\
![](https://github.com/wmysterio/scm-scripting-lessons/blob/main/_pu/2/29173471.png)\
\
По-умолчанию этот объект как правило, размещается на весь размер формы. Давайте изменит это. В свойстве этого объекта найдём фразу **Dock**, которая управляет интерфейсом браузера:\
![](https://github.com/wmysterio/scm-scripting-lessons/blob/main/_pu/2/51886528.png)\
\
Значение **Fill** заставляет объект, имеющий визуальный интерфейс растянутся по всей форме или поля. Давайте изменим это значение на **none**, кликнув на изображение с этим названием:\
![](https://github.com/wmysterio/scm-scripting-lessons/blob/main/_pu/2/43888372.png)\
\
Этим мы укажем компилятору, что данный объект мы будем размещать вручную, и теперь мы можем изменять размеры и его положение:\
![](https://github.com/wmysterio/scm-scripting-lessons/blob/main/_pu/2/26927984.png)\
\
Давайте зададим web-адрес сайта, который будет открыт в браузере формы. Задаётся сайт в свойстве объекта Url:\
![](https://github.com/wmysterio/scm-scripting-lessons/blob/main/_pu/2/68705340.png)\
\
Сохраним свойство, кликнув по форме и запустим приложение для проверки:\
![](https://github.com/wmysterio/scm-scripting-lessons/blob/main/_pu/2/12411355.png)\
\
Давайте изменим свойство главной формы, где размещается браузер, AutoSizeMode на **GrowOnly**, позволяющий менять размер окна пользователю и посмотрим, как будет вести себя окно браузера в зависимости от размера окна формы:\
![](https://github.com/wmysterio/scm-scripting-lessons/blob/main/_pu/2/40967275.png)\
\
Как видим, окно браузера фиксируется и скрывается за пределами формы. Такое поведение не красиво, согласитесь, и нам нужно  подстроить браузер таким образом, что бы он менял размер автоматически от размера окна, при этом сохранял изначальную позицию(верхний левый угол). У нас есть хорошее свойство, которое предназначено именно для этого. Это - **Anchor**. Кликнув на это свойство, мы получаем такое интересное окошечко:\
![](https://github.com/wmysterio/scm-scripting-lessons/blob/main/_pu/2/08416165.png)\
\
Центральный квадрат обозначает макет текущего объекта, а всё, что находится вне его - макет основной формы. Остальные квадратики указывают относительно каких сторон будет фиксироваться размер нашего браузера. В наше случаи, это сверху и слева. При изменении размера основной формы, они плавно перемещаются и фиксируются. Давайте установим "флаг" на правую сторону\
![](https://github.com/wmysterio/scm-scripting-lessons/blob/main/_pu/2/35038583.png)\
и посмотрим на результат:\
![](https://github.com/wmysterio/scm-scripting-lessons/blob/main/_pu/2/32692071.png)\
Как видим, размер браузера автоматически изменяется относительно правой стороны основного окна.\
\
В новом уроке мы продолжим изучать объекты панели элементов и параллельно изучать основные их свойства.|2424|1|0|43888372`png`251`144\|26927984`png`400`277|68705340`png`302`81\|12411355`png`400`296|40967275`png`400`138\|08416165`png`237`115|35038583`png`266`124\|32692071`png`400`78|29173471`png`300`212\|51886528`png`305`71||panel\_ehlementov|1392772360


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://lessons.sannybuilder.com/00300/00100/000144.-panel-elementov.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
