ThreePaneWindows Documentation

PyPI version Python versions CI Status CodeFactor Code style: black

ThreePaneWindows is a professional Python library for creating sophisticated three-pane window layouts in Tkinter applications. It provides ready-to-use, customizable components with advanced features like docking, theming, and modern UI elements.

Requirements

  • Python: 3.9 to 3.13

  • Dependencies: None (uses Python standard library only)

  • Platforms: Windows, macOS, Linux

Features

  • Multiple Layout Types: Fixed-width and dockable three-pane layouts

  • Smart Layout System (v1.2.0): Automatic detection of fixed vs. resizable panes for optimal sash behavior

  • Professional Theming: Built-in light and dark themes with customization options

  • Cross-Platform Icon Support: Multiple icon formats (.ico, .png, .gif, .bmp, .xbm) with automatic platform optimization

  • Advanced Docking: Drag-and-drop pane reordering and detachment

  • Responsive Design: Automatic resizing and layout management

  • Rich Components: Status bars, toolbars, context menus, and more

  • Easy Integration: Simple API that works with existing Tkinter applications

  • Cross-Platform: Works on Windows, macOS, and Linux

Quick Start

Installation

pip install threepanewindows

Basic Usage

import tkinter as tk
from threepanewindows import FixedThreePaneWindow

root = tk.Tk()
root.title("My Application")
root.geometry("1200x800")

# Create a three-pane window
three_pane = FixedThreePaneWindow(root)
three_pane.pack(fill=tk.BOTH, expand=True)

# Add content to panes
left_label = tk.Label(three_pane.left_pane, text="Left Pane", bg="lightblue")
left_label.pack(fill=tk.BOTH, expand=True)

center_label = tk.Label(three_pane.center_pane, text="Center Pane", bg="lightgreen")
center_label.pack(fill=tk.BOTH, expand=True)

right_label = tk.Label(three_pane.right_pane, text="Right Pane", bg="lightcoral")
right_label.pack(fill=tk.BOTH, expand=True)

root.mainloop()

Table of Contents

Indices and tables