-2

EventBeanタイプの日付を持つベクトルがありますが、他のすべてのデータを上書きするベクトルの最後の値のみを表示するラベルフィールドを使用しています。

    for (int i = 0; i < vector.size(); i++) {

EventsBean bean1 = (EventsBean) vector.elementAt(i);

if (bean1.getUserDate().equals(label1.getText())) {

summaryLabel.setText("SUBJECT Saved");

labelListener.setText(bean1.getSummary());

startDateLabel.setText("START DATE Saved");

labelListener1.setText(bean1.getStartDate());

endDateLabel.setText("END DATE Saved");

labelListener2.setText(bean1.getEndDate());
}

ラベルはコンストラクターで次のように作成されます

   labelListener = new LabelField("",
                                        LabelField.FIELD_LEFT);
  add(labelListener );
4

2 に答える 2

0

labelListener をローカルに作成する必要があります。次の操作を行います。

for (int i = 0; i < vector.size(); i++) {

EventsBean bean1 = (EventsBean) vector.elementAt(i);

if (bean1.getUserDate().equals(label1.getText())) {

LabelField labelListener=new LabelField();
summaryLabel.setText("SUBJECT Saved");

labelListener.setText(bean1.getSummary());

startDateLabel.setText("START DATE Saved");

labelListener1.setText(bean1.getStartDate());

endDateLabel.setText("END DATE Saved");

labelListener2.setText(bean1.getEndDate());
add(labelListener);
}
于 2012-03-16T05:37:05.010 に答える
0

いくつかのラベルフィールドを追加し、for ループでフィールドのテキストを設定しています。ループが実行されると、ベクター内の各アイテムのラベルフィールドが設定されます。ループが終了すると、ラベルフィールドには最後のアイテムのテキストが含まれ、前のアイテムの値が明らかに上書きされます。

于 2012-03-15T15:36:43.283 に答える