# C++ Programm in Java-GUI einbinden?



## gast0815 (25. Jul 2007)

hallo,

weiß jemand, ob es möglich ist, ein c++ programm in die gui eines java programms einzubinden? 
hintergrund ist folgender: das java programm nutzt daten, die von dem c++ programm graphisch dargestellt werden können. dazu muss das c++ programm aber extra extern gestartet werden. ich würde die graphische ausgabe des c++ programms aber gerne in das java-programm einbinden, so dass das c++-programm nicht extern läuft, sondern in einem frame in der java-gui (oder sonst irgendwie in der gui).
ich habe schon ein weilchen gegoogelt und nicht wirklich etwas hilfreiches gefunden. weiß jemand ob es eine möglichkeit gibt oder eben ob es überhaupt nicht geht (damit ich mit dem suchen aufhören kann  )

danke schon mal


----------



## mikachu (25. Jul 2007)

ich bin mir nicht zu 100% sicher, aber ich hab mal was von nativem code gehört.

wie ich vorhin von nem kumpel erfahren habe, ist das beim java mit dem System.out, System.in und System.err genauso geregelt.
die sind ja als public final static deklariert... man kann sie aber anders referenzieren :autsch: 
final neu instantiieren?!?

also ham die da nativem code eingebunden, der sich die adresse sucht, und dort einfach ne neue referenz drüberlegt.

...wie gesagt... hab ich nur gehört, und noch keine nachforschungen angestellt


----------



## Linad (25. Jul 2007)

Ich glaube nicht dass das funktionieren kann! Eine Alternative wäre vielleicht "Shared Memory". Google mal nach diesem Begriff!


----------



## Guest (25. Jul 2007)

:?  so ganz kann ich nicht nachvollziehen, was du meinst.
ich weiß das es jni gibt und das man damit in java c-methoden nutzen kann und anders rum. jedoch glaube ich nicht, dass das mit graphischen darstellungen funktioniert. außerdem müsste dafür das c++-programm angefasst werden, was ich eigentlich nicht wollte, da es nicht von mir ist. ich hatte gehofft, das es da irgendeine möglichkeit gibt, das c++-programm (komplett und nicht nur einzelne methoden) in der java-gui auszuführen, ohne das änderungen im c++-programm nötig sind.


----------



## Linad (25. Jul 2007)

Ok, jetzt verstehe ich was du meinst! Nein das wird nicht funktionieren mit Java!


----------



## Guest (25. Jul 2007)

okay. danke für die antwort. dann brauch ich ja nicht weiter suchen.


----------



## Wildcard (25. Jul 2007)

Wenn du deine GUI auf SWT umbaust kannst du ein natives Fenster in deine Anwendung integrieren.
Dazu muss allerdings der Window Manager reparenting unterstützen.


----------



## Guest (27. Jul 2007)

Wildcard hat gesagt.:
			
		

> Wenn du deine GUI auf SWT umbaust kannst du ein natives Fenster in deine Anwendung integrieren.
> Dazu muss allerdings der Window Manager reparenting unterstützen.



vielen dank für den tip.
wie stellt man sicher, das der window manager reparenting unterstützt? 
ich kann mich nicht erinnern schon mal explizit mit dem window manager gearbeitet zu haben. ist das etwas swt-spezifisches?


----------



## Wildcard (27. Jul 2007)

Anonymous hat gesagt.:
			
		

> ich kann mich nicht erinnern schon mal explizit mit dem window manager gearbeitet zu haben. ist das etwas swt-spezifisches?


Nein, die grafische Oberfläche deines Betriebssystems hat einen Window manager. Nicht alle davon unterstützen reparenting.


----------

