我已经使用了EditField
指定的宽度和高度,但是,当我在EditField
中输入文本时,我无法看到文本,有时我无法看到点击我正在NullPointerException
。我无法理解文本是否输入。此外,我无法在我的字段中看到光标。如果有任何错误,请给我建议。
我的代码是:
private EditField edto;
private int tosetWidth =400 ,tosetHeight = 50;
public WelcomeScreen()
{
/* Border For EditFields */
Border bdr = BorderFactory.createRoundedBorder(new XYEdges(4, 4, 4, 4),Border.STYLE_SOLID);
edto = new EditField(){
protected void layout(int width, int height)
{
setExtent(tosetWidth, tosetHeight);
}
};
edto.setBorder(bdr);
答案 0 :(得分:2)
由于此
而无法显示文字protected void layout(int width, int height)
{
setExtent(tosetWidth, tosetHeight);
}
只需删除并尝试使用您的代码
如果您想使用垂直滚动和固定大小编辑字段,请尝试按照
/**
* A class extending the MainScreen class, which provides default standard
* behavior for BlackBerry GUI applications.
*/
public final class MyScreen extends MainScreen
{
/**
* Creates a new MyScreen object
*/
public MyScreen()
{
// Set the displayed title of the screen
setTitle("My Edit box Example");
VerticalFieldManager vr=new VerticalFieldManager(VERTICAL_SCROLL|VERTICAL_SCROLLBAR)
{
protected void sublayout(int maxWidth, int maxHeight) {
super.sublayout(200,100);
setExtent(200, 100);
}
};
Border bdr = BorderFactory.createRoundedBorder(new XYEdges(4, 4, 4, 4),Border.STYLE_SOLID);
EditField edto = new EditField(){
public void paint(Graphics g)
{
getManager().invalidate();
super.paint(g);
}
};
vr.setBorder(bdr);
vr.add(edto);
add(vr);
}
}
您可以按以下方式获得输出