DelphiでTextRect関数を使用して文字を描画する場合、TTextFormatsで描画位置を調整できます。
しかしtfVerticalCenterという型があるのに、指定しても上下中央になりません。
試行錯誤した結果、tfVerticalCenterはftSingleLineを同時に指定しないと有効にならないようです。
上下中央にするためには
ということで上下左右中央ぞろえにするためには
TextRect(r, s, [tfCenter, tfSingleLine, tfVerticalCenter]);
というコードになります。
(rはTRect、sはString。ともにvar渡しになります)
ヘルプをなんとかしてくれ
Delphiはヘルプがいい加減すぎるのが欠点です。
このTTextFormatsもヘルプのページはありますが、説明が「このトピックには現在ドキュメントが存在しません。「ノート」を利用してこのトピックの改良について話しあうことができます。 」です。(ノートって何?)
こんな基本的な集合の説明ぐらい書けよ!
もちろんVCLのソースにもな~んにも書いてません。
たったこれだけで30分ぐらいムダにした・・・