Question

J'écris une application GUI que je veux utiliser Swing and SWT. L'utilisateur final précisera une certaine façon qui doit être utilisé (il ne sera pas utiliser les deux en même temps!). SWT est ce que je préfère en général et je l'ai regardé JFace, mais il semble que si j'utilise ses fonctionnalités les plus puissantes, je vais augmenter le couplage entre l'interface graphique et le modèle, et le rendre beaucoup plus difficile de faire abstraction de l'interface graphique si swing peut être utilisés.

Est-ce le cas? Peut-on utiliser JFace sans attacher les détails de l'interface graphique dans le modèle ou vice-versa?

Était-ce utile?

La solution

Pour ce que je sais, en utilisant les téléspectateurs JFace ioffers assez bonne séparation de vue et le modèle.

Le seul couplage étroit est ici le choix de la mise en œuvre du spectateur réel (par exemple en utilisant TableViewer contre TreeViewer pour lier votre modèle à une table ou un widget Arbre avec respect).

Quant à votre première partie de l'tat de question que vous voulez indique pour une raison quelconque de découpler votre application à partir d'un choix de cadre de GUI, je vous suggère de jeter un oeil à projet uFace

Projet UFace vise à fournir exactement ce que vous semblez viser - une seule implémentation de l'interface utilisateur qui peut fonctionner contre de nombreux backends GUI (il appelle Fournisseurs ):

UFace page du projet au moment de cette liste par écrit le soutien aux fournisseurs suivants:

  • JFace / SWT
  • Balançoire
  • GWT

(J'ai aussi entendu des rumeurs de certains travaux effectués sur le soutien fournisseur Qt Jambi ainsi)

Autres conseils

Vous ne pouvez pas changer dynamiquement. appelle JFace SWT. On ne peut pas demander à la place AWT.

Quant à savoir si les couples de JFace le modèle à l'interface graphique, eh bien, non. Il dispose d'un ensemble d'interfaces de modèle, mais vous pouvez coller tout modèle qui vous plaît à eux. Il vous appartient de le faire proprement, si votre client veut la possibilité de déchirer en JFace un jour.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top