Buchempfehlung
Windows-Programmierung. Das Entwicklerhandbuch zur WIN32-API
Windows-Programmierung. Das Entwicklerhandbuch zur WIN32-API
"Der" Petzold, das über 1000 Seiten starke Standardwerk zum Win32-API - besonders nützlich u. a. bei der GUI-Programmierung in FreeBASIC! [Mehr Infos...]
FreeBASIC-Chat
Es sind Benutzer im FreeBASIC-Chat online.
(Stand:  )
FreeBASIC bei Twitter
Twitter FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!

Code-Beispiel

Code-Beispiele » Windows GUI

"Richtige" Maskierung für Edit Controls

Lizenz:Erster Autor:Letzte Bearbeitung:
k. A.Mitgliedcsde_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.

Eckiges Passwortzeichen
So sieht's normalerweise aus

Rundes Passwortzeichen
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 BefehlsreferenzeintragSelect...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 Externer Link!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 Mitgliedcsde_rats angelegt.
  • Die aktuellste Version wurde am 17.10.2007 von Mitgliedcsde_rats gespeichert.
  Bearbeiten Bearbeiten  

  Versionen Versionen