Code-Beispiel
"Richtige" Maskierung für Edit Controls
Lizenz: | Erster Autor: | Letzte Bearbeitung: |
k. A. | csde_rats | 17.10.2007 |
Jeder der schon einmal mit CreateWindow() ein Edit Control mit dem Flag ES_PASSWORD erstellt hat, wird recht schnell festgestellt haben, dass der Platzhalter ein rechteckiger Block ist.
Ich werde nun beschreiben, wie man zu dem schönen, runden Punkt kommt, der dann den eckigen Block ablöst.
So sieht's normalerweise aus
Da wollen wir hin
Also, wir haben unsere Window Procedure, dort fügen wir erstmal nur die eine Dimensionierung ein:
dim as HFONT hFont
(Diese Dimensionierung kann man auch am Anfang des WM_CREATE-Zweigs einfügen)
Jetzt navigieren wir zur Select...Case-Struktur, und fügen dort, möglichst am Ende (allerdings vor dem 'Return TRUE' :D), ein kurzes Snippet ein:
hFont = CreateFont(14, 0, 0, 0, FW_NORMAL, 0, _
0, 0, ANSI_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, _
DRAFT_QUALITY, DEFAULT_PITCH or FF_DONTCARE, "Tahoma")
SendMessage(hEdit, WM_SETFONT, Cast(WPARAM, hFont), 1) ' hEdit = HWND des Edit Controls
Mit dem ersten Parameter von CreateFont() müsst ihr ein bisschen experimentieren, um einen bestmöglichen Effekt zu erzielen.
Zusätzliche Informationen und Funktionen |
- Das Code-Beispiel wurde am 10.10.2007 von csde_rats angelegt.
- Die aktuellste Version wurde am 17.10.2007 von csde_rats gespeichert.
|
|