Boites de dialogues active au meme moment? - C++ - Programmation
Marsh Posté le 24-06-2005 à 12:04:08
ReplyMarsh Posté le 24-06-2005 à 14:14:05
C'est ce que j'ai lu sur MSDN.
Seulement je n'arrive pas a savoir comment procéder pour en créer une différente (modeless).
Pourrais-tu m'aiguiller?
Marsh Posté le 24-06-2005 à 14:20:46
regardes du coté de ShowWindow si mes souvenirs sont bons
Marsh Posté le 25-06-2005 à 10:56:41
1. Tu déclares l'objet (sur le tas ou sur la pile à toi de voir) dialogue quelque part de manière que le scope soit toujours valide. Je te conseille comme de le mettre sur la pile en attribut de ton CWinApp
2. Tu appelles la méthode Create du dialogue (faut lui passer l'ID ou la chaîne indentifiant le template du dialogue)
3. Il faut peut être forcer l'affichage via un ShowWindow mais il me semble que ce n'est pas nécessaire.
4. Quand tu n'as plus besoin du dialogue tu le détruis via DestroyWindow. Il ne faut pas détruire directement l'objet sinon la fenêtre (structure maintenue par Windows) n'est pas libérée.
Bon je réponds de tête alors il manque peut être quelques explications
Marsh Posté le 27-06-2005 à 09:49:27
Merci slash33, jvais tout de suite mettre en oeuvre tes explications
Marsh Posté le 27-06-2005 à 09:53:33
J'allais oublier: il faut utiliser le constructeur par défaut (sans paramètre) pas celui où tu passe l'ID.
Bon un bout de code vaut mieux qu'un long discours donc...
Code :
|
Attention: dès que myDialog est détruit le dialogue l'est aussi (partiellement) donc attention à la portée de la variable.
Enfin, tout est expliqué dans la section "Dialog Boxes" de la MSDN. Cherche un peu.
Marsh Posté le 27-06-2005 à 18:41:38
Ben je te trouves un peu long pour appliquer quelque chose d'aussi rapide
Marsh Posté le 28-06-2005 à 10:29:45
oui! c pour ca que je te remercier! c nikel comme pour le code du passage du CString au char!
Marsh Posté le 28-06-2005 à 10:45:03
Au fait pour le code de passage du CString au char, fais attention y'a une particularité sur le GetBuffer(). Regarde la description de la méthode dans la MSDN tu comprendras.
Marsh Posté le 24-06-2005 à 10:04:28
Bonjour, je fais actuellement un player audio(en MFC).
Je souhaite afficher une playlist.Ma playlist fonctionne tout va bien.Mais pour rendre l'interface plus interactive,je voudrai faire apparaitre la playlist.
Pour cela j'ai crée une autre boite de dialogue, seulement qd celle-ci est active, je ne peux plus toucher la premiere interface avec les boutons play pause etc, elle est figée en arriere plan.
QQ'un pourrait-il me dire comment faire pour que les deux boites de dialog reste active en meme temps?
Merci