API Windows - Template dialog

banane_rose Messages postés 302 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 22 avril 2006 - 4 mars 2006 à 15:57
cs_Joky Messages postés 1787 Date d'inscription lundi 22 novembre 2004 Statut Membre Dernière intervention 31 janvier 2009 - 13 mars 2006 à 13:29
bonjour,
voilà j'ai fait une template d'une dialog avec un logiciel (ce n'est qu'un test)

#define ABOUTBOX 1000
#define IDOK 1001
#define IDCANCEL 1002
ABOUTBOX DIALOGEX 6,6,109,33
CAPTION "IDD_DLG"
FONT 8,"MS Sans Serif"
STYLE 0x10C70080
EXSTYLE 0x00000001
BEGIN
CONTROL "OK",IDOK,"Button",0x50010000,4,3,60,17,0x00000000
CONTROL "Cancel",IDCANCEL,"Button",0x50010000,42,11,64,19,0x00000000
END

comment je peux l'utiliser pour afficher cette dalog ?

<hr size="2" width="100%">Dorian / 14 ans / sous Dev-C++

24 réponses

cs_Joky Messages postés 1787 Date d'inscription lundi 22 novembre 2004 Statut Membre Dernière intervention 31 janvier 2009 2
4 mars 2006 à 16:16
CreateDialog

DialogBoxParam



Y'en a plein :o
if(!Meilleur("Joky")) return ERREUR;<
0
julienbj Messages postés 452 Date d'inscription jeudi 4 décembre 2003 Statut Membre Dernière intervention 19 décembre 2008 15
4 mars 2006 à 18:37
Et en plus d'y avoir plein de fonctions qui permettent de le faire, il y a moult exemples sur le site.

Quasiment tous les codes avec API Windows utilise des boites de
dialogue (sur ce site pour afficher des fenetres), regardes-en un ou
deux, tu verras comment faire.

Il n'y a pas plus simple.

Vive le C
Tchao
[mailto:julienbj@hotmail.com Savon]
0
racpp Messages postés 1909 Date d'inscription vendredi 18 juin 2004 Statut Modérateur Dernière intervention 14 novembre 2014 17
5 mars 2006 à 02:13
Salut,

Ce que tu as écrit doit figurer dans un ficher script de ressources. Il
a pour extension .rc. Il doit être inclus dans le projet pour pouvoir
l'utiliser.

Tu peux aussi créer un template de dialogue directement en mémoire comme dans mon code source:

http://www.cppfrance.com/codes/APPLICATION-BASEE-BOITE-DIALOGUE-SANS-RESSOURCES_26264.aspx
0
banane_rose Messages postés 302 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 22 avril 2006
5 mars 2006 à 15:56
merci pour vos réponses j'en ferai bon usage ^^

<hr size="2" width="100%">Dorian / 14 ans / sous Dev-C++
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
banane_rose Messages postés 302 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 22 avril 2006
9 mars 2006 à 15:10
dites vous pouvre m'aider je trouve pas de source sur ce site qui n'utilise qu'une dialog seul...

<hr size="2" width="100%">Dorian / 14 ans / sous Dev-C++
0
cs_Joky Messages postés 1787 Date d'inscription lundi 22 novembre 2004 Statut Membre Dernière intervention 31 janvier 2009 2
9 mars 2006 à 15:29
DialogBox(hInstance, MAKEINTRESOURCE(IDD_DIALOG), hParent, (DLGPROC)DialogProc);



où hInstance est l'instance de ton prog, IDD_DIALOG est l'ID de ta
dialogue, hParent est la fenêtre parent et DialogProc est de la forme
LRESULT CALLBACK DialogProc(HWND, UINT, WPARAM, LPARAM);

if(!Meilleur("Joky")) return ERREUR;<
0
banane_rose Messages postés 302 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 22 avril 2006
9 mars 2006 à 15:40
racpp, j'avais pas vu ton code ^^" désolé pour le double (triple) post
je regarde ça

