Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C: WM_SETTEXT tuottaa kiinalaista tekstiä

tneva82 [30.07.2008 13:59:32]

#

if(setAsServer(hWnd)) {
	char *text="created game succesfully\0";
	SendMessage(buttons[0] , WM_SETTEXT, NULL, (LPARAM)text);
}

Tuon pitäisi muuttaa nappulan teksti(vain nähdäkseni että kaikki toimii ja ohjelma on valmis vastaanottamaan ja lähettämään tietoa). Jostain syystä napin teksiksi tulee kiinalaisia merkkejä. Ei hajuakaan mitä sanoo. Yhdessä välissä tuli myös jotain "state initialised ==" blaa blaa blaa niiden jälkeen.

Oletan että kyseessä on pointteri virhe. En keksi mitään muutakaan järkevää syytä mutta toisaalta enpä keksi mikä tuossa voi mennä väärinkään. Ensin yritin laittaa suoraan ilman erillistä muuttujaa mutta sekään ei toiminut joten päätin kokeilla muuttujan kautta.

Metabolix [30.07.2008 14:22:07]

#

Muuttujasi pitäisi olla osoitin vakioon, siis const char *-tyyppinen. Lisäksi voi auttaa, jos määrittelet tekstin globaalisti. Jos tämä ei riitä, selvitä, kuuluisiko tekstin ehkä olla UTF-16:tta, Windowsin wchar_t-merkkejä (L"teksti").

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta