[Windows Forms] Auf TabPages mit Mausrad scrollen geht nur bedingt



  • Hi, an meinem Projekt stört mich ein wenig das man auf Tabpages erst mit dem Mausrad scrollen kann sobald man in ein Feld klickt, z.B. in eine Textbox. Ich hätte gerne das das Scrollrad immer funktioniert, also ab dem Moment wo man einen Reiter der TabControl anklickt. Ich habe nur absolut keinen Plan wie ich das Mausrad in dem Fall ansprechen soll, habe halt ein paar OnClick Handler auf die Reiterbuttons gemacht, aber was nun?



  • Das erste Feld mit Focus aktivieren ?!



  • Ich habe es gerade nochmal versucht, die Handler müsste ja eigentlich auf die einzelnen tabPages gelegt werden oder?

    Problem: Wenn ich aus dem Design raus einen Eventhandler einfügen will z.B. tabPage2_Click, kommt folgende Fehlermeldung von VC++(nicht beim Kompilieren, sofort): "Error HRESULT E_FAIL has been returned from a call to a COM component"

    Nun, sofern das Problemchen gelöst ist würde ich im Handler einfach this->textbox1->Focus() aufrugen. Soweit korrekt?



  • Wenn ich Dich richtig verstanden habe, dann definiere doch ein MouseOver Event und setze in dem Event das jeweilige Control aktiv (also den Focus, wie Knuddlbaer schon gesagt hat). Somit aktivieren sich die Controls automatisch, wenn sich der Mauszeiger über ihnen befindet und das Rad müsste funktionieren.



  • Das Problem könnte ein anderes sein.

    @pocketom , meld Dich mal bitte per Mail oder ICQ , das ganze würde jetzt etwas den Rahmen sprengen.

    (Geht um den Com Fehler)



  • Super danke, habe es dank Eurer Tips hinbekommen. Der Fehler kam nach Neustart von VC nicht mehr, konnte also den entsprechenden Handler setzen.

    private: System::Void tabPage1_onEnter(System::Object^  sender, System::EventArgs^  e) {
    			 this->textBox1->Focus();
    		 }
    

Anmelden zum Antworten