<hr size="2" width="100%">Dorian / 14 ans / sous Dev-C++
0
banane_rose Messages postés 302 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 22 avril 2006
10 mars 2006 à 19:10
bon alors j'ai essayé de me concocter un petit quelque chose , sachant que dans le programme je ne veux pas de fenêtre principale mais que la dialog qui s'affiche.
code cpp
code rc
bon alors quand je compile il me dit :
expected constructor, destructor, or type conversion before '(' token
expected `,' or `;' before '(' token

<hr size="2" width="100%">Dorian / 14 ans / sous Dev-C++
0
julienbj Messages postés 452 Date d'inscription jeudi 4 décembre 2003 Statut Membre Dernière intervention 19 décembre 2008 15
10 mars 2006 à 20:27
Faut que tu mettes DialogBox(hInstance,MAKEINTRESOURCE(IDD_DLG1),NULL,(DLGPROC)DialogProc); dans un winmain. Risque pas de marcher autrement. --> Ca devrait corriger les deux erreurs.

Surement des problemes de définitions d'identifiant aussi. Je n'ai pas vu d'include de fichier h correspondant à la ressource.
Ces problemes seront notifiés une fois que tu auras corrigé la premiere erreur, donc pas de panique si tu as un nombre enorme d'erreur ensuite.

Vive le C
Tchao
[mailto:julienbj@hotmail.com Savon]
0
banane_rose Messages postés 302 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 22 avril 2006
10 mars 2006 à 21:04
winmain?? expliquez moi je connais pas en détails tout ça moi...

<hr size="2" width="100%">Dorian / 14 ans / sous Dev-C++
0
julienbj Messages postés 452 Date d'inscription jeudi 4 décembre 2003 Statut Membre Dernière intervention 19 décembre 2008 15
10 mars 2006 à 21:07
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
{
return DialogBox(hInstance,MAKEINTRESOURCE(IDD_DLG1),NULL,(DLGPROC)DialogProc);
}

Vive le C
Tchao
[mailto:julienbj@hotmail.com Savon]
0
banane_rose Messages postés 302 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 22 avril 2006
10 mars 2006 à 21:23
bon maintenant je retombe devant la putain d'erreur que je comprend pas puisque y'a absolument aucune raison qu'il y ai une erreur de synthaxe avec mon template puisque j'ai généré ce code à partir d'un logiciel exprès pour ça !!

IDD_DLG1 DIALOGEX 6,6,161,20
CAPTION "Dialog Test"
FONT 8,"MS Sans Serif"
STYLE 0x10CF0000
EXSTYLE 0x00000000
BEGIN
CONTROL "OK",IDC_BTN1,"Button",0x50010000,4,3,70,13,0x00000000 // << synthax error !
CONTROL "Annuler",IDC_BTN2,"Button",0x50010000,86,3,66,13,0x00000000
END

<hr size="2" width="100%">Dorian / 14 ans / sous Dev-C++
0
julienbj Messages postés 452 Date d'inscription jeudi 4 décembre 2003 Statut Membre Dernière intervention 19 décembre 2008 15
10 mars 2006 à 23:22
A quoi correspond ce 0x000000 à la fin de la ligne.

En regardant dans mes fichiers de ressource (fait avec l'editeur de
resource de VC6), je n'ai jamais ce dernier parametre, le reste semble
bon.

Vive le C
Tchao
[mailto:julienbj@hotmail.com Savon]
0
banane_rose Messages postés 302 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 22 avril 2006
11 mars 2006 à 14:30
ouais c'est bizarre et si je retire le dernier argument ça marche toujours pas
sinon j'ai généré le code d'une dialog vide
(c a d :
IDD_DLG1 DIALOGEX 6,6,194,104
CAPTION "IDD_DLG"
FONT 8,"MS Sans Serif"
STYLE 0x10CF0000
EXSTYLE 0x00000000
BEGIN
END

)
et là ça compile mais le programme se ferme dès que je le lance

dites vous pouvez pas faire un programme avec un dialog et mettre le code ici ça m'aiderai
merci

<hr size="2" width="100%">Dorian / 14 ans / sous Dev-C++
0
banane_rose Messages postés 302 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 22 avril 2006
11 mars 2006 à 14:32
ouais c'est bizarre et si je retire le dernier argument ça marche toujours pas
sinon j'ai généré le code d'une dialog vide
(c a d :
IDD_DLG1 DIALOGEX 6,6,194,104
CAPTION "IDD_DLG"
FONT 8,"MS Sans Serif"
STYLE 0x10CF0000
EXSTYLE 0x00000000
BEGIN
END

)
et là ça compile mais le programme se ferme dès que je le lance

dites vous pouvez pas faire un programme avec un dialog et mettre le code ici ça m'aiderai
merci

<hr size="2" width="100%">Dorian / 14 ans / sous Dev-C++
0
banane_rose Messages postés 302 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 22 avril 2006
11 mars 2006 à 14:33
mince désolé double post ma connection ramais

<hr size="2" width="100%">Dorian / 14 ans / sous Dev-C++
0
banane_rose Messages postés 302 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 22 avril 2006
12 mars 2006 à 14:12
allez s'il vous plait pourquoi vous m'aidez plus?

<hr size="2" width="100%">Dorian / 14 ans / sous Dev-C++
0
julienbj Messages postés 452 Date d'inscription jeudi 4 décembre 2003 Statut Membre Dernière intervention 19 décembre 2008 15
12 mars 2006 à 19:03
Pose ton code quelque part, qu'on puisse regarder.
Tu sais, on n'est pas forcément dispo tout le temps non plus.

Vive le C
Tchao
[mailto:julienbj@hotmail.com Savon]
0
banane_rose Messages postés 302 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 22 avril 2006
12 mars 2006 à 19:32
j'ai dit :
dites vous pouvez pas faire un programme avec un dialog et mettre le code ici ça m'aiderai
merci

<hr size="2" width="100%">Dorian / 14 ans / sous Dev-C++
0
julienbj Messages postés 452 Date d'inscription jeudi 4 décembre 2003 Statut Membre Dernière intervention 19 décembre 2008 15
13 mars 2006 à 04:26
main.c:

#include <windows.h>
#include "resource.h"


LRESULT CALLBACK MainProc(HWND Dlg, UINT message, WPARAM wParam, LPARAM lParam)
{


switch(message)
{
case WM_COMMAND:
switch(LOWORD(wParam))
{
case IDCANCEL:
case IDOK:
EndDialog(Dlg, 1);
return 1;


default:
return 0;
}
default:
return 0;
}
}



int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
DialogBox(hInstance, (LPCTSTR) IDD_DIALOG1, NULL, (DLGPROC) MainProc);
return 0;
}

