delphi Èý·½¿Ø¼þ
VCLÖеÄShapeÊǸöºÜ²»´íµÄ¿Ø¼þ£¬¿ÉÒÔÑ¡Ôñ¼¸ÖÖͼÐΣ¬ÒÔÂú×ãÎÒÃǵÄÐèÇ󣬵«ÓÐʱºò¾ÍÊǾõµÃËüµÄ¿ÉѡͼÐÎÉÙÁËÒ»µã£¬±ÈÈçÎÒÃÇÏëÒªÒ»¸öÈý½ÇÐΣ¬ËüȴûÓС£ÓÚÊǾÍÏëµ½À´À©Õ¹Ò»ÏÂÕâ¸ö¿Ø¼þ£¬ÃûΪShapeEx¡£ÆäʵÀ©Õ¹µÄ¹¦Äܲ»¶à£¬Ö»ÊÇÔö¼ÓÁËһЩͼÐΡ£¶øÀàÒ²²¢²»ÊǼ̳Ð×ÔTShape£¬¶øÊǼ̳Ð×ÔTGraphicControl£¬ÕâÑù¿ÉÒÔÈÃÎÒÃdz¹µ×¿´¿´Í¼ÐοؼþµÄ×ö·¨¡£TshapeÒ²ÊǼ̳Ð×ÔTGraphicControl¡£¶øÎÒÃǵÄÀ©Õ¹¿Ø¼þ¹¦ÄÜÊÇ»ùÓÚShapeµÄÀ©Õ¹£¬ËùÒÔµ±È»ÀïÃæµÄ´úÂ뼸ºõȡ֮TShape£¬Ö»ÊǼÓÁËһЩÀ©Õ¹Í¼ÐεĴúÂ룬µ«ÓÖÓÐʲô¹ØÏµÄØ£¬VCLÔ´ÂëÊÇ×îºÃµÄѧϰ×ÊÔ´£¬ÎÒÃǺβ»È¡Ö®ÓÃÖ®¡£
ºÜ¶à¶«Î÷ÎÒÃÇÒѾÔÚÉÏÃæËµ¹ýÁË£¬ÕâÀï²»¶à˵ÁË£¬ÎÒÒªÖ±ÈëͼÐοؼþµÄÖØµã¡£Í¼Ðοؼþ²»ÊÇ·â×°WindowsµÄ¿Ø¼þ£¬¶øÊÇDelphi×Ô¼º»³öÀ´µÄ£¬ÄÇôËü¿Ï¶¨ÓÐÒ»¸ö»¿Ø¼þµÄº¯Êý¡£Õâ¸öº¯Êý¾ÍÊÇ:
Paint;
¿´Ò»ÏÂVCLÔ´Â룬¿ÉÒÔÖªµÀËü¶¨ÒåÔÚTGraphicControl¡£ÖУº
procedure Paint; virtual;
ÕâÊÇÒ»¸öÐ麯Êý£¬ÄÇôËüµÄʵÏÖÊÇÔõôÑùµÄÄØ£¬µã»÷¿´ËüµÄʵÏÖÈçÏ£º
procedure TGraphicControl.Paint;
begin
end;
ÀïÃæÊ²Ã´ÂëҲûÓУ¬Õâ¸öºÜÈÝÒ×Àí½â£¬ÒòΪËü²»¿ÉÄÜÖªµÀËûµÄ×ÓÀàµÄͼÐÎÊÇʲôÑù×ӵġ£ËùÒÔÉèΪÐ麯Êý£¬ÓÉËüµÄ×ÓÀàÀ´¸²¸ÇËü¡£
ÄÇôÊÇ˵÷ÓÃÁËÕâ¸öº¯ÊýÀ´ÒýÆð»¿Ø¼þÄØ¡£WindowsÓÐÒ»¸öWM_PAINT;ÏûÏ¢£¬µ±Ò»ÇÐÒýÆðÖØ»µÄÌõ¼þ·¢Éú£¬Ôò»á·¢ËÍÕâÌõÏûÏ¢£¬ÔÙ¿´¿´TGraphicControl£¬¹ûÈ»ÓнػñÕâ¸öÏûÏ¢£º
procedure WMPaint(var Message: TWMPaint); message WM_PAINT;
ÔÚ´¦Àíº¯ÊýÀïÃæ£¬µ÷ÓÃÁËPaint·½·¨£¬´Ó¶øÊµÏÖÁ˻ͼÐοؼþ¿ÉÄÜ£º
procedure TGraphicControl.WMPaint(var Message: TWMPaint);
begin
if Message.DC <> 0 then
begin
Canvas.Lock;
try
Canvas.Handle := Message.DC;
try
Paint; //µ÷ÓÃÁËÕâ¸öº¯ÊýÀ´»Í¼Ðοؼþ
finally
Canvas.Handle := 0;
end;
finally
Canvas.Unlock;
end;
end;
end;
¶øËüµÄ×ÓÀา¸ÇÁËPaintº¯Êý£¬ËùÒÔÏûÏ¢´¦Àíº¯Êýµ÷ÓõÄʵ¼ÊÉÏÊÇij¸ö×ÓÀàµÄPaint·½·¨£
Ïà¹ØÎĵµ£º
procedure Delay(msecs:integer);
var
Tick: DWord;
Event: THandle;
begin
Event := CreateEvent(nil, False, False, nil);
try
Tick := GetTickCount + DWord(msecs);
while (msecs > 0) and (MsgWaitForMultipleObjects(1, Event, False, msecs, QS_ALLINPUT) <&g ......
Delphi 7ʼþµÄ¶à´¦Àí»úÖÆ
Allen Tao
2007-08-19
¡¡¡¡Ê×ÏȽâÊÍÒ»ÏÂÕâ¸öÌâÄ¿¡£ÔÚÎÒʹÓÃDelphi 7µÄ¹ý³ÌÖз¢ÏÖ£¬Ò»¸ö¶ÔÏóµÄʼþÖ»Äܱ»Ò»¸ö¹ý³Ì´¦Àí¡£Èç¹û¶à´Î¸øÕâ¸ö¶ÔÏóµÄʼþ¸³¸ø´¦ÀíʼþµÄ¹ý³Ì£¬×îºóÕæÕý´¦ÀíʼþµÄ½«ÊÇ×îºó¸³ÖµµÄÄǸö¹ý³Ì¡£ÀýÈ磬ÓÐÀàTMyClassÖж¨ÒåÁËÒ»¸öʼþOnSomeFired£¬ÔÚÀàTClientClassÖи ......
WinExecÖ÷ÒªÔËÐÐEXEÎļþ¡£È磺
WinExec("Notepad.exe Readme.txt", SW_SHOW);
ShellExecute²»½ö¿ÉÒÔÔËÐÐEXEÎļþ£¬Ò²¿ÉÒÔÔËÐÐÒѾ¹ØÁªµÄÎļþ¡£
Ê×ÏȱØÐëÒýÓÃshellapi.pasµ¥Ôª£ºuses ShellAPI;
1.±ê×¼Ó÷¨
¡¡¡¡ ShellExecuteº¯ÊýÔÐͼ°²ÎÊýº¬ÒåÈçÏ£º
function ShellExecute(hWnd: HWND; Operati ......
procedure TForm1.Button3Click(Sender: TObject);
begin
//ÏÔʾ´´½¨µÄÊý¾Ý¼¯: dbgrid->datasource->clientdataset
//Èç¹ûÊÖ¹¤¿ØÖÆdbgridÏÔʾ¿í¶È,dbgridÓÒ¼ü´´½¨Á½¸ö×Ö¶Îaa,bb,·Ö±ðÉèÖÿí¶È¼´¿É
cds1.FieldDefs.Add('aa',ftString,40);
......