Как использовать изображение для текстового поля - j2me blackberry
Я использую изображение для текстового поля.
Когда я сосредотачиваюсь на этом, чтобы написать что-то, первая буква текста, которую я пишу, наполовину обрезается.
Как этого избежать?
Мой код:
textbox = new EditField(EditField.NO_NEWLINE)
{
protected void layout(int width, int height)
{
super.layout(1000, 38);
super.setExtent((Display.getWidth()),30);
}
}
manager = new VerticalFieldManager(HORIZONTAL_SCROLL)
{
protected void paint(Graphics g)
{
int x = this.getHorizontalScroll();
g.drawBitmap( x, 0,textbox.getWidth(),textboxc.getHeight(),textbox, 0, 0 );
super.paint(g);
}
protected void sublayout(int maxWidth, int maxHeight)
{
Field field = testbox;
layoutChild(field, Display.getWidth(), Display.getHeight());
setPositionChild(field, 148, 8);
super.sublayout(maxWidth, maxHeight);
}
}
manager.add(textbox);
1 ответ
Решение
textbox= new EditField(" ","",500,EditField.NO_NEWLINE | Field.FOCUSABLE)
{
protected void paint(Graphics g)
{
g.setColor(Color.MAROON);
super.paint(g);
}
protected boolean keyChar(char key, int status, int time)
{
return super.keyChar(key, status, time);
}
};
manager = new VerticalFieldManager(HORIZONTAL_SCROLL )
{
protected void paint(Graphics g)
{
int x = this.getHorizontalScroll();
if(textbox.getText().equals(""))
{
g.drawBitmap( x, 0, textbox_img.getWidth(), textbox_img.getHeight(), textbox_img, 0, 0 );
}
super.paint(g);
}
}
manager.add(textbox);