PySimpleGui - 嵌套框架

And*_*ele 3 python user-interface pysimplegui

在此输入图像描述

我怎样才能以这种方式实现嵌套框架。左一帧(帧 1),右一帧(帧 2)。另一个框架(框架 3)嵌套在左框架内容的内部和下方?

格式允许吗?

Jas*_*ang 6

从外到内为您的设计

  • 主布局中左 Frame1、右 Frame2
layout = [
    [sg.Frame("Frame1", ...), sg.Frame("Frame2", ...)],
]
Run Code Online (Sandbox Code Playgroud)
  • Frame1 中的顶部框架 4、底部框架 3
layout = [
    [sg.Frame("frame 4", ...],
    [sg.Frame("Frame 3", ...],
]
Run Code Online (Sandbox Code Playgroud)
  • 同样,第 4 帧中的左第 5 帧,右第 6 帧
layout = [
    [sg.Frame("Frame 5", ...), sg.Frame("Frame 6", ...)],
]
Run Code Online (Sandbox Code Playgroud)

就这样 !

import PySimpleGUI as sg

def blank_frame():
    return sg.Frame("", [[]], pad=(5, 3), expand_x=True, expand_y=True, background_color='#404040', border_width=0)

sg.theme('DarkGrey4')

layout_frame1 = [
    [blank_frame(), blank_frame()],
    [sg.Frame("Frame 3", [[blank_frame()]], pad=(5, 3), expand_x=True, expand_y=True, title_location=sg.TITLE_LOCATION_TOP)],
]

layout_frame2 = [[blank_frame()]]

layout = [
    [sg.Frame("Frame 1", layout_frame1, size=(280, 250)),
     sg.Frame("Frame 2", layout_frame2, size=(200, 250), title_location=sg.TITLE_LOCATION_TOP)],]

window = sg.Window("Title", layout, margins=(2, 2), finalize=True)

while True:

    event, values = window.read()
    if event == sg.WINDOW_CLOSED:
        break

window.close()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述