Fenster "übernehmen"



  • Hallo zusammen,
    ich war schon ewig nicht mehr hier und bin froh, dass es Euch noch gibt. Ich programmiere zur Zeit hauptsächlich VB6 und bin auf folgendes Problem gestossen, das eigentlich API-Sache ist:
    Ich würde gerne ein von einer anderen Anwendung geöffnetes Fenster "übernehmen", also Parameter wie Grösse und Platzierung festlegen. Genaugenommen nutze ich GnuPlot, um Daten darzustellen. Gnuplot selbst wird aus meiner Anwendung gestartet, ich bekomme auch ein Handle darauf, nur möchte ich gerne die Position des von Gnuplot geöffneten Graphen festlegen können.
    Ist das möglich, und hat da jemand eine Idee, welche Funktionen benötigt werden?
    Danke soweit,
    therich



  • wenn du das Handle auf das Fenster bekommst, dann kannst du doch einfach mit MoveWindow/SetWindowPos o.ä. die größe des Fensters verändern. du kannst sogar die Wndproc mit setWindowLong verändern und das Fenster damit total übernehmen. Ich weiß aber nicht, wie das dann mit dem Speicher ist, weil das Fenster ja eigentlich zum anderen programm gehört



  • OK, aber gibt es eine Funktion, die mir die "Unterfenster" zu einem Handle ausgibt? Ich habe nur das Handle der Gnuplot-Instanz, nicht das des daraus geöffneten Fensters...



  • Schau einfach mal mit Spy++ bzw. WinSpector nach, wie du dich zu dem Child-Window durchzuhangeln hast 😉


Anmelden zum Antworten