eingabezeile einfügen
-
hallo,
ich möchte in einem erschaffenem Fenster eine Zeile mit Tastatur-Eingabefunktion
einfügen, wie der in Windows genutzte Rechner (um es später mit
Rechenbuttons und -funktionen mit Rückgabewert auf die Zeile zu ergänzen).Wie erzeugt man eine solche Zeile ?
-
Da nimmst du eine stan d a r t window klasse "edit", (aus der control-library)
siehste hier:
http://msdn.microsoft.com/en-us/library/bb775458(VS.85).aspxda Beispiele gerne gefragt sind:
LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { static HWND hEdit; .... switch(message) { case WM_CREATE: { hEdit=CreateWindow ( "edit", /* Classname */ "test_messages", /* Title Text */ WS_CHILD|WS_VISIBLE|ES_AUTOHSCROLL |ES_LEFT, /* default window */ 10, /* Windows decides the position */ 10, /* where the window ends up on the screen */ 40, /* The programs width */ 15, /* and height in pixels */ hwnd, /* The window is a child-window to application */ NULL, /* No menu */ hGlobalInst, /* Program Instance handler */ NULL /* No Window Creation data */ ); ShowWindow(hEdit,SW_SHOWNORMAL); ... return 0; } case WM_COMMAND: ..... usw.Da du evtl. auch den text auslesen und einen einfügen willst, hier noch die proceduren
char *buffer = NULL; int length=GetWindowTextLength(TextInput.getHandle()); buffer =new char[length+1]; GetWindowText(TextInput.getHandle(),buffer,length+1); buffer[length]='\0'; string temp="\r\n you had written:\r\n"; temp+=buffer; SendMessage(TextInput.getHandle(),WM_SETTEXT,(WPARAM)1,(LPARAM)temp.c_str());gruuß
-
zeusosc schrieb:
stan d a r t
willsu du die rächtsschraipunk räfomian?

-
ne wenn ich das wort ausschreibe dann sieht das so aus: standart , genauso wie vor r a u s: vorraus
greetz
-
wenn man es richtig ausschreibt, dann sieht das so aus:
Standard, im Voraus und nicht so:
standart im vorraus
bitte sehr, im pfohrrauhs

-
hehe, ok,
*mirselbstinsbeingeschossen*
-
kein problem, hier wird dich gehift, bruder!