サイズ認識機能を提供するためにTButtonから継承しようとしています。この機能では、ボタンのサイズを変更したり、フォントサイズ(特定の制約内)を変更してテキストを変更したりできます。
例えば
| 小さい|
また
| これは本当に長いです|
| ボタンの文|
幸いにも同じフォームの同じボタンである可能性があります。私が行ったのはテキストをリセットすることだけで、ボタンはサイズの変更自体に対応します。
すべてのテキスト測定機能を実装しましたが、機能はある程度機能します。
私が行ったことは、WidthとFontの新しいプロパティmaxHeight、minHeight、defaultHeightなどを作成することです。
ユーザーがデフォルトの高さを変更すると、デザイン時のコンポーネントが変更され、この新しいデフォルトの高さが反映されます。
ただし、ユーザーが通常の高さと幅のプロパティを使用する場合(またはコーナーをドラッグする場合)、デフォルトの高さと幅にそれらを関連付ける方法がわかりません。
OnCanResizeをインターセプトしてイベントハンドラーを作成し、新しいサイズが最小最大値内にあることを確認しようとしました。そうでない場合は、必要に応じて最小または最大に設定しますが、境界内にある場合は更新します。ランタイムサイズ変更イベントをインターセプトできますが、デザインタイムはインターセプトできません。
設計時のサイズ変更を傍受できる場合、誰かがその方法を知っていますか?
それが少し長すぎる場合は申し訳ありませんが、それが理にかなっていることを願っています!