| ºë±m±ÀÂË |
|
|
| ¤ÀÃþ³Ì·s±Ðµ{ |
|
| ¤ÀÃþ¼öÂI±Ðµ{ |
|
|
|
¦bVFP¤¤¨î°µ²§«¬µ¡¤f ¡]§@ªÌ¡G©P»ï´¡@2000¦~09¤ë04¤é 11:50¡^
¡@¡@¨î°µ²§«¬µ¡¤fÅ¥°_¨Ó¦n¹³¥u¬O¦bVB¡BVCµ{§Ç³]p¤¤¤~¯à°÷°µ¨ìªº¡C¦ý¬O¡A¦bVFP¤¤¡A¥un§AÆF¬¡¹B¥ÎAPI¨ç¼Æ¡A³o¨Ã¤£¬O¤@¥ó«ÜÃø¹ê²{ªº¨Æ±¡¡C³q¹L¥»¤åªº¤¶²Ð¡A§A¤@©w¯à°÷µo²{VFPµ{§Çªº±j¶µ¤£¶È¶È¬O¼Æ¾Ú³B²z¡A¦bµ{§Ç¬É±³]p¤è±¤]¥i¥H©M¨ä¥Lªº½sµ{»y¨¥¬Û·B¬ü¡C
¡@¡@¤@¡B¹ê²{ì²z
¡@¡@¦bVB¡BVCµ{§Çªº³]p¤¤¡A¦pªG·Qn§ïÅܵ¡¤fªº§Îª¬¡A³q±`·|³q¹L¹ïSetWindowRgnªº½Õ¥Î¨Ó¹F¨ì¥Øªº¡CSetWindowRgn¨ç¼Æ¯à°÷±Nµ¡¤f³]©w¦¨¥ô·N§Îª¬¡C¸Ó¨ç¼Æªº½Õ¥Î®æ¦¡¦p¤U¡G
¡@¡@int SetWindowRgn( HWND hWnd, HRGN hRgn, BOOL bRedraw )
¡@¡@¨ä¤¤¦U°Ñ¼Æªº§t·N¬°¡G
¡@¡@hWnd¡G±ý§ïÅܵ¡¤fªº¥y¬`
¡@¡@hRgn¡Gµ¡¤fªºÅã¥Ü°Ï°ì
¡@¡@bRedraw¡G«ü©úµ¡¤f¦b³Q§ïÅÜÅã¥Ü°Ï°ì¤§«á¬O§_»Ýn«Ã¸¡A³q±`±¡ªp¤U¸ÓȬ°¯u¡C
¡@¡@³q¹L¤W±¹ïSetWindowRgn¨ç¼Æªº¤¶²Ð¡A§ÚÌ¥i¥H¬Ý¥X¡A¦bVFP¤¤n·Q§ïÅܵ¡¤fªº§Îª¬¡A»Ýnª¾¹DVFPµ¡¤fªº¥y¬`¡C¦bVFP¤¤n·Qª½±µ±o¨ì¦³Ãöµ¡¤fªº±¡ªp¬O«Ü§xÃøªº¡A¦]¦¹¥²¶·§Q¥ÎAPI¨Òµ{®w¡CVFP¦Û±aªºAPI¨Òµ{®w¡uFoxtools.fll¡v´£¨Ñ¤F¹ïµ¡¤f¾Þ§@ªº¬ÛÃö¨ç¼Æ¡C¥»¤å¤¤¯à°÷¥Î¨ìªº¨Òµ{¦³_WOnTop¡]¡^©M_WhToHwnd¡]¡^¨âºØ¡A¨ä¤¤_WOnTop¡]¡^¬O¥Î¨ÓÀò±o³»¼hµ¡¤fªº¥y¬`¡A_WhToHwnd¡]¡^ªð¦^«ü©wµ¡¤fªº¥y¬`¡C³o¨âÓAPI¨Òµ{ªº½Õ¥Î®æ¦¡«Ü²³æ¡A³o¸Ì´N¤£¦A¸Ô²Ó¤¶²Ð¤F¡C
¡@¡@¤G¡B¹ê²{¹Lµ{
¡@¡@¦³¤F¤W±ªº»{ÃѤ§«á¡A§ÚÌ«K¥i¥H¸ÕµÛ¥h³]p²§«¬µ¡¤fªºµ{§Ç¤F¡C³]p¨BÆJ¦p¤U¡G
¡@¡@1.·s«Ø¤@ªí³æMult_shape¡A«öªí1³]¸mªí³æªºÄݩʡC
ªí1
ÄݩʦW ³]¸mÈ ³Æµù AutoCenter .T. ¦Û°Ê©~¤¤ BackColor 0,0,160 ÂŦâI´º BorderStyle No Border µ¡¤fµLÃ䮨 ControlBox .F. ¥h±¼ªí³æªº³Ì¤j¤Æ¡B³Ì¤p¤Æ¡B«ì´_«ö¶s Caption ¶ê§Îµ¡¤f FillColor 128,255,0 ¡@ ShowWindow 2-as TopúL-Level Form ±Nªí³æ§@¬°³»¼hªí³æ¡A§_«hªí³æ¤£¯à¿W¥ß©óVFP¦Ó¦s¦b TitleBar 0-Off ¨ú®ø¼ÐÃDÄæ
¡@¡@¦bªí1¤¤¡A¹ïªí³æ¬É±©Ò°µªº³]©w¡A¥Øªº¬O¬°¤FÅýªí³æ¦b¹B¦æ¤§«á§ó¹³¤@¶ê§Îµ¡¤f¡A¦]¦¹¡A§ÚÌ»Ýn¥h±¼¼ÐÃDÄæ¡Bµ¡¤f¤j¤p±±¨î«ö¶sµ¥±`³Wµ¡¤f¤Wªº¤º®e¡C
¡@¡@2.¦bªí³æ¤W¥[¤J¤@¼ÐÅÒ±±¥ó(Label1)©M«ö¶s±±¥ó(Command1)¡A¤À§O³]©w¨ä¼ÐÃD¬°¡uVFP¶ê§Îµ¡¤f¥Ü¨Ò¡v©M¡u°h¥X¡v¡C
¡@¡@3.³]©wªí³æ©M±±¥óªº¨Æ¥ó¥N½X¡A¨ä¤¤ªí³æªºLoad¨Æ¥ó¥N½X¬°¡G
¡@¡@*µù¥UAPI¨ç¼Æ
¡@¡@declare integer SetWindowRgn in win32api integer,integer,integer
¡@¡@declare integer CreateRoundRectRgn in win32api integer,integer,integer,integer,integer,integer
¡@¡@*µù¥UVFPªºAPI¨Òµ{®w
¡@¡@SET LIBRARY TO "C:\Program Files\Microsoft Visual Studio\Vfp98\Foxtools.fll"
¡@¡@*³]©wªí³æªº¤j¤p
¡@¡@thisform.top=0
¡@¡@thisform.left=0
¡@¡@thisform.height=200
¡@¡@thisform.width=200
¡@¡@ªí³æªºActivate¨Æ¥ó¥N½X¬°¡G
¡@¡@thisform.Label1.top=thisform.top+thisform.height/2-thisform.label1.height
¡@¡@thisform.Label1.left=thisform.left+(thisform.width-thisform.label1.width)/2
¡@¡@thisform.command1.top=thisform.height-3*thisform.command1.height
¡@¡@thisform.command1.left=thisform.left+(thisform.width-thisform.command1.width)/2
¡@¡@*¤Wz¥N½X¥Dn¬O¥Î¨Ó¦b¶ê§Îµ¡¤f¤¤·Ç½T©w¦ì¦U±±¥óªº¦ì¸m
¡@¡@topwindow=_WOnTop( )
¡@¡@*Àò±o³»¼hµ¡¤f
¡@¡@hwnd=_WhToHwnd(topwindow)
¡@¡@*Àò±o³»¼hµ¡¤fªº¥y¬`
¡@¡@CRN1=CreateRoundRectRgn(0,0,200,200,200,200)
¡@¡@*«Ø¥ß¤@¶ê§Îµ¡¤f¡A¦pªGn°µ¨ä¥L§Îª¬ªºµ¡¤f¡A¥u»Ý½Õ¥Î¤£¦Pªº«Ø¥ß°Ï°ìªº¨ç¼Æ
¡@¡@SetWindowRgn(hWnd,CRN1,.T.)
¡@¡@Command1±±¥óªºClick¨Æ¥ó¥N½X¬°¡G
¡@¡@thisform.release
¡@¡@¥t¥~¡A¦pªG§AÁÙ·Q³]p¥X¨ä¥L§Îª¬ªºµ¡¤f¡A¥u»Ýn±NForm1¤¤ªºActivate¨Æ¥ó¥N½X¤¤ªºCreateRoundRectRgn(0,0,200,200,200,200)°µ¬ÛÀ³ªº×§ï¡C¤ñ¦p§A·Qn«Ø¥ß¤@Ä«ªG§Îµ¡¤f¡A±N¸Ó»y¥y§ï¬°¡G CreateRoundRectRgn(0,0,200,200,90,1800)§Y¥i¡C
¡@¡@³q¹L¥»¤å©Ò¤¶²Ðªºµ{§Ç¡A¥H«e¬Ý°_¨Ó«Ü§xÃøªº¨Æ±¡Â಴¶¡´N°µ¨ì¤F¡C¸Õ¸Õ¬Ý§a¡A§A¯à°÷°µ¥X§ó¥[Â×´I¦h±mªº²§«¬µ¡¤f!
|
|
|