Veröffentlicht 25. Oktober 200618 j Hallo Also ich will ein kleines Prog schreiben bei dem der Anwender durch klicken auf ein Label, das Label 'markieren' kann. Im endéffekt soll sich einfach nur die Hintergrund´- und Schriftfarbe ändern. Nun wollte ich einfach nur eineFunktion schreiben die das Label ausliest, d.h. wenn Label = 1 dann Hintergrund weiss/Farbe Schwarz. Die Fkt soll die Farben ändern und den Wert auf 2 setzen. WIe kann ich nun aber dem Label einen Wert zuweisen??? Geht das überhaupt? Denn, so wie ich mir das vorstelle müsste man ja die Eigenschaften des Labels erweitern.... Ich arbeite mit SharpDevelop Thx....
25. Oktober 200618 j Autor Ich will nicht dass sich der Wer´t, den das Label anzeigt ändert, sondern dass ich quasi einen Eigenschaftenwert wie z.b. TextAlignm hinzufügen kann....
25. Oktober 200618 j Wenn du selber Eigenschaften hinzufügen willst, musst du die dir eine Klasse basteln und die dann vom Label ableiten. Dann kannst du tun und lassen was du willst damit. Im Standard Label kann man keine Eigenschaften hinzufügen.
25. Oktober 200618 j Also wenn du einfach nur den hintergrund ändern willst, dann nehm einfach die eigenschaft "BackColor" des Labels. dem du dann einfach nen anderen wert zuweist. genauso gibt es ne eigenschaft "TextAlign" schon, welcher du dann ja nur den richtigen wert zuweisen musste, den du brauchst...
25. Oktober 200618 j WIe kann ich nun aber dem Label einen Wert zuweisen???Wozu brauchst du da eine neue Eigenschaft? Benutz doch einfach BackColor selbst dazu.
24. November 200618 j gibts bei nem Label nihct auch die .Tag - Eigenschaft? Das böte sich dann doch an, wenn dus unbedingt so machen willst und nicht der Einfachheit halber über den Hintergrund (siehe klotzkopp)...
24. November 200618 j Hallo McSaesh, wenn ich dass richtig verstehe willst Du ein Label, welches einen Status haben kann, angeklickt und nicht angeklickt. Ich würde Dir i.d.F. aufjedenfall zu einem von Label abgeleiteten Control raten, welches eine Property Status besitzt. Dort kannst Du ggf. auch alle notwendigen Events verarbeiten. Entsprechende Properties die das Verhalten und Aussehen bei einem angeklickten Label bestimmen würde ich auch verfügbar machen. Über die BackGroundColor würde ich nicht gehen, da diese i.d.R den Systemeinstellungen entspricht oder wenn Du mehrere Labels hast sich je nach Label unterscheiden kann. Allgemein ist es ziemlich dreckig einen Status über die Farbe oder allgemein das Erscheinungsbild eines Controls zu bestimmen. MfG Markus vb tutorial Ihhgitt
24. November 200618 j Eine eigene Klasse erstellen und von TextBox abzuleiten halte ich für den wohl unnötigsten Weg. Grund: Die Klasse TextBox kann alles was ich gewünscht ist. Hintergrundfarbe: BackColor-Eigenschaft Textfarbe: ForeColor-Eigenschaft Textausrichtung: TextAlign-Eigenschaft Abfragen ob angeklickt: Focused-Eigenschaft Ändern der Farben in einem GotFocus bzw. LostFocus-Event und die Sache ist erledigt.
24. November 200618 j @maddin Es geht hier nicth um eine TextBox, sondern um ein Label, ein Label wird im Normalfall auch nie GotFocus und LostFocus auslösen. Er will hier auch nicht nur die Farbe des Labels ändern, sondern es markieren. Markieren heißt auch immer dass er es auswerten will, ob es markiert ist oder nicht. Ein Label das nur seine Farbe ändern kann ist vielleicht ein toller grafischer Effekt, aber wenig sinnvoll.
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.