Помещение компонент на форму

При создании приложения на экране появляется пустая форма, представляющая собой фактически окно дизайнера форм. Дизайнер позволяет помещать компоненты на форму, перетаскивать их с одного места на другое, удалять и выделять компоненты, изменять их размеры и т.д.

Компоненты выбираются из палитры компонентов Toolbox. Компоненты разбиты на функциональные группы, которые могут сворачиваться и разворачиваться, если щелкать на квадратике слева от названия группы.

Для помещения компоненты на форму необходимо выполнить следующие действия

- найти нужный компонент на палитре компонентов, щелкнуть на нем мышью, перевести курсор мыши в нужное место формы и снова щелкнуть мышью. Значок компонента будет помещен на форму в активном состоянии – по его периметру (или в точке периметра) появятся квадратики. При нанесении следующего компонента активным будет новый компонент;

- дважды щелкнуть на нужном компоненте в палитре компонент. При этом компонент на форме появляется в верхнем левом углу, так что его потом необходимо перенести на нужное место.

Выделение нескольких компонент на форме (например, для их группового перемещения в другое место формы) осуществляется следующим образом:

- щелчком мыши на требуемых компонентах при нажатой клавише<Shift>;

- заключением компонент в прямоугольник выделения путем установки курсора мыши левее и выше самого верхнего левого компонента, нажатием на левую кнопку и протягиванием мыши вправо вниз. В результате появляется прямоугольник, охватывающий выделенные объекты. После этого можно установить курсор мыши на любой из выделенных компонентов, потянуть за него в нужном направлении и вся выделенная группа переместится вместе с этим объектом. Снятие выделения производится щелчком мыши вне выделенного участка.

Изменение формы компонента производится растяжкой за точки выделения. Более точное изменение формы производится нажатием клавиш со стрелками (перемещение курсора) при нажатой клавише <Shift>. Более точное местоположение компонента выделенного компонента выполняется нажатием клавиш со стрелками при нажатой клавише <Ctrl>.

Некоторые действия с формой можно выполнять с помощью контекстного меню. Оно позволяет выполнить следующие команды:

- Lock Controls. Блокирует любой компонент, имеющий такое свойство. У компонента в его верхнем углу появляется пиктограмма замка, после чего накладывается запрет на выполнение различных действий. Например, нельзя изменять размеры формы, компоненты, нанесенные на форму, также получают это свойство – у них появляется пиктограмма замка. Такие компоненты не изменяют свою форму (размеры) и не могут перемещаться на форме. Снятие блокировки осуществляется повторным выполнением этой же команды.

-Properties. Эта команда открывает окно Properties свойств объекта (в конкретном случае – кнопки 4).

Окно сведений об объекте

Окно сведений (свойств) об объекте изображено на рис.3. Любой объект, находящийся на рабочем столе, обладает определенным набором свойств, например, именем, видимостью, координатами расположения на форме, размерами и т.д. Все свойства активного (выделенного объекта, т.е. на котором произведен щелчок мышью) объекта отображаются в окне с названием Properties (свойства). Это окно становится видимым при выполнении команды контекстного меню Properties. В окне имеется пять вкладок:

- первая вкладка упорядочивает содержимое окна по категориям информации;

- вторая вкладка упорядочивает содержимое окна по алфавиту:

- третья вкладка показывает перечень свойств:

- четвертая вкладка показывает перечень событий, связанных с объектом:

- пятая вкладка выводит на экран страницы свойств.

Наиболее часто изменяемые свойства – название объекта (Name), текст надписи, выводимый на объекте (Text), видимость (Visible).

Вкладка Events (события) содержит список возможных событий, которые могут происходить с компонентом. Она позволяет связывать каждое событие с программой-обработчиком этого события: при двойном щелчке мышью на окне с кнопкой рядом с именем события среда программирования создает в модуле формы, в которую помещен компонент, программу - обработчик этого события. Программа-обработчик представляет собой функцию с заголовком, но с пустым телом (заготовка или шаблон). Дальнейший процесс программирования будет состоять в том, что программист должен в пустое тело шаблона записать необходимые операторы (команды), которые будут определять реакцию компонента на данное событие с учетом передаваемых функции фактических значений ее параметров. Например, вид пустого обработчика события OnClick (щелчок на кнопке) кнопки Button5 следующий:

private: System::Void button5_Click(System::Object^ sender, System::EventArgs^ e) { }

упорядочение содержимого упорядочение содержимого окна по алфавиту

