Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : CreateDialog est un échec! [ Archives / API ] (anthraxx)

jeudi 11 mars 2004 à 20:14:21 | CreateDialog est un échec!

anthraxx

j'ai un problème avec CreateDialog :
ma boite de dialogue n'a pas de titre et ne peut pas être déplacée, et ne cède pas le focus à des fenêtres filles (=>impossible de fermer des MessageBox par exemple)

pourant la ressource n'a aucun problème puisque je l'avais déjà utilisée avant dans un autre prog telle quelle et elle marchait.

quant au code, il est copié-collé de MSDN:
si quelqu'un sait quelle pourrait être la cause de ce problème...


dans WinMain:
HWND hDlg=CreateDialog(hInstance,(LPCTSTR)IDD_MAIN,NULL,WndProc);
BOOL bRet;
MSG msg;
while((bRet = GetMessage(&msg, NULL, 0, 0))!=0)
{
if(bRet == -1)return -1;
else if (!IsWindow(hDlg) || !IsDialogMessage(hDlg, &msg))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}

jeudi 11 mars 2004 à 20:33:27 | Re : CreateDialog est un échec!

vecchio56

Administrateur CodeS-SourceS
en général on ne fait pas des dialog de cette manière
c'est plus facile (a mon avis) d'utiliser DialogBox, et la pas besoin de mettre de boucle de messages (le pb c'est que certains messaes ne sont pas envoyés au dlgproc, alors qu'il le sont pour une modeless)

jeudi 11 mars 2004 à 20:37:27 | Re : CreateDialog est un échec!

anthraxx

ah oui, j'oubliais de dire justement que si j'utilise CreateDialog au lieu de DialogBox, c'est parceque j'avais essayé au début avec Dialogbox qui est effectivement plus facile, que j'avais eu le même problème, et j'avais essayé autre chose.

Donc non, utiliser DialogBox ne résoud pas le problème.

jeudi 11 mars 2004 à 20:42:55 | Re : CreateDialog est un échec!

vecchio56

Administrateur CodeS-SourceS
Si tu as Visual studio, crée un projet hello world win32 et tu verras comment ca marche, car il n'y a rien de sorcier

jeudi 11 mars 2004 à 20:49:04 | Re : CreateDialog est un échec!

anthraxx

mais j'utilise Visual Studio depuis des annés, on va pas m'apprendre à faire un "hello world" quant même !

J'en conclus que mon problème n'est pas très courant (d'ailleurs j'ai des dizaines d'autres programmes que j'ai fait, qui utilisent le même système pour afficher la boite de dialogue et qui marchent pourtant: la boite de dialogue se déplace très bien...)

remarque: c'est peut-être un bug de Visual Studio .NET ? sur ce même forum j'ai vu dans les annales un autre qui avait le même problème, qui avait VS.nET et a qui personne n'a su répondre non plus...

jeudi 11 mars 2004 à 21:58:21 | Re : CreateDialog est un échec!

BruNews

Administrateur CodeS-SourceS
Ohe ohe, suis de retour.
C'est regle le prob ou je te mets une demo minimale ?
Je te rassure, pas encore trouve de vrai bug code dans VS.NET.

ciao...
BruNews, Admin CS, MVP Visual C++

jeudi 11 mars 2004 à 22:16:49 | Re : CreateDialog est un échec!

BruNews

Administrateur CodeS-SourceS
Pour que le mystere s'estompe:
http://www.cppfrance.com/code.aspx?ID=21138

ciao...
BruNews, Admin CS, MVP Visual C++



Cette discussion est classé dans : problème, hdlg, msg, createdialog, bret


Répondre à ce message

Sujets en rapport avec ce message

problème CreateDialog et afficher icone [ par Suisse00 ] J'ai un petit problème avec CreateDialog, il y a aucun fenêtre qui s'ouvre (VC++ 6)#include #include "resource.h"HWND hDlg;LRESULT faire progresser....une progress bar !! [ par Xs ] c tout bete, mais je sais pas comment faire. ou plutot lui dire a quoi comparer sa progression par rapport au chargement de quelque chose.mon code : # objet non initialisé (API Win32) [ par Xs ] salut !voici mon code, d'abord :#include #include #include "resource.h"LRESULT CALLBACK DlgProc(HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam){cha positions [ par Xs ] salut ! je cherche et je trouve pas, ou alors je sais pas m'en servir, comment on recupere la position actuelle du fenetre(dialogbox).j'ai essayé des touches [ par Xs ] voila, j'ai essayé de tester des touches afin que, par exemple, lorsque l'on appuie sur Y, une message box apparaisse.j'ai recupérer ce code venat de erreur memoire [ par Xs ] alors voila, j'ai jamais vu ca.je lance mon programme. normal. puis je clique sur le bouton generer et là, pouf !un message d'erreur. alors, celui la, Problème avec GetMessage d'un processus parent [ par RV2931 ] Bonjour, j'ai un problème de communication, mais je suis informaticien, donc tout s'explique :), nan plus sérieusementDans le processus père, j'utilis Problème de séparation de chaîne de caractères... [ par KaTSuotlz ] Bonjour !Je suis en train de bosser sur un programme open source d'un jeu qui utilise eAthena comme serveur (serveur privé Ragnarok pour ceux qui conn problème pour récupérer une variable [ par arwenita ] Avec C++ Builder, je récupère une donnée et je veux l'afficher. Lorsque je le fais directement, ca marche :resultat->Lines->Text=cle1->Text.c_str();< Problème de resources [ par FloFlo91 ] Bonjour, J'ai un gros problème. J'ai fais une boite de dialogue sous VC8 avec l'éditeur de ressources integré.Lorsque je fais l'appel à la fonction hD


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Comparez les prix Nouvelle version


LG KP501

Entre 9€ et 159€


Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,281 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.