お知らせ

電子会議

ライブラリ

パレット

Delphi FAQ検索

Delphi FAQ一覧

サンプル蔵





FDelphi FAQ
16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル

"RE:ハートのフォーム"

この発言は
#00457 Quiri さんのハートのフォーム
に対するコメントです

この発言に対し以下のコメントが寄せられています
#00462 謎の全知師 さん RE^2:ハートのフォーム

//リージョン使用例。ハートの形のフォームを作る。 謎の全知師さん、いつもどうもありがとうございます。 リージョンのことよく解っていないもので...(^^;) 修正しましたので再度アップします。 Quiri (JAC01052) procedure TForm1.FormCreate(Sender: TObject); var size:integer; Rgn1,Rgn2,Rgn3: HRGN; begin if Height>Width then size:=Width div 4 else size:=Height div 4; Rgn1:=CreateEllipticRgn(-(2*size),-(2*size),4*size,4*size); Rgn2:=CreateRectRgn(2*size,size,4*size,4*size); combinergn(Rgn1,Rgn1,Rgn2,1); Rgn2:=CreateEllipticRgn(0,-(2*size),6*size,4*size); Rgn3:=CreateRectRgn(0,size,2*size,4*size); combinergn(Rgn2,Rgn2,Rgn3,1); combinergn(Rgn1,Rgn1,Rgn2,2); Rgn2:=CreateEllipticRgn(0,0,2*size,2*size); Rgn3:=CreateRectRgn(0,0,size,size); combinergn(Rgn2,Rgn2,Rgn3,1); combinergn(Rgn1,Rgn1,Rgn2,2); Rgn2:=CreateEllipticRgn(2*size,0,4*size,2*size); Rgn3:=CreateRectRgn(3*size,0,4*size,size); combinergn(Rgn2,Rgn2,Rgn3,1); combinergn(Rgn1,Rgn1,Rgn2,2); Rgn2:=CreateEllipticRgn(-(size div 2),0,5*size div 2 ,4*size); Rgn3:=CreateRectRgn(size,0,2*size,size); combinergn(Rgn2,Rgn2,Rgn3,1); combinergn(Rgn1,Rgn1,Rgn2,2); Rgn2:=CreateEllipticRgn(3*size div 2,0,9*size div 2,4*size); Rgn3:=CreateRectRgn(2*size,0,3*size,size); combinergn(Rgn2,Rgn2,Rgn3,1); combinergn(Rgn1,Rgn1,Rgn2,2); SetWindowRgn(Handle, Rgn1, True); DeleteObject(Rgn2); DeleteObject(Rgn3); end; Original document by Quiri 氏 ID:(JAC01052)



ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。

Copyright 1996-2002 Delphi Users' Forum