Snypoo Geschrieben 17. Juli 2002 Geschrieben 17. Juli 2002 Hallo, ich möchte auf das Loslassen der Maustaste bei der verwendung eines TTrackBar reagieren. wenn ich mit void __fastcall TForm1::OnMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) arbeite, springt mein Prog nur dann in den Code, wenn ich außerhalb des TrackBars mit der Maus klicke. Es soll aber in den Code Gesprungen werden, wenn die Maus sich Über dem TrackBar befindet. Ich Hoffe, Ihr könnt mir helfen. Gruß Snypoo Zitieren
gugelhupf Geschrieben 17. Juli 2002 Geschrieben 17. Juli 2002 Hmmmm...ich arbeite zwar mit dem VC, aber es sollte doch auch bei der VCL möglich sein benutzerdefinierte Klassenableitungen zu erstellen. Du beziehst Dich ja bei MouseUp auf Deine Form und nicht auf die TrackBar-Instanz. void __fastcall MyTTrackBar ::OnMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) So ähnlich würde es bei VC dann heissen *ggg* Schau mal unter abgeleitete Klassen und die Hierarchie der VCL. Zitieren
Snypoo Geschrieben 17. Juli 2002 Autor Geschrieben 17. Juli 2002 Hallo gugelhupf, wie muß denn die MyTTrackBar aufgebaut sein, damit ich das so anwenden kann wie Du das beschrieben hast??? Zitieren
gugelhupf Geschrieben 17. Juli 2002 Geschrieben 17. Juli 2002 Original geschrieben von Snypoo Hallo gugelhupf, wie muß denn die MyTTrackBar aufgebaut sein, damit ich das so anwenden kann wie Du das beschrieben hast??? Also unter der MFC wäre so ein Control genauso mit allen Standardfunktionen und Membern zusammengesetzt wie sonst auch. Wie gesagt ich kenn die VCL nur vom Hören-Sagen. Gibt es denn beim Borland kein Hierarchie-Chart ? Hast mal nachgeschaut wie man eine Control-Klassen von den Standardklassen ableitet ? Zitieren
Snypoo Geschrieben 22. Juli 2002 Autor Geschrieben 22. Juli 2002 Hallo, ich habe nun eine Lösung für mein Problem gefunden, die Wollte ich Posten, damit auch andere davon Profitieren können. // HEADER private: Controls::TWndMethod OldTrackBarProc; protected: void __fastcall NewTrackBarProc(TMessage&); // CPP-Datei __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { OldTrackBarProc = TrackBar1->WindowProc; TrackBar1->WindowProc = NewTrackBarProc; } //----------------------------------------------------------------------------- void __fastcall TForm1::NewTrackBarProc(TMessage& Msg) { switch(Msg.Msg) { case WM_LBUTTONDOWN: // Deine Behandlung break; case WM_LBUTTONUP: // Deine Behandlung break; // Evtl. andere Cases } OldTrackBarProc(Msg); } Gruß Snypoo Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.