2009-02-11 6 views
0

J'ai une application wx dont l'interface utilisateur est définie dans les fichiers XRC. Chaque formulaire est dans son propre fichier xrc. Un panneau est commun à plusieurs des formulaires. Y at-il un moyen d'avoir des objets définis dans un fichier qui sont inclus et référencés dans un autre?Y at-il des éléments d'un fichier xrc dans un autre fichier xrc?

Je sais qu'il existe un mécanisme object_ref, mais je ne vois pas comment cela peut faire référence à des fichiers xrc externes. Je voudrais quelque chose qui fonctionne de la même manière que vous pouvez définir des éléments xsd dans un fichier et les inclure et les référencer dans un autre fichier xsd.

Répondre

1

XRC ne dispose pas d'un mécanisme d'inclusion que je connais, mais vous pouvez avoir des widgets personnalisés. Implémentez donc votre panneau commun comme son propre XRC, et définissez-le comme quelque chose que vous pouvez référencer par nom de classe dans d'autres fichiers xrc.

Vous devez créer un XmlResourceHandler qui gère le panneau personnalisé dans XRC et instancie votre classe Panel. L'endroit à regarder est demo/wxXmlResourceHandler.py

Vous pouvez même étendre XRCed pour reconnaître votre propre ressource, et l'insérer dans de futures boîtes de dialogue avec facilité.

Questions connexes