−トップへ−

ヒントを表示する

 フォーム上のコンポーネントにマウスを合わせると,ヒントが出るようにすることは簡単にできます。
 
 試しに,フォームにボタンを設置し,それにボタンを合わせると「ボタン」とヒントが出るようにしてみます。
 ボタンを設置したら,そのプロパティを次のように設定してみます。

・「Hint」の項目に「ボタン」と入力
・「ShowHint」の項目を「True」に変更


 そして,実行してボタンの上にマウスをのせると,以下のようにヒントが表示されます。


 このヒントフォントの設定を変えることもできます。変える場合は,手続き(Procedure)の中で行いますが,どのprocedureの中でも変えることができます。
  
  プログラムソースは,
   screen.hintfont.sizeでフォントの大きさを変え,
   screen.hintfont.styleでフォントのスタイルを変え,
   screen.hintfont.nameでフォントの種類を変えます。
   (ほかにもいろいろ変えることができます。)
 
 
 このヒントを使って,マウスを押した位置をヒントで表示するプログラムを作ってみます。
 formに設置するコンポーネントは,Imageコンポーネントだけです。
 そして[FormCreate]イベントハンドラと[Image1MouseDown]イベントハンドラの2つを呼び出しておきます。

 procedure TForm1.FormCreate(Sender: TObject);
 begin
  image1.Left:=0; //以下の4行でイメージ枠をフォーム全体に広げる
  image1.Top:=0; //
  image1.Width:=form1.ClientWidth; //
  image1.Height:=form1.ClientHeight; //
 end;

 procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
                 Shift: TShiftState; X, Y: Integer);
 begin
  with image1.Canvas do begin //
   pen.Color:=clblack; //線の色を黒にして
   moveto(x,y-10); //以下の4行で+マークを表示します。
   lineto(x,y+10); //
   moveto(x-10,y); //
   lineto(x+10,y); //
  end;
  screen.HintFont.Size:=20; //ヒントのフォントサイズを20にして
  hint:='X='+inttostr(x)+' Y='+inttostr(y); //ヒントでXとYの座標を表示します
 end;

 以上を実行すると次のように+印の座標をヒントで表示します。

−トップへ−