繁体   English   中英

PySimpleGUI 如何放置 9x9 InputText

[英]PySimpleGUI how to put 9x9 InputText

import PySimpleGUI as sg
import numpy as np

sg.theme('LightGreen10')
col1a = [
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],

]

col1b = [
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
]

col1c = [
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
]

col2a = [
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
]

col2b = [
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
]

col2c = [
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
]

col3a = [
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
]

col3b = [
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
]

col3c = [
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))], [sg.Text(''), sg.InputText(size=(3, 1))],
    [sg.Text(''), sg.InputText(size=(3, 1))],
]
##[sg.HorizontalSeparator()],
layout = [
    [sg.T("Start now:")],
    [sg.Col(col1a, justification='right'), sg.Col(col2a, justification='center'), sg.Col(col3a, justification='left')],

    [sg.Col(col1b, justification='right'), sg.Col(col2b, justification='center'), sg.Col(col3b, justification='left')],

    [sg.Col(col1c, justification='right'), sg.Col(col2c, justification='center'), sg.Col(col3c, justification='left')],

    [sg.Submit(), sg.Exit()]
    ]

window = sg.Window("Weleome!", layout, size=(600, 350))

while True:

    event, values = window.read()
    print(event, values)
    if event in (sg.WIN_CLOSED, 'Exit'):
        break
    elif event == "Submit":
        #print(values)
        print("Please wait a moment")

如何在 PySimpleGUI 中制作 9x9 InputText?

我的代码如上,它返回:

在此处输入图像描述

但我想要:

在此处输入图像描述

此外,关于sg.FilesBrowse是否可以移动或重新排列 Files 列表的顺序(传递给 Lbox)?

例如Lbox 0上有3个文件:XXX1.pdf 1:XXX2.pdf 2:XXX3.Z437175BA4191210EE004E1D9374940D

有什么办法可以移动Lbox中的订单吗? 比如: 0: XXX2.pdf 1: XXX3.pdf 2: XXX1.pdf

谢谢您的回复

对布局的列表理解会很容易。

import PySimpleGUI as sg

sg.theme('DarkBlue')
sg.set_options(font='Courier 11')

layout = [
    [sg.Input(
        str((row, col)),
        size=6,
        pad=((1, 10) if col%3==2 else (10, 1) if col%3==0 else 1 , (1, 10) if row%3==2 else (10, 1) if row%3==0 else 1),
        key=('-INPUT-', row, col)
     ) for col in range(9)] for row in range(9)]

sg.Window('Title', layout, margins=(3, 3)).read(close=True)

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM