Laden...

Textbox beschreibbaren bereich einschränken

Erstellt von dRei vor 14 Jahren Letzter Beitrag vor 14 Jahren 1.560 Views
D
dRei Themenstarter:in
23 Beiträge seit 2009
vor 14 Jahren
Textbox beschreibbaren bereich einschränken

Hallo zusammen,

ich habe mir ein eigenes Control abgeleitet von einer TextBox erstellt.
Es handelt sich um ein "Quickfinder" control. Nun wird wenn ein Text eingegeben wird, ein Button am ende der Textbox eingebunden, mit dem man den eingegebenen Text wieder löschen kann. Schreibt man nun einen längeren Text in die Textbox verschwindet ein teil des Textes hinter dem Button. Dies wollte ich allerdings vermeiden. Weiß jemand, wie ich den beschreibbaren Bereich eingränzen kann?

Gruß,
Michael

//Edit::
Vielleicht noch als kleine Bemerkung:
Es geht nicht darum, wann gescrollt werden soll, das errechne ich schon korrekt anhand der Größe. Es geht mir darum wir ich dafür sorge, das gescrollt wird.

3.511 Beiträge seit 2005
vor 14 Jahren

Hallo,

schau dir mal die Message EM_SETRECT an. Diese arbeitet zwar nur mit Multiline Textboxen, aber das kann man auch modifizieren. Mit der Message kannst du den Bereich eingrenzen, in dem der User Text eingeben kann.

Gegenfrage 😃: Warum nimmst du nicht ein UserControl und legst die TextBox und den Button nebeneinander an. Ist zwar optisch nicht der Knaller, erzielt aber den selben Effekt.

"Jedes Ding hat drei Seiten, eine positive, eine negative und eine komische." (Karl Valentin)

R
344 Beiträge seit 2006
vor 14 Jahren

Warum nimmst du nicht ein UserControl und legst die TextBox und den Button nebeneinander an. Ist zwar optisch nicht der Knaller, erzielt aber den selben Effekt.

Genau.
Oder, du machts bei Erscheinen des Buttons die Textbox um die Breite des Buttons kleiner. Und natürlich wieder größer wenn er verschwindet.
Dies wäre am besten auch in einem UserControl zu machen. Wo mans braucht einfügen und fertig.

Gruß Robert

D
dRei Themenstarter:in
23 Beiträge seit 2009
vor 14 Jahren

Danke für die Tipps.

Ich habe es nun mit einem UserControl gelöst. Der Rahmen des UC sieht nun so aus, als wenn es eine normale TextBox ist. Der Button ist mit in dem UC und wird nur bei Bedarf eingeblendet. Die TextBox ohne Rahmen geht nicht bis zum Ende der UC, jedoch sieht man das aufgrund des nicht vorhandenen Boarders nicht.

Sieht nun sehr gut aus und der Benutzer hat den Eindruck, als würde ich das Bild über den Text legen, was nicht so ist.

Dankeschön.
Gruß,
Michael