Labelコンポーネントを使う
最終更新日:2002/06/10
今回はLabelです。LabelはButtonと同じComponentクラスを元にしているだけあって似たような操作が可能です。
利用されるclass/interface
Label
[ setText(String) setAlignment(int)]
Component
[ setBackground(int) setForeground(int)]
ComponentListener
[ setComponentListener(ComponentListener) ]
Panel
[ add(Component) ]
IApplication
[ start() ]
import com.nttdocomo.ui.*;
import com.nttdocomo.io.*;
class SamplePanel extends Panel implements ComponentListener{
Label label;
Button button;
int clickCount;
public SamplePanel()
{
setComponentListener(this);
label = new Label("ラベルサンプル",Label.CENTER);
button = new Button("BTN1");
add(label);
add(button);
}
public void componentAction(Component src, int type, int param)
{
if(src == button && type == BUTTON_PRESSED){
clickCount++;
switch(clickCount){
case 1:
label.setText("Label");
break;
case 2:
label.setAlignment(Label.RIGHT);
break;
case 3:
label.setForeground(Graphics.getColorOfName(Graphics.BLUE));
break;
case 4:
label.setBackground(Graphics.getColorOfName(Graphics.YELLOW));
break;
case 5:
clickCount = 0;
label.setText("ラベルサンプル");
label.setAlignment(Label.CENTER);
label.setForeground(Graphics.getColorOfName(Graphics.BLACK));
label.setBackground(Graphics.getColorOfName(Graphics.WHITE));
break;
}
}
}
}
public class SampleApp extends IApplication{
public void start() {
Display.setCurrent(new SamplePanel());
}
}
|
|
ラベルとボタンを配置しています。
|
PanelについてもComponentListenerについても以前に解説したので今回はLabelに関するところのみを解説します。
label.setText("Label");
label.setAlignment(Label.RIGHT);
label.setForeground(Graphics.getColorOfName(Graphics.BLUE));
label.setBackground(Graphics.getColorOfName(Graphics.YELLOW));
|
上から順番に「ラベル文字の変更」、「文字配置の変更(右寄せ・センタリング・左寄せ)」、「ラベル文字の色の変更」、「ラベル背景色の変更」となります。
全く持って簡単ですがラベルは特に難しいことはないのでこれで問題ないでしょう。