Beperken gebruiker-ingevoerde tekst

De standaardlimiet aan de hoeveelheid tekst die een gebruiker in een edit-besturingselement invoeren kan is 32 KB. Een toepassing kan de hoeveelheid tekst die de gebruiker invoeren kan in het besturingselement een EM_SETLIMITTEXT -mailbericht wijzigen. Dit bericht wordt een harde limiet ingesteld op het aantal bytes dat de gebruiker kan invoeren in een besturingselement bewerken, maar is van invloed op tekst die al in het besturingselement wanneer het bericht werd verzonden noch tekst door de functie SetDlgItemText of de WM_SETTEXT -bericht naar het besturingselement gekopieerd. Bijvoorbeeld, dat de toepassing de functie SetDlgItemText gebruikt om 500 bytes in een edit-besturingselement en de gebruiker ook 500 bytes (1000 bytes totaal voert). Als de toepassing wordt vervolgens een EM_SETLIMITTEXT bericht beperken gebruiker-ingevoerde tekst tot 300 bytes verzendt, er blijven 1000 bytes al in het besturingselement voor bewerking, en de gebruiker meer tekst niet toevoegen. Aan de andere kant, als de toepassing een EM_SETLIMITTEXT bericht beperken gebruiker-ingevoerde tekst tot 1300 bytes verzendt, de 1000 bytes blijven, maar de gebruiker kan toevoegen 300 meer bytes.

Wanneer de gebruiker de tekenlimiet van een besturingselement bereikt, verzendt het systeem de toepassing een WM_COMMAND -bericht met een melding van EN_MAXTEXT . Deze melding betekent niet dat geheugen is uitgeput, maar die de limiet voor de gebruiker ingevoerde tekst is bereikt; de gebruiker kan niet meer tekst invoeren. Het wijzigen van deze limiet, een toepassing moet het besturingselement een nieuwe EM_SETLIMITTEXT bericht sturen met een hogere limiet.

Stel als voorbeeld van het gebruik van EM_SETLIMITTEXT en EN_MAXTEXT, dat de toepassing de gebruiker niet meer dan vier tekens in een edit-besturingselement moet beperken. De toepassing zou EM_SETLIMITTEXT een limiet van vier tekens opgeven. Als de gebruiker heeft geprobeerd een vijfde teken, zou het systeem een signaal EN_MAXTEXT kennisgeving voor de toepassing.

Index