掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
イメージにべベルを付けるには? (ID:10150)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
WEB 素材のボタンのようなものをつくる場合は、DrawEdge() をつかって ベベルを描くと背景を上書きしません。新規で Form1 に Image1 と Button1 を置いて、以下のようにしてみてください。 procedure TForm1.Button1Click(Sender: TObject); var r:TRect; s:string; begin Image1.Width := 100; Image1.Height := 30; r := Image1.ClientRect; s := 'Home'; with Image1.Picture.Bitmap do begin Width := Image1.Width; Height := Image1.Height; Canvas.Brush.Color := RGB(100,200,150); Canvas.FillRect(r); Canvas.Font.Charset := DEFAULT_CHARSET; Canvas.Font.Name := 'Arial'; Canvas.Font.Style := [fsBold]; Canvas.Font.Color := clWhite; Canvas.Font.Size := 13; DrawText(Canvas.Handle,PChar(s),-1,r,DT_CENTER or DT_SINGLELINE or DT_VCENTER); DrawEdge(Canvas.Handle,r,EDGE_RAISED,BF_RECT); end; end; ここでは、FillRect() で背景を塗りつぶしていますが、そうしないで、 Image1.Picture.Bitmap.LoadFromFile() を使って予め背景に使う画像を 読み込んでおくこともできます。いずれにしても、DrawEdge() でボタンの ようなベベルを周囲に描く事が出来ます。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.