OLE-Container Focus Problem und WORD Menü



  • Hallo,

    ich entwickle gerade ein Programm, mit dem man ein Word-Dokument öffnet, modifizieren kann und es dann per Mail verschickt. Das Programm funktioniert so wie es soll. Ich verwende dabei einen OLE-Container mit dem ich das Word-Dokument lade.

    Das Problem sind erstens die Word-Toolbars, die escheinen, wenn das Dokument geöffnet wird. Diese kommen nicht in den Container, sondern auf die Form! Gibt es eine Möglichkeit irgendwie das Parent der Toolbars auf den Container zu setzen oder eben auf das darüberliegende z.B. Panel, wenn ich den Container in ein Panel packe?

    Ich habe mal ein Screenshot gemacht:

    [url]
    http://img819.imageshack.us/i/oledoc.jpg/
    [/url]

    Der Container ist auf einem Panel und links befindet sich ein Splitter und ein Treeview, welche als Align=alLeft haben. Wie man an den roten Pfeil sehen kann bildet sich dort eine Lücke, wenn die Toolbars von Word erscheinen.

    Wie kann ich jetzt dieses Problem lösen?

    Dann das andere Problem: Wenn ich irgendwo anders Klicke, dann verliert der Container den Focus und das Dokument kann ich nicht modizifieren und die Toolbars von Word verschwinden auch.

    Jemand damit schon mal Erfahrungen gehabt?

    Ich glaube Quellcode brauche ich euch nicht zu posten....



  • Also mit dem Problem des Focus bin ich etwas weitergekommen. Bei Google habe ich gelesen, dass dies ein Bug ist des OleContainers und es gibt in der Knowledge-Base von Microsoft ein Workaround, aber ich finde das nicht interessant.

    Ich habe für den Focus im OnDeactivate-Ereignis des OleContainers folgendes eingefügt:

    OleContainer->SetFocus();
    

    Dabei wird jedesmal der Focus neugesetzt, wenn er ihn verliert....

    Und nun ist schonmal dieses Problem gelöst.


Anmelden zum Antworten