Comment faire avec l'Apiwin32 ?
Fermé
Flora Poussi
Messages postés
2
Date d'inscription
mercredi 10 novembre 2004
Statut
Membre
Dernière intervention
10 novembre 2004
-
10 nov. 2004 à 14:53
sergio - 11 nov. 2004 à 19:31
sergio - 11 nov. 2004 à 19:31
4 réponses
Flora Poussi
Messages postés
2
Date d'inscription
mercredi 10 novembre 2004
Statut
Membre
Dernière intervention
10 novembre 2004
10 nov. 2004 à 15:24
10 nov. 2004 à 15:24
Personne ne sait ? S'il vous plait ?
choubaka
Messages postés
39375
Date d'inscription
jeudi 4 avril 2002
Statut
Modérateur
Dernière intervention
14 avril 2024
2 100
10 nov. 2004 à 15:29
10 nov. 2004 à 15:29
Salut
qu'est ce que tu entends par "éditer" ?
Chouba,
Pochard d'assaut ..
qu'est ce que tu entends par "éditer" ?
Chouba,
Pochard d'assaut ..
blurk
Messages postés
486
Date d'inscription
vendredi 16 avril 2004
Statut
Membre
Dernière intervention
15 mars 2009
160
10 nov. 2004 à 21:31
10 nov. 2004 à 21:31
salut
Soit tu as un R.A.D (delphi, visual basic , c++ builder, windev)
et il est facile de générer les boutons avec la souris et les composants.
(avec visual c++ aussi mais c'est pas un R.A.D)
soit tu écris tout le code à la main et là il faut énormément de doc
et des exemples (microsoft developper network) et c'est très pénible pour un débutant.
bon courage
¤
Soit tu as un R.A.D (delphi, visual basic , c++ builder, windev)
et il est facile de générer les boutons avec la souris et les composants.
(avec visual c++ aussi mais c'est pas un R.A.D)
soit tu écris tout le code à la main et là il faut énormément de doc
et des exemples (microsoft developper network) et c'est très pénible pour un débutant.
bon courage
¤
Cela ne se fait pas en trois minutes.
Le plus simple est de lire le chapitre 11 du bouquin de CH Petzold chez Microsoft Press "programmer sous windows" pavé illisible mais où on peut facilement trouver des exemples "tout faits" et facilement aménageables à quelques besoins que ce soit.
Bouquin cher, certes, mais peut-être trouvable d'occase ou consultable en biblio d'info dans une université quelconque, il suffit de rentrer.
Exemple de création de boite de dialogue sous Win32 :
ici Appelée par un callback
BOOL CALLBACK ValMaxMinProc (HWND, UINT, WPARAM, LPARAM) ;
puis dans le "switch (message)"
au "case" concerné
DialogBox (hInstance, 101/*TEXT("IDD_DIALOG1")*/, hwnd, ValMaxMinProc); // le 101 est le num de la boite de diag dans resource.h
reste alors à définir la fonction qui génére la boite de dlg :
BOOL CALLBACK ValMaxMinProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
double MaxDlg=ResValMaxSauv;
double MinDlg=ResValMinSauv;
int iCtrlId;
char Text[50];
// int decimal, sign;
BOOL B=TRUE;
HWND hwndParent, hCtrl;
switch (message)
{
case WM_INITDIALOG :
for(iCtrlId =1000; iCtrlId<1002; iCtrlId++)
{
hCtrl = GetDlgItem(hDlg, iCtrlId);
if(B)
_gcvt( ResValMaxSauv, 8, Text );
else
_gcvt( ResValMinSauv, 8, Text );
SetDlgItemText(hDlg, iCtrlId, Text);
B=!B;
}
return TRUE ;
case WM_COMMAND :
switch (LOWORD (wParam))
{
case IDOK :
iCtrlId = 1000;
GetDlgItemText(hDlg, iCtrlId, Text, 20);
MaxDlg=atof(Text);
iCtrlId = 1001;
GetDlgItemText(hDlg, iCtrlId, Text, 20);
MinDlg=atof(Text);
if((MaxDlg<(1.00001*ResValMaxSauv))&&((1.00001*MinDlg)>ResValMinSauv)&&(MinDlg<=MaxDlg))
// if((MaxDlg<=ResValMaxSauv)&&(MinDlg>=ResValMinSauv)&&(MinDlg<=MaxDlg))
{
ResValMax = MaxDlg ;
ResValMin = MinDlg ;
hwndParent = GetParent (hDlg) ;
InvalidateRect (hwndParent, NULL, TRUE) ;
}
EndDialog (hDlg, TRUE) ;
return TRUE ;
case IDCANCEL :
EndDialog (hDlg, 0) ;
return TRUE ;
}
break ;
}
return FALSE ;
}
ne garde ce qui t'intéresse là dedans vire les fonctionnalités, en tous cas cela doit marcher cad créer une boite de dlg dans une appli win32
Le plus simple est de lire le chapitre 11 du bouquin de CH Petzold chez Microsoft Press "programmer sous windows" pavé illisible mais où on peut facilement trouver des exemples "tout faits" et facilement aménageables à quelques besoins que ce soit.
Bouquin cher, certes, mais peut-être trouvable d'occase ou consultable en biblio d'info dans une université quelconque, il suffit de rentrer.
Exemple de création de boite de dialogue sous Win32 :
ici Appelée par un callback
BOOL CALLBACK ValMaxMinProc (HWND, UINT, WPARAM, LPARAM) ;
puis dans le "switch (message)"
au "case" concerné
DialogBox (hInstance, 101/*TEXT("IDD_DIALOG1")*/, hwnd, ValMaxMinProc); // le 101 est le num de la boite de diag dans resource.h
reste alors à définir la fonction qui génére la boite de dlg :
BOOL CALLBACK ValMaxMinProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
double MaxDlg=ResValMaxSauv;
double MinDlg=ResValMinSauv;
int iCtrlId;
char Text[50];
// int decimal, sign;
BOOL B=TRUE;
HWND hwndParent, hCtrl;
switch (message)
{
case WM_INITDIALOG :
for(iCtrlId =1000; iCtrlId<1002; iCtrlId++)
{
hCtrl = GetDlgItem(hDlg, iCtrlId);
if(B)
_gcvt( ResValMaxSauv, 8, Text );
else
_gcvt( ResValMinSauv, 8, Text );
SetDlgItemText(hDlg, iCtrlId, Text);
B=!B;
}
return TRUE ;
case WM_COMMAND :
switch (LOWORD (wParam))
{
case IDOK :
iCtrlId = 1000;
GetDlgItemText(hDlg, iCtrlId, Text, 20);
MaxDlg=atof(Text);
iCtrlId = 1001;
GetDlgItemText(hDlg, iCtrlId, Text, 20);
MinDlg=atof(Text);
if((MaxDlg<(1.00001*ResValMaxSauv))&&((1.00001*MinDlg)>ResValMinSauv)&&(MinDlg<=MaxDlg))
// if((MaxDlg<=ResValMaxSauv)&&(MinDlg>=ResValMinSauv)&&(MinDlg<=MaxDlg))
{
ResValMax = MaxDlg ;
ResValMin = MinDlg ;
hwndParent = GetParent (hDlg) ;
InvalidateRect (hwndParent, NULL, TRUE) ;
}
EndDialog (hDlg, TRUE) ;
return TRUE ;
case IDCANCEL :
EndDialog (hDlg, 0) ;
return TRUE ;
}
break ;
}
return FALSE ;
}
ne garde ce qui t'intéresse là dedans vire les fonctionnalités, en tous cas cela doit marcher cad créer une boite de dlg dans une appli win32