Hallo,
ich arbeite mit Visual Studio und bin gerade dabei, eine Testaufgabe zum malen zu bearbeiten.
Ich habe einen Dialog und dort ein Static Text Feld wo ich drauf malen möchte (In dem Static feld).
Ich habe jetzt aber das Problem,dass mir Visual Studio irgendwie schon die Vorarbeit genommen hat… Irgendwo ist das jetzt schon geschrieben,aber ich wollte das selbst schreiben, damit ich weiß wie das alles funktioniert.
Es geht nämlich „schon“ folgendes:
Ich drücke die Maustaste in dem Static Feld und ich fange an einen Strich zu zeichnen. Jetzt Zeichne ich bis zum linken Rand des Static Felds und gehe mit dem Mauszeiger links aus dem Static Feld raus (male immer noch bzw. drücke die Maustaste) und komme von unten oder oben im static Feld wieder rein (die ganze zeit immer die Maustaste gedrückt), dann malt er aber immer noch! Also er malt außerhalb des Staticfensters weiter, aber normalerweise ist solch eine Funktionalität ja nicht gegeben. Genau wie, wenn ich etwas gemalt habe, schiebe ich ein anderes Fenster über mein Maldialog und zieh es wieder weg: Das gemalte bleibt.
Das heißt, er rekronstruiert das gemalte,aber das soll er doch „noch“ garnicht!? Ich soll hier nämlich mit Funktionen wie SetCapture oder ReleaseCapture arbeiten,aber das erübrigt sicht ja,wenn es schon vorher funktioniert.
Ich habe für mein Static extra eine Klasse gebaut,diese von CStatic abgeleitet. Ich habe die Funktionen für Mausdrücken,Mausdrücken loslassen und OnMouseMove überschrieben. Aber warum macht er das denn trotzdem noch? Weiß jemand was ich noch überschreiben müsste,damit diese Funktionalität nicht mehr gegeben ist und ich es selbst programieren kann? Sonst macht meine Testaufgabe wenig Sinn Wäre für jede Anregung dankbar!