1

太字、下線付き、斜体のテキストでLabelFieldのスタイルを設定することはできましたが、取り消し線のテキストを指定する方法をまだ見つけていません。サポートされているドキュメントや、それが実装されている他の例を見つけることができませんでした。BlackBerry OS 4.6または4.7で取り消し線効果のあるテキストを表示することは可能ですか?

4

1 に答える 1

2

BBの方法は、コンポーネントのスタイルを設定することではなく、コンポーネントを拡張することだと思います。したがって、解決策は次のようになります。

ここに画像の説明を入力してください

package mypackage;

import net.rim.device.api.ui.*;
import net.rim.device.api.ui.component.*;
import net.rim.device.api.ui.container.*;
import net.rim.device.api.ui.decor.*;

public class MyApp extends UiApplication {
    public static void main(String[] args) {
        MyApp myApp = new MyApp();
        myApp.enterEventDispatcher();
    }

    public MyApp () {
        pushScreen(new MyScreen());
    }    
}

class MyScreen extends MainScreen {
    public MyScreen() {
        LabelField myLabel = new LabelField("Strike me") {
            protected void paint(Graphics g) {
                super.paint(g);

                int w = getFont().getAdvance(getText());
                g.drawLine(0, getHeight()/2, w, getHeight()/2);
            }
        };
        add(myLabel);
    }
}

更新:あなたも使用することができます

Font f = g.getFont();
Font s = f.derive(Font.STRIKE_THROUGH);
g.setFont(s);
于 2011-05-09T14:26:54.410 に答える