This page describe what a paned window is, and where to find implementations. A paned window is a [widget] consisting of two [window]s with a bar down the middle, where the bar has a handle for resizing the two windows. ---- Tcl/Tk 8.4 has a [panedwindow], and a [spinbox] as well as a [labelframe]. The panedwindow was the result of TIP 41 [http://purl.org/tcl/tip/41.html] which proposed a built-in PanedWindow. [Ro]: I always find that I need some examples to get started with a widget. So here is a simple example that should get you started with the panedwindow from Tk 8.4 (be sure to check out the man page [http://www.tcl.tk/man/tcl8.4/TkCmd/panedwindow.htm] for details) package require Tk 8.4 panedwindow .pw -orient vertical label .pw.x1 -text Bapy -fg orange -bg black label .pw.x2 -text Mojo -fg white -bg red .pw add .pw.x1 -minsize 200 .pw add .pw.x2 -minsize 100 pack .pw -fill both -expand yes Maximize the window to see how you can alter the sizes of the panes, while respecting the minsize that was chosen by the config option -minsize . The widgets that you add to the panedwindow MUST be children of the panedwindow, in this case they must be .pw.something . On windows, mouse-button-1 resizes the panes once you let go of the sash, whereas mouse-button-2 resizes the panes as you move the sash. If you're looking for a good Tcl/Tk 8.4 implementation, be sure to check out [tclkit] and [starkit]. ---- [TR] - No, the widgets to add to panedwindow must NOT be children of the pane itself (at least it does not say so in the man page). This version work perectly fine: panedwindow .pw -orient vertical label .x1 -text Bapy -fg orange -bg black label .x2 -text Mojo -fg white -bg red .pw add .x1 -minsize 200 .pw add .x2 -minsize 100 pack .pw -fill both -expand yes BUT, the order of window generation is apparently important. This version, where the pane is created after the labels, does NOT work: label .x1 -text Bapy -fg orange -bg black label .x2 -text Mojo -fg white -bg red panedwindow .pw -orient vertical .pw add .x1 -minsize 200 .pw add .x2 -minsize 100 pack .pw -fill both -expand yes The pane will be visible but the labels won't. [LV] Could this be due to [stacking order]? ---- * [BWidgets] [http://tcllib.sourceforge.net/] has a PanedWindow. * [ClassyTk] [http://rrna.uia.ac.be/classytcl/] has a Paned widget. * [Iwidgets] [https://sourceforge.net/projects/incrtcl/] (based on itk) includes a panedwindow. * [obTcl] [ftp://ftp.dynas.se/pub/tcl/obTcl.tar.gz] has a paged window widget. * [Tix] [http://tix.sourceforge.net/] has a paned window. * [Jeffrey Hobbs]' widget package [ftp://www.tcl.tk/pub/tcl/nightly-cvs/widget/] includes a pure-Tcl geometry-manager-like-thing that serves as a paned window. Do any of these extra paned windows provide features that don't exist in the new Tk 8.4 version? [EKB] Not exactly, but... I decided not to migrate away from the iwidgets paned window (yet) because the Tk 8.4 version doesn't have the iwidgets "fraction" option. Instead, you have to specify the size of each pane. Setting "fraction" instead is quite handy. Of course, this isn't a show stopper, but it made the switch nontrivial. [EKB] Oh, right... And ''more'' importantly, there is no '''hide''' command for the Tk 8.4 paned window. Again, it's not a show stopper, since the behavior can be duplicated, but it slows me down when converting scripts. [LV] Might be worthwhile to add these two ''missing'' features to the Tk Features Request queue over on sf.net . ---- [[Does [Perl/Tk] have a Pane widget?]] [VK]: [Perl/Tk] has Tk::Adjuster, which, according to docs, ''Allow size of packed widgets to be adjusted by user''. Strangely, it has [Tix] mixed in, but PanedWin from Tix was not used, for some reason it has its own... Some kind of implementation details. [[ [Category Example] | [Category GUI] | [Category Itcl] | [Category Widget] ]]