0

画面にスパークボタンがあり、次のようにactionscriptを使用してラベルを動的に更新しています:

discount.label = this.data.SelectedDiscount.discount + "%";

問題は、新しいラベル テキストが切り捨てられることです。

最初は、ボタンのラベルは空白です:

黒ボタンラベル

次に、上記のコードでラベルを変更すると、「30 %」と表示されるはずの場合、次のようになります。

切り捨てられたテキスト

ただし、ボタンをクリックすると、表示が更新され、正しくレンダリングされます。

ラベルの正しいレンダリング

ボタンの幅などをいじって、さまざまな無効化および検証メソッドをすべて試しましたが、すべて役に立ちませんでした。最初のラベルがより広く、「-------」のような値の場合、問題なく動作しますが、残念ながら空白の文字列ではうまくいきません。使いやすさの理由から、「0%」または「00%」の文字列は本当に必要ないので、これを適切に機能させる簡単な方法はありますか?

できれば、これを達成するためだけにマウスのクリックを偽造する必要は避けたいと思います。

4

1 に答える 1

1

@ www.Flextras.comのガイダンスのおかげinvalidateSize()で、ボタン自体ではなく、ボタンのスキンでメソッドを呼び出すことで、これを機能させることができました。

discount.skin.invalidateSize();
于 2012-11-08T00:29:58.263 に答える