2013-01-11 1 views
0

Я хочу поместить кнопку «Далее», которая при щелчке отобразит другую группу компонентов; и я хочу также поместить кнопку «Предыдущая», которая при нажатии будет отображать предыдущую группу компонентов. Как это сделать?Как реализовать что-то вроде экрана мастера?

+0

Это 2 экрана? или один экран, на котором вы меняете свои компоненты? – neb1

+0

Это 2 экрана? или один экран, который вы хотите изменить его Компоненты? – neb1

ответ

0

Недавно я реализовал формы ввода данных. Обычно у меня есть класс мастера, который содержит все формы в мастере, поэтому я могу легко перемещаться между ними. И когда я вызываю новую форму, я передаю объект мастера.

Ниже мой волшебник, реализация которого опущена.

public final class ReportWizard { 

    public static ReportWizard instance = null; 
    Form parent = null; 
    Form titleForm = null; 
    Form budgetForm = null; 
    Form iconForm = null; 

    final Report reports[] = new Report[20]; 

    public ReportWizard(Form parent) { 
     this.parent = parent; 
     this.instance = this; 
    } 

    void getTitle() { 
     AddReportForm reportForm = new AddReportForm(parent, this); 
     reportForm.showReportForm(); 
     titleForm = reportForm; 
     ImageListPicker getIcon = new ImageListPicker(titleForm, reports, this); 
     iconForm = getIcon.imageListForm; 
    } 

    void getIcon() { 
     iconForm.show();   
    } 

    public void cancelWizard() { 

     titleForm = null; 
     iconForm = null; 
     budgetForm = null; 
     instance = null; 

     parent.show(); 
     parent = null; 
     System.gc(); 
    } 
} 
+0

как перейти к следующему «экрану»? Фактически количество экранов - это количество записей из рекорстора. – pheromix

+1

Не могли бы вы дать более подробную информацию о решении, которое вы хотите? Я бы не предложил вам создать слишком много Форм. Вероятно, вы можете просто сделать removeAll() в текущей форме и перезагрузить экран новыми компонентами. Это будет лучшее решение, чем наличие многих форм. – Ajibola