Использование битовых образов. Загрузка битового образа из ресурса программы.
Листинг 3.7. Полет над городом.
void _fastcall TForml::FormCreate(TObject *Sender) { // загрузить фоновый рисунок из bmp-файла back = new Graphics::TBitmap(); back › LoadFromFile("factory.bmp"); // установить размер клиентской (рабочей) области формы // в соответствии с размером фонового рисунка GlientWidth = back › Width; ClientHeight = back › Height; // загрузить картинку sprite = new Graphics::TBitmap(); sprite › LoadFromFile("aplane.bmp"); sprite › Transparent = true; // исходное положение самолета x=-20; // чтобы самолет "вылетал" из-за левой границы окна У=20; } void _fastcall TForml::FormPaint(TObject *Sender) { Canvas › Draw(0.0,back); //фон Canvas › Draw(x,у,sprite); // рисунок } void__fastoall TForml::TimerlTimer(TObject *Sender) { TRect badRect; // положение и размер области фона, // которую надо восстановить badRect = Rect(x,y,x+sprite › Width,y+sprite › Height); // стереть самолет (восстановить "испорченный" фон) Canvas › CopyRect(badRect,back › Canvas,badRect); // вычислим новые координаты спрайта (картинки) х +=2; if (х > ClientWidth) { // самолет улетел за правую границу формы // изменим высоту и скорость полета х = -20; у = random(ClientHeight – 30); // высота полета" // скорость полета определяется периодом возникновения // события On Timer, который, в свою очередь, зависит // от значения свойства Interval Timerl › Interval = random(20) + 10; // скорость "полета" меняется // от 10 до 29 } Canvas › Draw(х,у,sprite); }
Загрузка битового образа из ресурса программы
В программе "Полет над городом" (листинг 3.7) картинки (битовые образы) фона и объекта (самолета) загружаются из файлов. Такой подход не всегда удобен. C++ Builder позволяет поместить нужные битовые образы в исполняемый файл программы и по мере необходимости загружать их непосредственно оттуда.
Битовый образ, находящийся в выполняемом файле программы, называется ресурсом, а операция загрузки битового образа из выполняемого файла – загрузкой битового образа из ресурса.
Для того чтобы воспользоваться возможностью загрузки картинки из ресурса, сначала надо создать файл ресурсов и поместить в него нужные картинки.