Originariamente inviato da MItaly
usa Unicode (imposta il progetto per l'uso di Unicode e non usare char ma wchar_t, non string ma wstring);
per impostare il progetto intedevi definire:
codice:
#if !defined( UNICODE )
#define UNICODE
#endif
ho fatto alcune prove in Unicode senza però aver applicato la define:
codice:
wchar_t *txt;
wcscpy(txt,(const wchar_t*)"Titolo test: "); //necessario cast
SetWindowText(hwnd,(LPCTSTR)txt);
mentre utilizzare la macro TEXT, che però non riesco ad includere winnt.h (ho questo messaggio #include expects "FILENAME" or <FILENAME>) eviterebbe il cast const wchar_t* ???
codice:
wcscpy(txt,(TEXT)"Titolo test: ");
l'equivalente di lstrcat(...) è:
codice:
wcscat(txt,(const wchar_t*)" unicode titole");
wcsncat(txt,(const wchar_t*)" unicode title",(wcslen((const wchar_t*)" unicode title")+1));
ma entrambi non aggiungono il testo
mentre provando anche wstring:
codice:
wstring tmp;
tmp=(const wchar_t*)"nuovo titolo test"; //necessario cast
wchar_t *x; x=(wchar_t *)tmp.c_str(); //non avrei altro modo x convertire e castare
SetWindowText(hwnd,(LPCTSTR)x);
in queste prove c'è qualcosa di errato o di migliorabile??
mentre per la define devo ancora approfondire, suggerimenti??