Помещение компонент на форму - student2.ru Помещение компонент на форму - student2.ru окна по категориям информации

Помещение компонент на форму - student2.ru показ перечня свойств (текущий режим)-

Помещение компонент на форму - student2.ru Помещение компонент на форму - student2.ru выпадающий список с именами всех

компонент формы

 
  Помещение компонент на форму - student2.ru

вывод на экран страниц свойств

показ перечня событий, связанных

с объектом

Рис.3 Окно сведений об объекте

При создании обработчика события происходит автоматическое переключение системы на вызов редактора кода, который установит курсор на начало обработчика, чтобы программист смог вводить операторы программы. Создать событие (выбрать события, на которые программа должна реагировать) для кнопки можно и иным способом – двойным щелчком на ней.

В верхней части окна расположена кнопка раскрывающегося (выпадающего) списка (с треугольной стрелкой). В этом списке находятся имена всех компонентов, помещенных на форму, а также имя активной в данный момент формы. С помощью этого списка можно выбирать любой компонент, помещенный на форму, и работать с ним. Для этого надо щелкнуть мышью на имени нужного компонента, который станет после этого активным, а в окне Properties появятся сведения об этом компоненте.

Редактор кода

При создании новой формы синхронно создается программный модуль с именем формы и расширением h. В этом модуле находится описание формы и обработчики событий компонентов, нанесенных на форму. Попасть в редактор кода из окна формы можно нажатием комбинации клавиш <Ctrl>+<Alt>+<0> или выполнив команду меню View Cod. Форма (как программный объект) является классом-наследником класса Form. В нее попадают в силу наследования все члены класса Form, а также впоследствии попадают компоненты, которые добавляются на форму. Первая форма получает имя Form1. При программировании обращение к членам класса производится через указатель на экземпляр этого класса, т.е. через указатель this. Этот указатель содержит ссылку на текущий объект. Например, если надо обратиться к свойству Text компонента textBox4 (однострочный редактор - поле ввода-вывода), то обращение будет выглядеть следующим образом this->textBox4->Text (указатель this хранит адрес объекта textBox4). Имена экземпляров компонентов формируются как указатели на экземпляры.

При наборе кода следует использовать такой удобный инструмент, как подсказчик, который выдает оперативную информацию при наборе кода. Напрмер, после набора this открывается окно со всеми членами объекта Form1, в котором следует выбрать нужный член.

В процессе создания проекта необходимо сохранять все файлы этого проекта. Для этого следует использовать команду Save All (подменю пункта главного меню File). Среда создает следующие файлы проекта:

· Solname.sin – файл относится к категории группы проектов, объединенных в одно решение, он организует все элементы проекта в одно общее решение;

· Projname.suo – файл опций решения, хранит все пользовательские режимы, задаваемые при создании решения;

· Projname.vcproj – файл хранит специфическую информацию проекта (файл создается для каждого из проектов общего решения);

· Projname.idl - файл содержит код описания интерфейса для управления библиотекой типов (используется для генерации такой библиотеки), библиотека предоставляет интерфейс компонента другим клиентам;

· Projname.ncb – некомпилируемый файл, содержит информацию, генерируемую синтаксическим анализатором, используется классом View (просмотр информации), при удалении автоматически регенерируется;

· Projname.txt – файл содержит описание некоторых файлов созданного проекта.

Среда разработки создает также файлы предварительной компиляции проекта Stdafx.h и Stdafx.cpp, они используются для создания предварительно компилируемого заголовочного файла Projname.pch и объектного файла Stdafx.obj.

В заключение дадим информацию о ресурсных файлах, которые представляют собой элементы интерфейса, обеспечивающие пользователя информацией (к ним относятся графические битовые изображения, пиктограммы, линейки инструментов, курсоры и т.д.):

· Projname.rc – файл содержит информацию, зависящую от типа проекта, например, это могут быть линейки инструментов, меню по умолчанию, таблицы строк, диалоговые окна по умолчанию, файл пиктограмм, информация о версиях проекта, битовые изображения;

· Resource.h – файл содержит определения ресурсов, используемых в проекте;

· Projname.rc2 – файл содержит дополнительные ресурсы, используемые в проекте;

· Projname.def – файл содержит имя и описание компонента, размер занимаемой им памяти во время выполнения проекта;

· Projname.ico – файл пиктограммы для проекта или компонента;

· Toolbar.bmp – графический файл, представляющий приложение или компонент на линейке инструментов или в палитре компонентов.

Наши рекомендации