2013-10-17 8 views
0

Je crée actuellement un assistant jface et je m'interroge sur les méthodes getNextPage(). Il y en a deux. Un dans la classe Wizard et un dans la classe WizardPage.Assistant JFace: à propos des méthodes getNextPage

La méthode getNextPage() dans WizardPage est l'événement pour le bouton suivant. La méthode getNextPage(IWizardPage page) dans le Wizard sert à contrôler l'ordre des pages.

Premier essai: Quand j'utilise les deux méthodes, seul le getNextPage() du WizardPage s'appeler. Eh bien, c'est stupide de contrôler les commandes de pages dans les pages-classes. (modificateurs ..) mais j'ai un événement sur mon prochain bouton.

Deuxième essai: Quand je n'utiliser le getNextPage(IWizardPage page) de la Wizard classe je peux contrôler l'ordre des pages facile, mais je ne dispose pas d'un événement sur mon bouton suivant, donc je ne peux pas recueillir toutes mes informations à partir du courant page.

Comment est-ce que tout cela s'accorde et y a-t-il une manière séparée de résoudre ceci?!

Meilleures salutations!

+0

Qu'est-ce que vous essayez d'atteindre? Pouvez-vous s'il vous plaît être plus précis? –

+0

Je ne comprends pas pourquoi il y a 2 méthodes et lesquelles je devrais utiliser. Ou dois-je utiliser les deux? Et si oui, quel sens cela fait-il si la méthode 'public IWizardPage getNextPage()' dans la classe 'WizardPage' renvoie un' IWizardPage' et la 'public IWizardPage getNextPage (IwizardPage iwizardpage)' de la classe 'Wizard' renvoie aussi un 'IWizardPage'? – Leviathan

Répondre

0

L'implémentation par défaut de WizardPage.getNextPage() appelle simplement Wizard.getNextPage(this) donc si vous le remplacez vous devez appeler super.getNextPage().

Si vous voulez savoir quand la page de l'assistant devient visible remplacez setVisible(boolean visible) dans la page WizardPage (en fait un membre DialogPage).

+0

sry j'ai oublié de vous répondre .. votre première déclaration était que je cherchais! :) Merci – Leviathan