1.2.5. Компонент TSpeedButton


TSpeedButton - кнопка для создания панели быстрого доступа к командам (SpeedBar). Пример - SpeedBar слева от Палитры Компонент в среде Delphi. Обычно на данную кнопку помещается только картинка (glyph).

Этот компонент доступен из модуля BUTTONS, и находится на странице Палитры компонентов Additional.

Эта кнопка с изображением может иметь как зависимую, так и независимую фиксацию. Она удобна для применения в составе панелей инструментов. По­ведение этих кнопок во многом определяется свойством:

(Pb) property Grouplndex: Integer;

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

(Pb) property AllowAlIUp: Boolean;

которое описывает поведение кнопок в группе, а именно: могут ли все кнопки одновременно быть отжаты. Если AllowAlIUp равно False (по умолчанию), на­жатую кнопку в группе можно отпустить, лишь нажав другую. Если AllowAlIUp равно True, кнопку можно отпустить повторным нажатием.

Если необходимо фиксировать одну кнопку TSpeedButton, ей нужно присвоить уникальный групповой индекс, а AllowAlIUp установить в True.

Поскольку в группе не могут одновременно находиться кнопки с различным значением этого свойства, при нажатии кнопки и изменении Grouplndex свой­ство AllowAlIUp "рассылается" (присваивается) остальным кнопкам с тем же значением Grouplndex. В группе не может быть нажато более одной кнопки. Определяет, нажата ли кнопка, свойство:

(Pb) property Down: Boolean;

Это свойство может изменяться как системой, так и программистом. Например, если при запуске программы необходимо, чтобы одна из кнопок уже была нажатой, ее свойство Down устанавливают в True.

Текст кнопки определяет свойство Caption. Компонент имеет те же правила и свойства рисования картинки, что и TBitBtn. Они описываются свойствами Glyph, NumGlyphs, Layout, Margin и Spacing.

Для имитации щелчка предусмотрен метод Click. Двойной щелчок для TSpeedButton возможен только на нажатой кнопке — иначе он интер­претируется как обычный. Описывается свойством:

(Pb) property OnDblClick;


1.2.6. Компонент TImage


TImage - отображает графическое изображение на форме. Воспринимает форматы BMP, ICO, WMF. Если картинку подключить во время дизайна программы, то она прикомпилируется к EXE файлу.

Этот компонент доступен из модуля EXTCTRLS, и находится на странице Палитры компонентов Additional.

Этот компонент служит надстройкой над классом TPicture и замыкает всю иерархию графических объектов VCL. Он предназначен для показа на форме изображения: битовой карты (TBitmap), метафайла (TMetafile), значка (TIcon).

Свойство (Pb) property Picture: TPicture; служит контейнером для графического объекта одного из перечисленных клас­сов.

В качестве канвы используется канва объекта Picture. Graphic — только если поле Graphic ссылается на объект класса TBitmap:

(Pb) property Canvas: TCanvas;

Если это не так, то попытка обращения к свойству вызовет исключительную ситуацию EInvalidOperation, так как рисовать на метафайле или значке нельзя.

Следующие три свойства определяют, как именно Tpicture располагается в рабочей области компонента:

(Pb) property AutoSize: Boolean;

— означает, что размеры компонента настраиваются по размерам содержащегося в нем графического объекта. Устанавливать его в True нужно перед загрузкой изображения из файла или буфера обмена;

(Pb) property Stretch: Boolean;

— если это свойство установлено в True, то изображение "натягивается" на рабочую область, при необходимости уменьшая или увеличивая свои размеры. Если оно установлено в False, то играет роль следующее свойство;

(Pb) property Center: Boolean;

— если это свойство установлено в True, изображение центрируется в пределах рабочей области. В противном случае — располагается в ее верхнем левом углу.


1.2.7. Компонент TTimer


TTimer - таймер, событие OnTimer периодически вызывается через промежуток времени, указанный в свойстве Interval. Период времени может составлять от 1 до 65535 мс.

Этот компонент доступен из модуля EXTCTRLS, и находится на странице Палитры компонентов System.

Этот невизуальный компонент предназначен для уведомления программы об истечении определенных промежутков времени. Компонент инкапсулирует системный таймер Windows и работает через посылку сообщений WM_TIMER.

Свойство (Pb) property Enabled: Boolean; включает/выключает таймер, влияя на генерацию им событий. Будучи уста­новлен в Enabled, таймер начинает генерировать события OnTimer через интер­вал времени

(Рb) property Interval: Word;

который измеряется в миллисекундах. После каждого истечения такого интервала инициируется обработчик, связанный с событием:

(Pb) property OnTimer: TNotifyEvent;

При этом программист получает очередной квант времени.

При активизации и деактивизации таймера или изменении интервала в системе может не оказаться свободных таймеров. В этом случае генерируется исключительная ситуация EOutOfResources.


1.2.8. Компонент TStatusBar


TStatusBar – строка состояния. Предназначена для размещения разного рода служебной информации в окнах редактирования, обычно располагается в нижней части основной формы. Компонент может иметь несколько секций, а также кнопку изменения размеров окна, в которое он помещен. С компонентом связывается объект класса TStatusPanel, который определяет панели компонента.

Этот компонент находится на странице Палитры компонентов Win32.


2. РАЗРАБОТКА ПРОГРАММЫ


2.1. Постановка задачи


Разработать игровую программу «Морской бой», которая включает игровую панель, состоящую из двух полей для человека и компьютера. На поле расставляются 10 кораблей разного класса. Четыре корабля размером в одну ячейку, три корабля размером в две ячейки, два корабля размером в три ячейки, и один корабля размером в четыре ячейки. Поочередно противникам предоставляется возможность выстрела по чужому полю, результаты которого отображаются на нем. При попадании в корабль предоставляется возможность дополнительного выстрела. Победа присуждается игроку, потопившему все корабли противника.

Справочная информация содержит правила игры, версию программы, и автора работы.



Информация о работе «Разработка игровой программы Морской бой»
Раздел: Информатика, программирование
Количество знаков с пробелами: 52402
Количество таблиц: 3
Количество изображений: 6

Похожие работы

Скачать
33102
12
1

... до expression2. В том случае, когда значение expression1 оказывается больше значения expression2, тело цикла не будет выполнятся вовсе. 2. РАЗРАБОТКА ПРОГРАММЫ   2.1 Постановка задачи Составить программу для игры в «Морской бой» игрока с компьютером. Программа должна позволять расставлять корабли на поле 10 х 10, контролировать правильность их расстановки, давать противникам возможность ...

Скачать
16288
2
8

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

Скачать
184858
2
5

... на восстановление физических и психических сил, удовлетворяет потребности молодого человека в общении, развлечениях, активном и подвижном отдыхе. 1.2. Возможности использования анимационных программ в молодежном туризме Понятие «анимация» имеет латинское происхождение (anima-воздух, ветер, душа; animatus-одушевление) и означает воодушевление ...

Скачать
99972
4
5

... организованная игровая деятельность ребенка способствует формированию таких волевых качеств, как ответственности, упорства, настойчивости, решительности, выдержки. Экспериментальная работа по формированию волевых качеств личности в процессе игровой деятельности была проведена с учащимися 4 класса «В» СОШ №8, г. Майкопа. В классе 29 человек. На первом этапе нашего исследования провели изучение ...

0 комментариев


Наверх