http://www.perlmonks.org?node_id=1018425


in reply to Re^2: TK Toplevel Window List (wm)
in thread TK Toplevel Window List

If you just wnat to get a list of all the toplevel windows from within a single process, it is pretty easy. Something like this perhaps.

use warnings; use strict; use Tk; my $mw = MainWindow->new(-title => 'main window'); for (1..5) { $mw->Toplevel(-title => "toplevel #$_"); } for ($mw, $mw->children) { print $_->cget('-title'),"\n" if /Toplevel/ or /MainWindow/; } MainLoop;

To find windows owned by other processes, you are going to need to interact with the OS window manager and that is going to be very specific to the your needs and the OS/WM you are using. There's no portable easy answer.