2010-12-03 9 views
1

私のプロジェクトでButtonを使用すると、TextImageRelationというプロパティが公開されます。これは、ボタン画像をテキストと関連付ける位置(ImageBeforeTextオプションを使用しています)をコントロールに指示するために使用されます。今、私はテキストを中心に整列させる必要があります。Button TextImageRelationとTextAlignの問題

私はSPECTうロジック結果は次のとおりです。左に揃えられた画像と画像とボタンの右の境界との間のスペースの中央にボタンのテキスト。

でもないが...テキストが画像の隣に並んOR中央に揃えますが、アカウントに画像を撮影されていない(わからない、その場合)。

この動作を変更する方法はありますか?

答えて

1

残念ながら、あなたはできません。レイアウトは、内部のButtonBaseAdapter.CommonLayout()メソッドによって決まります。オーバーライドすることはできません。

TextImageRelation =オーバーレイはTextAlign設定に従ってテキストを揃えます。イメージは無視されます。あなたはその後、TextImageRelation = ImageBeforeTextを設定すると

テキストは常に画像の右へのフラッシュ整列されます。ギャップサイズは3ピクセル固定です。テキストを右に動かすのは非常にばかげているが、そうでなければ効果的な方法は、テキストにスペースを接頭辞として付けることです。しかし、それが中心に置かれていることを保証するのに十分ではありません。とにかくこれは望んでいないでしょう、ボタンのキャプションは一直線に並んでいなければなりません。 RightToLeft = Yesは、あなたが探しているものではなくちょっとした方法を教えてくれます。

+0

他のことを聞くのが楽しいです:)私はちょっとしたことで作業します...ありがとう! – Romias

+0

また、ImageBeforeTextを使用すると、画像が何とかボタンの高さの中央に配置されません。私はボタンの高さをincrese場合は、それはよく見える...ので、私はそれも上のギャップが固定か何かのようだと思う!信じられないほどよく使用されるコントロールの1つにこの問題があります... – Romias

関連する問題