roby78
31-01-2007, 15:47
ciao a tutti, sto facendo un piccolo programma in VC++ ma ho un problema con una variabile in una
listbox, vi posto parte del codice per essere + chiari:
char buf[256]="";
case WM_COMMAND:
switch(LOWORD(wParam))
{
case IDOK:
{
GetDlgItemText(hWnd, IDC_EDIT1,buf,256);
persona.nome=(buf);
}
EndDialog(hWnd, IDOK);
break;
case IDCANCEL:
EndDialog(hWnd, IDCANCEL);
break;
}
praticamente quando nel edit control scrivo una stringa e clicco su ok, la variabile viene memorizzata
nella stringa buf e la stampa correttamente nella listbox, ma se invece di cliccare su ok avessi
scritto la stringa e premuto enter, nella listbox mi sarrebbero apparsi valori strani, come se non
leggesse la stringa ma un valore dato dall'invio.
non so se posso essere stato chiaro in un testo cosi breve, spero che qualcuno sappia come risolvere,
se avete bisogno di + dettagli non esitate a chiederli.
ciao e grazie infinite a tutti.
listbox, vi posto parte del codice per essere + chiari:
char buf[256]="";
case WM_COMMAND:
switch(LOWORD(wParam))
{
case IDOK:
{
GetDlgItemText(hWnd, IDC_EDIT1,buf,256);
persona.nome=(buf);
}
EndDialog(hWnd, IDOK);
break;
case IDCANCEL:
EndDialog(hWnd, IDCANCEL);
break;
}
praticamente quando nel edit control scrivo una stringa e clicco su ok, la variabile viene memorizzata
nella stringa buf e la stampa correttamente nella listbox, ma se invece di cliccare su ok avessi
scritto la stringa e premuto enter, nella listbox mi sarrebbero apparsi valori strani, come se non
leggesse la stringa ma un valore dato dall'invio.
non so se posso essere stato chiaro in un testo cosi breve, spero che qualcuno sappia come risolvere,
se avete bisogno di + dettagli non esitate a chiederli.
ciao e grazie infinite a tutti.