Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Excel in OleContainer (https://www.delphipraxis.net/125388-excel-olecontainer.html)

BAMatze 5. Dez 2008 07:07


Excel in OleContainer
 
Hallo an alle,

Habe Excel in einem OleContainer in meinem Programm eingebaut, dies funzt auch sehr gut allerdings gibt es dort jetzt ein paar Sachen, die ich noch nicht ganz verstanden habe. Wenn ich in der Laufzeit mit Doppelklick auf den Container Exel starte, wie kann ich es dann wieder schließen? gibt es Befehle, so dass ich das öffnen von Excel auch über ein Menu steuern kann?

Vielen Dank
BAMatze

Semmel 5. Dez 2008 12:07

Re: Excel in OleContainer
 
Hallo BAMatze

Versuche es mit OleContainer1.DoVerb( ovHide ) oder OleContainer1 freigeben

BAMatze 5. Dez 2008 13:15

Re: Excel in OleContainer
 
Hallo danke für diesen Tip, werde ihn auch noch testen, um auch alternative Lösungen zu haben. Habe aber folgende Lösung noch selber gefunden, indem ich einfach mit Sendmessage einen Doppelklick auf den OleContainer ausführe. Hier für alle die es interessiert eine funktionierende Lösung:

Delphi-Quellcode:
  SendMessage(OleContainer1.Handle,WM_LButtondblclk,0,0);
Danke
BAMatze

toms 5. Dez 2008 13:32

Re: Excel in OleContainer
 
oder so:
Delphi-Quellcode:
OleContainer1.Perform(WM_LBUTTONDBLCLK, 0, 0)

BAMatze 9. Dez 2008 07:20

Re: Excel in OleContainer
 
Hallo nochmal,

Hab jetzt neben der doch etwas "brutforce-Vatiante" (dem erzwungenen Doppelklick auf die Komponente) eine etwas elegantere Lösung gefunden. Man kann die Ole-Komponente einfach mit:

Delphi-Quellcode:
OleContainer1.DoVerb(ovInPlaceActivate);
in seiner Form öffnen. Ist wesentlich besser als ovOpen, da sich dann Excel seperat öffnet, was nicht immer erwünscht ist.

Dank euch nochmal.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:50 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz