J'ai travaillé sur une interface graphique simple et j'ai atteint un barrage routier. Je n'ai trouvé aucun exemple ou même source lisible sur la façon de créer un gestionnaire de disposition graphique. Je me demandais si quelqu'un connaissait certaines ressources sur la création d'un, ou un code source qui n'est pas cryptique comme le moteur de mise en page de Qt.Ressources sur la création d'un gestionnaire de mise en page GUI?
Répondre
Cela dépend de ce que vous entendez par "gestionnaire de disposition", et je ne connais pas Qt, donc cela ne me donne pas grand-chose.
Si vous voulez dire des choses comme la gestion des fenêtres redimensionnable, je pense que le terme pertinent est "solveur de contraintes". Je ne l'ai jamais beaucoup étudié, mais je crois que les solveurs de contraintes GUI sont basés sur linear programming - le Simplex algorithm et tout ça. Il pourrait être possible de faire quelque chose avec Gaussian Elimination, mais je suis loin d'être confiant à ce sujet.
Basé sur une recherche rapide de "programmation graphique gui layout", vous pouvez trouver this paper de CiteSeerX intéressant - il y a un téléchargement de PDF. Si vous n'aimez pas le cryptique, eh bien, en un coup d'œil, ce n'est pas vraiment lourd en mathématiques, mais je suppose que ce n'est pas non plus une lecture légère. Je suppose que je le saurai bientôt, car tu m'as intéressé.
C'est ce que je cherche! Désolé pour l'utilisation incorrecte de la terminologie, car c'est un territoire inexploré pour moi. Merci. – beta
+1 pour le lien vers le document. Tous ces types de papier sont souvent derrière des murs de paiement. –
@ graham.reeds: citeseer est un excellent site pour trouver des articles, sinon non disponible gratuitement. Je l'ai beaucoup utilisé quand je travaillais sur mon master. –
Je suis actuellement en train de créer un port Windows pour Mozilla XUL. Mon approche n'implique pas de techniques de programmation linéaire comme celles de Steve, mais c'est une approche plus orientée objet. Il est basé sur les modèles de conception Composite et Decorator. Le motif composite vous permet de créer des contrôles qui ont des contrôles enfants, qui à leur tour peuvent avoir leurs propres enfants. Un contrôle est responsable du positionnement de ses contrôles enfants dans son rectangle client désigné. Par exemple, supposons que vous souhaitiez implémenter une disposition qui positionne ses contrôles enfants horizontalement. L'algorithme de disposition doit ensuite calculer la largeur de chaque contrôle enfant afin de calculer les offsets x pour chaque contrôle enfant.
Le calcul de la largeur d'un conteneur est effectué en retournant la somme des largeurs des contrôles enfants.
Les classes Decorator peuvent être utilisées pour ajouter des propriétés supplémentaires. Par exemple, un MarginDecorator peut ajouter un espacement entre les contrôles enfants, un ScrollDecorator peut faire défiler les barres, etc ...
C'est une chose amusante à faire, je vous souhaite bonne chance!
- 1. Conseils sur la mise en page GUI pour le produit de sécurité
- 2. Gestionnaire de mise en page pour .NET, UI agnostique
- 3. WPF mise en page du magasin en ressources
- 4. Cadre de création Java GUI
- 5. Java GUI Création de composants
- 6. Création d'un dessin de mise en forme + Application de mise en page dans Silverlight
- 7. Gestionnaire de clics uniques sur Silverlight page
- 8. Blackberry - champs animation de mise en page
- 9. NHibernate Validator - passage gestionnaire de ressources et la clé
- 10. Quelle est la meilleure façon de convertir la mise en page de table en mise en page CSS?
- 11. Empêche la mise en place d'une grande zone de texte sur la deuxième page dans SSRS
- 12. Création d'un formulaire sur un thread non-gui
- 13. mise en page Fullscreen
- 14. Mise en page XAML de la grille WPF
- 15. mise en page tombe sur IE8 sur certaines machines
- 16. Masquage de l'aperçu de la page maquette en mode Création?
- 17. Création d'un nouveau code html en JS ou ajax en chargeant une mise en page html?
- 18. Implémentation de la mise en page à l'aide de MVP
- 19. Dossiers de création et de ressources Xcode
- 20. Mise en page Optimal algorithme
- 21. Puis-je accélérer le gestionnaire de disposition YUI, lorsque j'ai une grande table sur la page?
- 22. html: quels effets 'form' a-t-il sur la mise en page d'une page?
- 23. Mise en page XY JAVA
- 24. Exception mise en place de gestionnaire pour AppDomain.AssemblyResolve
- 25. Portage moteur de mise en page webkit
- 26. Crystal reports Mise en page
- 27. GridView Mise en page/sortie
- 28. problème de mise en page Flex
- 29. Mise en page CSS compliqué
- 30. Problème de mise en page Android ScrollView
Quelle plate-forme êtes-vous et quelle bibliothèque utilisez-vous pour créer vos interfaces graphiques? – StackedCrooked
J'essaye d'écrire le mien juste pour l'enfer. – beta