1
是否可以使用畫家或其他技術來自定義文本 使用合成器繪製控件?Synth覆蓋按鈕上的文本繪圖
我知道你可以在SynthPainter中實現paintButtonBorder
和paintButtonBacground
,但我想知道是否有辦法用文本來做到這一點?也許有一些解決方法?
是否可以使用畫家或其他技術來自定義文本 使用合成器繪製控件?Synth覆蓋按鈕上的文本繪圖
我知道你可以在SynthPainter中實現paintButtonBorder
和paintButtonBacground
,但我想知道是否有辦法用文本來做到這一點?也許有一些解決方法?
通常,您會創建一個SynthGraphicsUtils
子類,覆蓋paintText(SynthContext ss, Graphics g, String text, Icon icon, int hAlign, int vAlign, int hTextPosition, int vTextPosition, int iconTextGap, int mnemonicIndex, int textOffset)
並從您的按鈕SynthStyle
的getGraphicsUtils(SynthContext context)
方法返回子類的實例。
無論如何,如果你要委派繪畫超級實施,警惕的某些細節,如果text
是HTML(與<html>
標籤開始):
ss.getComponent().getText()
代替text
。ss.getComponent().getForeground()
。對於樣式文本,這將匹配HTML/CSS中指定的顏色。