delphi´úÂë±ä³ÉbcbºóÌ«ÉÁ,¶¼ÊÇÔÚ FormPaint ·½·¨ÖÐ
delphi´úÂë:::
var
i: integer;
rgn: HRGN;
r: TRect;
begin
with Canvas do begin
//ÀûÓÃimgTitleBarBG»æÖƱêÌâ±³¾°
for i:=0 to ClientWidth div imgTitleBarBG.Width do
Draw(i*imgTitleBarBG.Width, 0, imgTitleBarBG.Picture.Bitmap);
if Tag<>0 then Exit; //Èç¹û´°ÌåÕýÔÚµ¯³ö״̬£¬²»»æÖÆÄÚÈÝÃæ°å±³¾°
// »æÖÆÄÚÈÝÃæ°å±³¾°
SetRect(r, 5, 15, Width-5, Height-5);
StretchDraw(r, imgShapeBG.Picture.Bitmap);
Pen.Color := $C97F55;
Brush.Style := bsClear;
RoundRect(r.Left, r.Top, r.Right, r.Bottom, 6, 6);
//»æÖÆ´°Ìå±ß¿ò
rgn := CreateRectRgn(0,0,0,0);
GetWindowRgn(Self.Handle, rgn);
Brush.Color := $BE796B;
windows.FrameRgn(Handle, rgn, Brush.Handle, 2, 2);
DeleteObject(rgn);
end;
end;
ת³ÉbcbºóµÄ´úÂë:::
Application-> ProcessMessages(); //¼ÓÕâ¾ä
//ÀûÓÃimgTitleBarBG»æÖƱêÌâ±³¾°
for ( int i=0 ; i < (ClientWidth / imgTitleBarBG->Width) ; i++ )
{
Canvas->Draw(i * imgTitleBarBG->Width , 0 , imgTitleBarBG->Picture->Bitmap);
if (Tag!=0)
break; //Èç¹û´°Ì
Ï£Íû¸ø´ó¼ÒÌṩһЩеÄ˼·.
ÎÒÃÇÔÚʹÓÃC±à³Ìʱ»áÓöµ½Ò»¸öÎÊÌ⣬±ÈÈçÍ·ÎļþµÄÒ»¸öº¯Êý°üº¬ÔÚÒ»¸ölib ÖУ¬µ«ÊÇ
ÔÚʵ¼ÊÁ¬½ÓÖÐÎÒÃDz»ÖªµÀËüÔÚÄĸö¿âÖС£Ò²Ðí¿ÉÐеÄÒ»ÖÖ°ì·¨ÊÇÖ±½ÓÉÏÍø²éѯij¸ö
º¯ÊýµÄÒÀÀµÌõ¼þ£¬Õâ¶Ô ......