begin process at 2008 07 06 15:52:10
1 205 627 membres
195 nouveaux aujourd'hui
14 119 membres club

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 : récupérer le handle d'une boite de dialogue [ Archives / Au secours ] (CeNedra83)

récupérer le handle d'une boite de dialogue le 17/12/2005 13:27:42

CeNedra83
je voudrais récupérer le handle de ma boite de dialogue mais je ne sais pas comment faire!!
merci !

Re : récupérer le handle d'une boite de dialogue le 17/12/2005 13:36:05

vecchio56
(Admin CS)
C'est le premier param de ton DlgProc

Re : récupérer le handle d'une boite de dialogue le 17/12/2005 14:12:47

CeNedra83
je ne trouve pas de DlgProc, déso mais je débute en MFC...

Re : récupérer le handle d'une boite de dialogue le 17/12/2005 14:15:21

vecchio56
(Admin CS)
A l'avenir, tu devrais préciser que tu programmes en MFC... Si tu es dans une méthode de la sous classe de CDialog, tu peux utiliser m_hwnd, ou la méthode GetSafeHwnd()

Re : récupérer le handle d'une boite de dialogue le 17/12/2005 14:20:32

BruNews
(Admin CS)
Si c'était codé via API je pense qu'il ne poserait pas la question.
Devrait y avoir un permis de wizzard comme il y a un permis de conduire, ça ne produit que des simili dev sans cela.

GetSafeHwnd() si tu es en MFC.

ciao...
[ Lien ]
BruNews, MVP VC++

Re : récupérer le handle d'une boite de dialogue le 18/12/2005 17:45:31

CeNedra83

avec ce programme, g une erreur comme ça
d:\Mes documents\INSA\5 EII\Projet C\interface_config\interface_config\interface_config.cpp(70): error C3861: 'GetSafeHwnd': identifier not found, even with argument-dependent lookup


// interface_config.cpp : Définit les comportements de classe pour l'application.

//

#include "stdafx.h"

#include "interface_config.h"

#include "interface_configDlg.h"

#include "afxwin.h"

#ifdef _DEBUG

#define new DEBUG_NEW

#endif

HWND win; //handle de l'edit box

HWND main_win; //handle de la boite de dialogue

// Cinterface_configApp

BEGIN_MESSAGE_MAP(Cinterface_configApp, CWinApp)

ON_COMMAND(ID_HELP, CWinApp::OnHelp)

END_MESSAGE_MAP()

// construction Cinterface_configApp

Cinterface_configApp::Cinterface_configApp()

{

// TODO : ajoutez ici du code de construction,

// Placez toutes les initialisations significatives dans InitInstance

}

// Seul et unique objet Cinterface_configApp

Cinterface_configApp theApp;

// initialisation Cinterface_configApp

BOOL Cinterface_configApp::InitInstance()

{

char buffer[30];

// InitCommonControls() est requis sur Windows XP si le manifeste de l'application

// spécifie l'utilisation de ComCtl32.dll version 6 ou ultérieure pour activer les

// styles visuels. Dans le cas contraire, la création de fenêtres échouera.

InitCommonControls();

CWinApp::InitInstance();

AfxEnableControlContainer();

// Initialisation standard

// Si vous n'utilisez pas ces fonctionnalités et que vous souhaitez réduire la taille

// de votre exécutable final, vous devez supprimer ci-dessous

// les routines d'initialisation spécifiques dont vous n'avez pas besoin.

// Changez la clé de Registre sous laquelle nos paramètres sont enregistrés.

// TODO : Modifiez cette chaîne avec des informations appropriées,

// telles que le nom de votre société ou organisation

SetRegistryKey(_T("Applications locales générées par AppWizard"));

Cinterface_configDlg dlg;

m_pMainWnd = &dlg;

INT_PTR nResponse = dlg.DoModal();

if (nResponse == IDOK)

{

// TODO : Placez ici le code définissant le comportement lorsque la boîte de dialogue est

// fermée avec OK

//WritePrivateProfileString("Visionneuse","Repertoire","ça marche !","D:\config.ini");

main_win = GetSafeHwnd();

win = GetDlgItem(main_win, IDC_NAME);

GetWindowText(win,buffer,30);

WritePrivateProfileString("Enfant","prenom",buffer,"D:\\Mes Documents\\config.ini");

}

else if (nResponse == IDCANCEL)

{ // TODO : Placez ici le code définissant le comportement lorsque la boîte de dialogue est

// fermée avec Annuler

}

// Lorsque la boîte de dialogue est fermée, retourner FALSE afin de quitter

// l'application, plutôt que de démarrer la pompe de messages de l'application.

return FALSE;

}


Re : récupérer le handle d'une boite de dialogue le 18/12/2005 21:05:48

BruNews
(Admin CS)
GetSafeHwnd() est membre de CWnd, tu aurais pu le voir illico en consultant MSDN.
On ne fait pas de MFC ni quoi que ce soit en C/C++ par tatonnement, faut te plonger dans un bouquin.

ciao...
[ Lien ]
BruNews, MVP VC++

Re : récupérer le handle d'une boite de dialogue le 18/12/2005 23:14:52

CeNedra83
en consultant MSDN , j'ai vu les include qu'il fallait mettre et ils y sont. et puis je n'ai pas le choix, c'est un projet.
excuse moi d'avoir du mal. merci quand meme.

Re : récupérer le handle d'une boite de dialogue le 18/12/2005 23:17:48

vecchio56
(Admin CS)
Il veut dire que tu ne peut pas utiliser GetSafeHwnd n'importe ou, il faut être dans une méthode de la classe, ou l'appliquer à un objet. Si tu connais pas encore le C++, faudra passer par la avant de commencer les MFC

Re : récupérer le handle d'une boite de dialogue le 18/12/2005 23:18:22

BruNews
(Admin CS)
Pas question d'include, il y a qu'on n'appelle pas un membre de classe hors d'une classe, ça n'a pas de sens.

ciao...
[ Lien ]
BruNews, MVP VC++


Classé sous : récupérer, boite, handle, dialogue

Participer à cet échange

Pub



Appels d'offres

Plugin Dialer outlook
Budget : 2 000€
Travail graphique- ill...
Budget : 1 000€
creation de marque et ...
Budget : 1 000€

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Téléchargements

Logiciels à télécharger sur le même thème :

Boutique

Boutique de goodies CodeS-SourceS