Dans notre application principale, nous avons un formulaire qui nous permet de faire une analyse croisée des données de quatre façons différentes. Actuellement, chaque analyse apparaît dans sa propre page d'un PageControl sur l'écran. Maintenant, la haute direction aimerait que nous ajoutions un aspect historique au formulaire, que nous utiliserions dans d'autres domaines, mais l'imbrication de deux d'entre eux semble être une mauvaise idée pour afficher les périodes et analyser les onglets empilés au-dessus de L'un et l'autre. Quelqu'un a-t-il des suggestions sur la façon dont nous pourrions retravailler cela pour avoir l'air décent et bien fonctionner? Merci.Quelles alternatives de conception sont disponibles pour les contrôles de page imbriqués?
Répondre
IMHO, vous pouvez utiliser des cadres pour chaque page de résultats d'analyse, puis vous pouvez utiliser PageControl ou TabSet ou tout autre contrôle visuel pour charger et afficher le cadre approprié.
Étant donné que les cadres sont totalement indépendants du contrôle visuel que vous utilisez pour sélectionner la période et l'analyse appropriées, vous ne serez pas limité aux contrôles basés sur des tabulations; Par exemple, vous pouvez avoir un onglet pour la sélection de l'analyse, et un arbre pour la sélection de la période.
Les cadres ont quelques avantages supplémentaires ici aussi:
- Tout d'abord, leur code est conservé dans unités séparées et cela augmentera la lisibilité du code.
- Deuxièmement, vous pouvez concevoir un cadre de base et mettre tous les contrôles et les codes qui toutes ces actions 4 d'analyse dans ce cadre de base, et de cette façon ont une meilleure réutilisation du code.
- Troisièmement, vous pouvez déposer chaque image sur votre formulaire principal et les faire charger comme avant, ou vous pouvez définir un contrôle conteneur (par exemple un panneau) et en fonction de la charge de sélection de l'utilisateur l'un des la cadres dans le contrôle de conteneur dynamiquement, afin de réduire la charge initiale fois de votre application, et probablement réduire la consommation globale de ressources du système .
Qu'en est-il de l'utilisation du contrôle TTabset en bas du formulaire pour permettre la commutation entre les périodes historiques et les données actuelles? Je voudrais également m'assurer qu'il y avait une différence visuelle dans la façon dont les données sont présentées pour les données historiques par rapport aux données actuelles. Comme utiliser un fond de cellules grises pour les données historiques.
Voir l'IDE Delphi pour un exemple avec les onglets "code" et "history". –
Utilisez un petit TTabSet (horizontal) avec un TTabSet vertical.
Voir here (vous pouvez cliquer sur l'image pour l'agrandir). Le TTabSet est livré OOTB avec Delphi. Le vertical peut être écrit très facilement si vos besoins sont faibles. Si tu veux, je peux partager le code. Mais si vous voulez un meilleur jeu d'onglet vertical, vous pouvez passer plus de temps sur l'écriture ou en obtenir un qui est prêt à partir de Torry ou ailleurs.
HTH.
- 1. Quelles sont les alternatives pour CSharpOptParse?
- 2. Quelles sont les alternatives pour l'authentification Java?
- 3. Quelles sont les alternatives OpenID
- 4. Quelles sont les alternatives à Pervasive DataRush
- 5. Quelles sont les options disponibles pour VisualSVNServerHooks.exe?
- 6. Quelles approches sont disponibles pour les données de conception fictives dans WPF?
- 7. Quelles sont les alternatives à ClickOnce?
- 8. Quelles sont les alternatives "Pastie"? (installable)
- 9. Quels contrôles .Net sont disponibles pour le balisage de diagramme?
- 10. Quelles sont les alternatives à GeoEXT?
- 11. Quelles sont les alternatives à DataGridView?
- 12. Quelles sont les polices disponibles sur Android?
- 13. quelles sont les alternatives à l'utilisation de global.asax?
- 14. Java P2P - quelles sont les options disponibles?
- 15. Quelles sont les stratégies d'intégration disponibles?
- 16. Quelles sont les alternatives pour PHPLint qui s'exécutent sous Windows?
- 17. alternatives .net pour les programmes Java disponibles
- 18. Quelles méthodes sont disponibles pour afficher les fichiers sur iPhone?
- 19. Quelles sont les extensions PHP disponibles pour TCP Socket Networking?
- 20. Quelles autres API sont disponibles pour les hôtels?
- 21. Quelles sont les méthodes disponibles pour stocker des fichiers séquentiels?
- 22. Quelles bibliothèques tierces sont disponibles pour le développement de l'iPhone?
- 23. Quelles sont les fonctionnalités de sécurité disponibles dans Struts?
- 24. quelles sont les options disponibles pour l'implémentation de rapports enrichis dans asp.net mvc?
- 25. UpdateAnimationExtender, propriété clé - Quelles propriétés sont disponibles pour moi?
- 26. Quelles sont les alternatives à AJAX Control Toolkits ValidationCallOutExtender
- 27. Quelles sont quelques alternatives ALM à TFS?
- 28. OOoBeans mort? - Quelles sont mes alternatives?
- 29. Apache Velocity: Quelles sont les variables disponibles dans les templates?
- 30. Quelles sont les alternatives à PersistentPerl ou SpeedyCGI?
Tout le monde a aimé cette solution, car il est plus simple de coder dans le temps limité dont nous disposons. –