Passage d'une variable par des dialogbox

0/5 (6 avis)

Vue 6 067 fois - Téléchargée 510 fois

Description

Je suis novice en C++, j'ai appris récemment à faire des fenêtres et DialogBox, et comme j'ai mis a peu près 3 ou 4 semaines pour un peu comprendre, alors j'ai pensé que ce petit programme allait aider des novices comme moi ^_^ à comprendre plus vite.
C'est juste pour voir l'utilisation des DialogBox.

Conclusion :


Pas de BUG connu, réalisé avec Visual C++.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
BruNews Messages postés 21041 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 19
6 déc. 2004 à 20:37
y4ri > faut faire un projet win32 APP GUI et non console.
y4r1 Messages postés 5 Date d'inscription jeudi 4 novembre 2004 Statut Membre Dernière intervention 30 avril 2009
6 déc. 2004 à 20:30
Svp aide moi chui un debutant , quand je compile pa de probleme mais quand j'execute , build , il me mé se message d'erreur
--------------------Configuration: main - Win32 Debug--------------------
Linking...
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/main.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.

main.exe - 2 error(s), 0 warning(s)


quesqu'il fau faire aidé moi svp
BruNews Messages postés 21041 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 19
19 juil. 2004 à 19:14
multiple de 4 est pour un alignement correct des donnees, 'normalement' le compilo devrait corriger cela lui meme mais il vaut mieux prendre l'habitude de faire bien par soi meme. Un mauvais alignement entraine d'enormes pertes de performances.
Ceci est du a l'architecture des x86, si on veut lire/ecrire 1 octet, la donnee visee peut se trouver ou l'on veut, si on accede a 2 octets alignement sur multiple de 2, si 4 aligne sur multi de 4.
Cyberboy2054 Messages postés 173 Date d'inscription jeudi 20 décembre 2001 Statut Membre Dernière intervention 22 août 2008
19 juil. 2004 à 19:00
Juste par curiosité, pour les buffers dont la taille est un multiple de 4, je suppose, que l' on y gagne niveau perfs, mais il se passe quoi au juste (pour que ca aille plus vite ) ?
BruNews Messages postés 21041 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 19
19 juil. 2004 à 18:16
Salut,

il y a aussi les sources des bouquins indiques plus haut:
http://brunews.free.fr/brunews/download/CP5Sources.zip
http://brunews.free.fr/brunews/download/JR4Sources.zip

Commence par Petzold (CP5) et toujours MSDN en reference ultime.

inutile de decomposer wParam si tu ne traites que des clics buttons, la partie haute(HIWORD) sera toujours 0.
Evite declarations de variables dans la proc de fenetre, celle ci traitera ses messages beaucoup plus vite.
char buff[501]; NON toujours multiple de 4 sur processeur 32 bits, besoin de 501 sera donc 504.
Dans une dialog, traite WM_INITDIALOG et retourne 1 qui sert a placer correctement le focus, quasi tous les autres cas doivent retourner 0.
Verifier si texte a ete entre, nbr caracteres en retour de GetDlgItemText.

char buff[504];

LRESULT CALLBACK MainProc(HWND Dlg, UINT message, WPARAM wParam, LPARAM lParam)
{
switch(message) {
case WM_INITDIALOG:
// autre code d'initialisation ici
return 1;
case WM_COMMAND:
switch(wParam) {
case IDOK: //Clique sur le bouton OK de la boîte de dialogue
//Boîte de message qui affiche le contenu de buff
if(GetDlgItemText(Dlg, IDC_ELEMENT1, buff, 500))
MessageBox(Dlg, buff, "Contenu de ELEMENT1", MB_OK);
return 0;
case IDCANCEL:
EndDialog(Dlg, 0);
}
}
return 0;
}

Bonne continuation.
Afficher les 6 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.