Button auf anderes Fenster verschieben ?



  • Hallo,

    Mein Test-Programm hat 2 Fenster mit nem Button auf Fenster 1,
    jetzt wollte ich nur mal fragen ob man den Button der auf Fenster 1 liegt einfach auf Fenster 2 verschieben kann ?

    Danke



  • Nein! Buttons gehören zu dem Fenster, wo sie deklariert worden sind. Verschieben ohne eine solche Deklaration geht nicht. Aber du kannst jederzeit mit SendMessage den Button eines anderen Fensters aktivieren, deaktivieren, oder andere Dinge auslösen. Trifft das deine Frage?


  • Mod

    Man kann ein Fenster ein anderes Parent geben mit SetParent.
    http://msdn.microsoft.com/en-us/library/ms633541(VS.85).aspx

    Aber Achtung wenn das Parent zu einem anderen Thread gehört kann dies unangenehme Efekte haben.



  • Ok danke erstmal.



  • Hallo,

    hab das nun mal ausprobiert und es funktioniert,
    nur hat der Button dann keine Funktion mehr leider.



  • Ja weil die NBachrichten des Buttons nun an die WndProc-Funktion des anderen Fensters gesendet werden. Ein spontaner Gedanke von mir wäre es mit einem MessageHook die Nachrichten des Buttons abzufangen.



  • Und warum machst du auf das zweite Fenster keine zweite Schaltfläche? Anstatt so ein Murks da zu fabrizieren.



  • Und warum machst du auf das zweite Fenster keine zweite Schaltfläche? Anstatt so ein Murks da zu fabrizieren.

    Und warum überbrückst Du nicht einfach zum einschalten Deines Rechners die Powerswitch Kontakte Deines Mainboards kurzeitig mit nem Schraubendreher ?


  • Mod

    _Luckie schrieb:

    Und warum machst du auf das zweite Fenster keine zweite Schaltfläche? Anstatt so ein Murks da zu fabrizieren.

    Die Frage ist absolut berechtigt. Ich würde nur dann solche Fenster übertragen, wenn Sie selbst alle Ihre Funktionalität kapseln.

    Einen Button einen anderen Owner geben macht kaum Sinn. Vor alem weil der Ressourcenverbraucht für ein Fenster das man spart vernachlässigt werden kann.



  • Vielleicht will der Fragesteller keine übliche einfache Lösung für sein Ziel? Dann sollte er uns aber auch genau sagen, warum und wozu. Im Moment scheint das wie 'von hinten in das Knie geschossen - muss doch auch funktionieren!' Geht möglicherweise sogar, doch wozu der dafür erforderliche zusätzliche Aufwand?

    edit: Er hat doch schon selbst gesagt, man sollte den vorgesehenen 'Schalter' nehmen und keine hingebastelte 'Überbrückung'. Ein Button ist auch ein Schalter!



  • Renegade schrieb:

    Und warum machst du auf das zweite Fenster keine zweite Schaltfläche? Anstatt so ein Murks da zu fabrizieren.

    Und warum überbrückst Du nicht einfach zum einschalten Deines Rechners die Powerswitch Kontakte Deines Mainboards kurzeitig mit nem Schraubendreher ?

    Weil das Drücken des Schalters einfacher ist.


Anmelden zum Antworten