[vbox-dev] How-to bring VirtualBox VM window to focus ?
Alexey Eromenko
al4321 at gmail.com
Fri Jun 10 20:01:40 PDT 2011
The Qt4 GUI can bring the clicked VM window to focus.
Looking at SDK I found:
long long IMachine::showConsoleWindow()
But it lacks any example.
My code: (python on Windows)
======================
from vboxapi import VirtualBoxManager
mgr = VirtualBoxManager(None, None)
vbox = mgr.vbox
name = "Windows XP Motherimage"
mach = vbox.findMachine(name)
session = mgr.mgr.getSessionObject(vbox)
progress = mach.launchVMProcess(session, "gui", "")
progress.waitForCompletion(-1)
import win32gui
hwnd = mach.showConsoleWindow()
win32gui.ShowWindow(int(hwnd), win32con.SW_RESTORE)
win32gui.SetForegroundWindow(int(hwnd))
======================
And It works !
On Linux, I have tried:
======================
>>> from PyQt4 import QtGui
>>> xdisp = QtGui.QX11Info.display()
...
but xdisp results in "NoneType" object.
1. How to fix it ?
2. Can the Main API be extended to incorporate all the necessary
functionality ? (by passing handler of the currently active
application to showConsoleWindow() or otherwise) It will make
developer's life easier, and allow me to target more platforms, such
as Mac, which I don't have, but GNS3 users use.
Thanks in advance,
--
-Alexey Eromenko "Technologov"
More information about the vbox-dev
mailing list