CEdit Passwortfeld dynamisch setzen
-
Hallo!
Es liegt ein Passworteingabefeld vor. Unter diesem ist eine Checkbox worüber man wählen kann ob das Passwort angezeigt werden soll oder nicht. Flag: ES_PASSSWORD.
Text der Checkbox: Passwort verbergen. Ist per default aus.
Nun dachte ich ich könnte wie folgt vorgehen. Falls die Checkbox angewählt:::SetWindowLongA(GetDlgItem(IDC_PASSWORD)->m_hWnd, GWL_STYLE, GetDlgItem(IDC_PASSWORD)->GetStyle() | ES_PASSWORD)Falls nicht gewählt:
::SetWindowLongA(GetDlgItem(IDC_PASSWORD)->m_hWnd, GWL_STYLE, GetDlgItem(IDC_PASSWORD)->GetStyle() & ~ES_PASSWORD)Tja, klappt natürlich nicht. Mit SetPasswordChar('*') klappt es allerdings wird hier nicht dieser Kreis der Visual Styles verwendet, sondern des Sternchen.
Kennt jemand eine Möglichkeit ein CEdit dynamisch als "Passwortfeld" zu setzen inkl. des korrekten Stils?
-
Bestimmte Stile lassen sich nur beim Anlegen des Controls setzen.
Lege einfach ein neues Edit Control mit dem gewünschten Stil an und zerstöre das alte.
-
Oder mach 2 und verstecke die jeweils.

-
Martin Richter schrieb:
Bestimmte Stile lassen sich nur beim Anlegen des Controls setzen.
Hmm, immer dieses hin und her. Naja, wird bestimmt seine Gründe haben.
Ich habe mich entschieden das Textfeld nun immer neu zu erstellen. Danke.