//resource.h:
//{{NO_DEPENDENCIES}}
// Microsoft Developer Studio generated include file.
// Used by res.rc
//
#define IDD_DIALOG1 101


// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 102
#define _APS_NEXT_COMMAND_VALUE 40001
#define _APS_NEXT_CONTROL_VALUE 1000
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif

//res.rc:
//Microsoft Developer Studio generated resource script.
//
#include "resource.h"


#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "afxres.h"


/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS


/////////////////////////////////////////////////////////////////////////////
// French (France) resources


#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_FRA)
#ifdef _WIN32
LANGUAGE LANG_FRENCH, SUBLANG_FRENCH
#pragma code_page(1252)
#endif //_WIN32


#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//


1 TEXTINCLUDE DISCARDABLE
BEGIN
"resource.h\0"
END


2 TEXTINCLUDE DISCARDABLE
BEGIN
"#include ""afxres.h""\r\n"
"\0"
END


3 TEXTINCLUDE DISCARDABLE
BEGIN
"\r\n"
"\0"
END


#endif // APSTUDIO_INVOKED



/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//


IDD_DIALOG1 DIALOG DISCARDABLE 0, 0, 186, 90
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Dialog"
FONT 8, "MS Sans Serif"
BEGIN
DEFPUSHBUTTON "OK",IDOK,129,7,50,14
PUSHBUTTON "Cancel",IDCANCEL,129,24,50,14
END



/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
//


#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO DISCARDABLE
BEGIN
IDD_DIALOG1, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 179
TOPMARGIN, 7
BOTTOMMARGIN, 83
END
END
#endif // APSTUDIO_INVOKED


#endif // French (France) resources
/////////////////////////////////////////////////////////////////////////////


#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//



/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED



Vive le C
Tchao
[mailto:julienbj@hotmail.com Savon]
0
Rejoignez-nous