いつもお世話になっております。
Delphi2010+XP SP3で開発しております。
ボタンの背景色を変更したくTButtonから派生させて
BS_OWNERDRAWを使用したコンポーネントを作成した。
おかげで背景色は変更できるようになったのですが、代わりに
WordWrapプロパティをTrueにし#13#10をキャプションに追加しても
文字が折り返ししなくなってしまいました。
オーナードローを使用すると、マルチラインでの表示は行えなく
なってしまうのでしょうか?
やりたい事は、ボタンの背景色が変えられてキャプションを複数行表示
させたいのですが、何か良い方法はありませんでしょうか。
どなたか良い方法をご存知の方がいらっしゃいましたら
ご教授頂けると助かります。
以上、宜しくお願い致します。
申し訳ありません。自己解決致しました。
あるサンプルを参考にコンポーネントを作成したのですが
DrawTextを使用している部分があり、そこでDT_SINGLELINEを
使用していた為、マルチラインの表示が出来ない事が分かりました。
DT_WORDBREAKを使用すればマルチラインになりました。
しかし、問題が1つありましてDT_WORDBREAKを使用する事により
垂直方向へのセンタリングがなくなってしまいました。
色々と調べてみると、DT_VCENTERはDT_SINGLELINEの時だけ
有効という事なのでどうにもならない気もしますが、
もし良い方法を知っていらっしゃる方がいましたら
ご教授いただけませんでしょうか。
タイトルと質問内容が違ってしまって申し訳ありませんが
宜しくお願い致します。
申し訳ありません。
またまた、自己解決(?)致しました。
過去ログに似た様な事が載っていましたので、解決とさせて頂きます。
https://www.petitmonte.com/bbs/answers?question_id=3330
ありがとうございました。
ツイート | ![]() |