文字列を表示するとき、高さを自動調節するには

解決


かきざき  2013-07-29 13:59:30  No: 44937  IP: 192.*.*.*

XE4 Firemonkey でプログラムしています。
TMemoやTLabel を使って、Wordwrapをtrueにすると複数行の文字列を表示することができますが、TMemoやTLabel等のコントロールの高さを文字列の行数に合わせることができなくて、必要以上の空行ができます。
他のコントロールを使ってこの問題を解決する方法はありますか?また、コードで文字列の行数を所得して、コントロールの高さを変えるといったことは可能なのでしょうか。
よろしくお願いします。

編集 削除
take  2013-07-29 14:54:38  No: 44938  IP: 192.*.*.*

ちょっと触ってみた感じで正確ではありませんが

  Memo1.Height := -(Memo1.Font.Height - 1) * Memo1.Lines.Count + 2;

【Memo1.Font.Height】
フォントの高さ Pixcelを -1したもの
【-1】
行間

【+2】
Memoの周辺分を考慮

編集 削除
かきざき  2013-08-03 08:43:10  No: 44939  IP: 192.*.*.*

take様  ありがとうございます。

Memo1.Lines.Count は文字列の行数を表していると勘違いしていました。実際には Memo の表示上の行数を表していることをテストして確認できました。

これでなんとかなりそうです。ありがとうございました。

編集 削除