====== Знакомство ====== [[bb:lessons|]] ===== Установка ===== Скачайте [[https://blackbox.oberon.org/download|программу-установщик]], и установите среду либо в предлагаемый установщиком каталог, либо в любой другой, удобный для вас. Кстати, установщик автоматически создаст ярлык на рабочем столе — воспользуйтесь им, чтобы открыть главное окно Блэкбокса. Итак, приступим. Версия в ZIP-архиве на том же сайте позволит переносить среду разработки на флешке, или программировать в компьютерном классе без наличия прав администратора. ===== Главное окно ===== Главное окно Блэкбокса разделено на три части: главное меню вверху, полоска состояния внизу и рабочий стол между ними. {{ :bb:lessons:bb_main.png?direct&100|Главное окно Блэкбокса}} \\ **Главное меню** содержит все важные наборы команд. С их помощью можно управлять окнами и документами, форматировать текст, программировать и делать многое другое. Меню можно изменять и расширять. \\ **Рабочий стол**, отличающийся более тёмным серым цветом, это место для документов. Их мы рассмотрим в следующем разделе. \\ **Полоска состояния** может быть одинарной, двойной или выключена совсем. На ней отражаются сообщения об ошибках и текущее значение использованной оперативной памяти. ===== Немного про окна ===== Окно показывает нам содержимое документа - текст, форму или что-то ещё. Среда Блэкбокс поддерживает многооконность, так что вы можете открыть сколько надо документов и они все одновременно расположатся на рабочем столе. **Важно!** Окно обычно соответствует одному документу, но Блэкбокс позволяет открыть один и тот же документ в разных окнах.\\ {{ :bb:lessons:bb_window_cascade.png?direct&100|Каскад окон}} Управлять расположением окон можно через меню //Window//. Попробуйте открыть несколько документов, а затем расположите их каскадом (Window, Cascade), горизонтальной черепицей (//Window, Tile Horizontal//), вертикальной черепицей (//Window, Tile Vertical//). Если окна свёрнуты, то навести порядок в их ярлычках поможет команда //Window, Arrange Icons//. ===== Документы и ещё раз документы ===== Блэкбокс это документоцентричная среда. То есть, всё что открывается в окне, является документом. В документах вы: * Набираете и форматируете тексты * Создаёте диалоговые формы * Пишете программы (которые тоже являются текстами) * Получаете результаты работы программ Документы в Блэкбокс являются составными. Например, в текстовый документ можно встроить изображение и другой текст. А также в текст можно встроить форму, в которую можно встроить поля ввода и другой текст. Можно вставлять ссылки на другие документы, вставлять ссылки на команды - в общем, делать для себя удобные текстовые инструментальные интерфейсы. ==== Режимы документа ==== Документ можно открыть в нескольких режимах: * **Документное окно**. Оно содержит текст, форму или другой визуальный объект. Если содержимое документа изменено, то окно становится "грязным", обратите внимание, как с белого меняет цвет на серый иконка в левом верхнем углу документа: {{ :bb:lessons:bb_text_windowdirty.png?nolink |}}и при попытке закрыть "грязное" окно Блэкбокс запросит разрешения сохранить документ. * **Инструментальное окно**. Позволяет выполнять команды с объектами, находящимися //под ним// - то есть, в режиме панели инструментов. Содержимое документа в окне не может быть изменено. * **Дополнительное окно**. Содержимое документа может подвергаться изменениям, но система не будет запрашивать разрешения на сохранение. Пример такого окна - журнал (меню //Info, Open Log//) ==== Размер документа ==== Важно понимать, что размер документа и размер его окна - по сути разные вещи. Размер документа (или корневого отображения в окне) может соответствовать размерам окна, а может и не соответствовать. Настраивается это в меню //Tools, Document Size//: {{ :bb:lessons:docsize.png?nolink |}}Фиксаторы ширины и высоты документа могут находиться в трёх положениях. //Fixed// - это неизменное значение, //Page width// - соответствует значению, заданному в //File, Page Setup//, и //Window Width// - соответствует текущему размеру окна. ==== Бортжурнал ==== Как полагается, здесь есть и "бортовой" журнал. Это документ, в который записывают свои действия различные компоненты среды. Например, компилятор сообщает о своей работе в журнал. Окно журнала открывается при старте среды, повторно его открыть (если вдруг случайно закрыли) можно в меню //Info, Open Log//. Журнал - это обычный текстовый документ, но у него есть одна особенность - оно открыто в дополнительном режиме. То есть, вы можете печатать в журнале что угодно, любой текст, но Блэкбокс не будет пытаться его сохранить при закрытии окна. Таким образом, текст журнала временный, он отражает лишь текущий вывод. В то же время вы можете сохранить журнал в файл обычным образом, в меню //File, Save As//. Другая особенность журнала в том, что Блэкбокс имеет только один-единственный экземпляр журнала. Несколько журналов одновременно открыть нельзя. Если в журнале накопится слишком много, по вашему мнению, информации, то его можно очистить в меню //Info, Clear Log//. На этом знакомство со средой можно считать завершённым. Конечно, здесь были перечислены далеко не все возможности Блэкбокса, и в дальнейших уроках вы будете узнавать всё больше и больше. Напоследок стоит ещё раз перечислить основные черты Блэкбокса: * Простая компонентная, расширяемая среда * Всё в документах * Управление с помощью команд. [[bb:lessons:first-module]]