/* Íà ôîðìå äîëæíû íàõîäèòüñÿ Image1, Image2, Image3, Image4 è PaintBox1. */ //--------------------------------------------------------------------------- #include #pragma hdrstop #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; /* ÏÅÐÅÌÅÍÍÛÅ ÊÎÎÐÄÈÍÀÒ ÑÀÌÎËÅÒÀ È ÍÀÏÐÀÂËÅÍÈß ÅÃÎ ÄÂÈÆÅÍÈß */ int x,y; int direct=3; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Timer1Timer(TObject *Sender) { /* ÄÂÈÃÀÅÌÑß Â ÊÀÊÓÞ-ÒÎ ÑÒÎÐÎÍÓ Â ÇÀÂÈÑÈÌÎÑÒÈ ÎÒ ÂÛÁÐÀÍÍÎÃÎ ÍÀÏÐÀÂËÅÍÈß */ switch(direct) { case 1 : x--; break; // âëåâî case 2 : y--; break; // ââåðõ case 3 : x++; break; // âïðàâî case 4 : y++; break; // âíèç } /* ÏÐÎÐÈÑÎÂÊÀ ÊÀÄÐÀ ÍÀ ÍÅÂÈÄÈÌÎÌ Image4 */ Image4->Canvas->CopyMode = cmSrcCopy; Image4->Canvas->CopyRect(Rect(0,0,300,300),Image3->Canvas,Rect(0,0,300,300)); Image4->Canvas->CopyMode = cmSrcAnd; Image4->Canvas->CopyRect(Rect(x+0,y+0,x+100,y+100), Image2->Canvas,Rect(0,0,100,100)); Image4->Canvas->CopyMode = cmSrcPaint; Image4->Canvas->CopyRect(Rect(x+0,y+0,x+100,y+100), Image1->Canvas,Rect(0,0,100,100)); /* ÑÌÅÍÀ ÊÀÄÐΠ*/ PaintBox1->Canvas->CopyRect(Rect(0,0,300,300), Image4->Canvas,Rect(0,0,300,300)); } //--------------------------------------------------------------------------- void __fastcall TForm1::FormKeyDown(TObject *Sender, WORD &Key, TShiftState Shift) { /* ÂÛÁÎÐ ÍÀÏÐÀÂËÅÍÈß Â ÇÀÂÈÑÈÌÎÑÒÈ ÎÒ ÍÀÆÀÒÎÉ ÊËÀÂÈØÈ (ÎÄÍÎÉ ÈÇ ÑÒÐÅËÎ×ÅÊ) */ switch(Key) { case 37 : direct=1; break; // âëåâî case 38 : direct=2; break; // ââåðõ case 39 : direct=3; break; // âíèç case 40 : direct=4; break; // ââåðõ } } //---------------------------------------------------------------------------