MessageBox
-
wchar_t wcBuf[100]; wsprintf(wcBuf, L"%i", iIrgendwas); MessageBoxW(0, wcBuf, L"Kultig ;)", MB_OK);
[EDIT]
Oder du nimmst _stprintf, dann läuft das Teil auch unter Win9x/ME ;), wenn du nicht #define UNICODE am Anfang deines Codes hinschreibst.
[/EDIT]cya
[ Dieser Beitrag wurde am 02.03.2003 um 18:23 Uhr von MagiC Creator editiert. ]
-
mit _stprintf statt wsprintf bekomm ich ne fehlermeldeung:
*error C2664: 'sprintf' : Konvertierung des Parameters 1 von 'unsigned short [100]' in 'char ' nicht moeglich
Die Typen, auf die verwiesen wird, sind nicht verwandt; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat
-
Da musst du dann um jeden String das TEXT-Makro rummachen, also z.B. TEXT("Test-String").
cya
-
also soll das so aussehen?
wchar_t wcBuf[100]; _stprintf(wcBuf, TEXT(L"%i"), iIrgendwas); MessageBoxW(0, wcBuf, TEXT(L"Kultig ;"), MB_OK);
die fehlermeldung kommt trotzdem noch...
-
warum nicht sprintf:
int iIrgendwas = 56; char toprint[256]; sprintf(toprint, "%d\0", iIrgendwas); MessageBox(NULL, toprint, "Die Zahl 56", MB_ICONINFORMATION); // MFC: MessageBox(toprint);
Ich hab grad kein Compiler zur Hand, also weiß ich nicht, ob der code fehlerlos ist.
[ Dieser Beitrag wurde am 02.03.2003 um 19:37 Uhr von pAngel editiert. ]
-
Weil das nur mit char funktioniert.
Die allgemeine Variante ist diese:
TCHAR pBuf[100]; wsprintf(pBuf, TEXT("%i"), iIrgendwas); MessageBox(NULL, pBuf, TEXT("iIrgendwas"), MB_OK);
-
danke, ich habs jetzt hingekriegt
wie würd das ganze eigentlich mit TextOut aussehen?
-
Laut MSDN müsste das wohl so aussehen:
TCHAR pBuf[100]; wsprintf(pBuf, TEXT("%i"), iIrgendwas); TextOut(hdc,0,0,pBuf, ARRAYSIZE(pBuf));
Die zwei 0'en sind die x und y Koordinate! Warum schaust du sowas eigentlich nicht selbst nach
-
unter was für stichwörtern soll ich sowas denn finden?
aber egal, neues problem:
wenn ich das genze jetzt in einem editfenster anzeigen will, bekomm ich nur noch zeichenmüll.mein Editfenster sieht so aus:
hEdit = CreateWindowEx(WS_EX_CLIENTEDGE, "edit", pBuf, WS_CHILD | WS_VISIBLE | ES_MULTILINE | ES_AUTOHSCROLL | ES_READONLY | ES_NUMBER, 0, 0, 100, 100, hWnd, NULL, ((LPCREATESTRUCT) lParam) -> hInstance, NULL); SendMessage(hEdit, WM_SETFONT,(WPARAM)GetStockObject(DEFAULT_GUI_FONT),0);
es erscheint aber nur noch sowas im editfenster: "ììììì"
-
zu 1.) Einfach in der MSDN-Library nach TextOut suchen
zu 2.) Versuchst mal mit SetDlgItemInt