Zum Inhalt springen

Fenster Fokusieren


Seph

Empfohlene Beiträge

Hallo Leute,

naja klingt wie eine leichte Aufgabe: Ich möchte ein vorhandenes Fenster einfach fokusieren. Und zwar ein offenes OpenOffice Writer-Dokument (und genau das ist die "Schwierigkeit" dabei). Ich habe derzeit leider keine Idee, wie ich dieses Fenster ansprechen und in den Vordergrund setzen kann.

Ich weiß zwar wie ich das Fenster öffnen kann, aber nicht wie ich es in den Vordergrund setzen kann.

Der Code mit dem das Fenster aufgeht:


XComponentContext xCompCont = null;

		try {

			xCompCont = BootstrapSocketConnector.bootstrap("C:/Programme/OpenOffice.org 3/program/");

		} catch(BootstrapException ex) {

			ex.printStackTrace();

		}

		if(xCompCont != null) {

			try {

				// Servicemanager holen

				XMultiComponentFactory xMultiComFac = xCompCont.getServiceManager();

				// Desktopinstanz erstellen

				Object xDesk = xMultiComFac.createInstanceWithContext(

						"com.sun.star.frame.Desktop", xCompCont);

				// neues Loader-Objekt mithilfe des Desktops erstellen

				XComponentLoader oComponentLoader = (XComponentLoader) 

					UnoRuntime.queryInterface(XComponentLoader.class, xDesk);				

				// ein leeres Writer-Dokument erstellen

				XComponent xComp = oComponentLoader.loadComponentFromURL(

						"private:factory/swriter",						// neues Dokument 

						"_blank",                  	// neues Frame

						0,                      	// keine Suchflaggs

						new PropertyValue[0]);		// mehr nicht

				return xComp;

			} catch(Exception ex)

			{

				System.out.println("Open Office Writer konnte nicht geöffnet werden!");

				System.out.println(ex.getMessage());

			}

ByTheWay: in Java natürlich^^

MfG

Seph

Link zu diesem Kommentar
Auf anderen Seiten teilen

Was passiert denn wenn du den von dir angegeben Code ausführst?

Ich habe zwar jetzt noch nicht viel mit OpenOffice in Verbindung mit Java gearbeitet, aber bei meinen Tests, ging das Fenster sofort im Vordergrund auf, wenn ich das nicht explizit unterbunden habe.

Dein Code sieht mir auch so aus, als wenn das dort eigentlich genauso geschehen sollte.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich starte die Anwendung ja mittels eines Buttons innerhalb eines Javaprogramms. Und in diesem Fall bleibt (zumindest bei mir) mein ursprüngliches Javaprogramm im Vordergrund und das neue OpenOffice Dokument (Writer) öffnet sich zwar in der Leiste, bleibt aber minimiert.

Warum soll das Ding eig. in den Vordergrund? Na ja, nicht unbedingt Vordergrund, ich möchte aber KeyEvents darauf abfeuern (mittels Robot) und damit der OpenOffice Writer weiß, dass die KeyEvents für ihn sind, muss er eben im Fokus sein.

Gruß

Seph

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hm...also genau sagen wie das funktioniert, kann ich dir leider auch nicht, das Problem bestand bei mir nicht.

Vielleicht dindest du ja aber im DevGuide wieder Hilfe dazu, vor allem die Sektion für das Application Enviroment sieht vielversprechend aus.

Hab ich das jetzt aber richtig verstanden, dass du das Fenster in den Vordergrund bekommen willst, damit du über dein Programm OpenOffice Tastatureingaben einspeisen kannst? Wenn ja, wäre es vielleicht auch gleich sinvoller, zu schauen ob die Änderungen die du so vornehmen willst, nicht auch einfacher direkt über die API gelöst werden können.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...