1

以下のコードを編集テキストに使用しました。編集テキストの幅と高さを指定し、テキストが指定された高さになると、フィールドはそのコンテンツをスクロールしますが、このコードをより動的にしたいです。このエディットフィールドは1行だけで、3行または4行で大きくなります。これが完了すると、フィールドに含まれる内容がスクロールされます。それで何か助けはありますか?

public class TextBoxField extends VerticalFieldManager {
    private int managerWidth;
    private int managerHeight;
    private EditField editField;

    public TextBoxField(int width, int height) {
        super(Manager.NO_VERTICAL_SCROLL);
        managerWidth = width;
        managerHeight = height;

        VerticalFieldManager vfm = new VerticalFieldManager(Manager.VERTICAL_SCROLL);

        editField = new EditField(){
            public void paint(Graphics g) {
            getManager().invalidate();
            super.paint(g);
        }
    };

    vfm.add(editField);
        add(vfm);
    }

    public void paint(Graphics g) {
        super.paint(g);
        g.drawRect(0, 0, getWidth(), getHeight());
    }

    public void sublayout(int width, int height) {
        if (managerWidth == 0) {
            managerWidth = width;
        }
        if (managerHeight == 0) {
            managerHeight = height;
        }
        super.sublayout(managerWidth, managerHeight);
        setExtent(managerWidth,managerHeight);
    }

    public String getText() {
        return editField.getText();
    }

    public void setText(String text) {
        editField.setText(text);
    }
}
4

0 に答える 0