expand_y breaks Push()
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 42/100
Direzione di ricerca
Start by running the supplied Python sample on FreeSimpleGUI 5.2.0.post1 and inspect the Push() and Column() layout behavior when both columns use expand_y=True. Verify whether the columns can remain vertically expanded while Push() separates them horizontally; done means the fruit column is left-aligned, the cards column is right-aligned, and both fill the window height.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
FreeSimpleGUI version 5.2.0.post1
Python version 3.10.12 on Ubuntu 22.04
I have had difficulty making the Push() function work as the documentation describes. The following code shows the issue. The intent is to have two columns, one containing a Listbox of fruit justified to the left edge of the window and the other containing a Listbox of playing cards justified to the right edge of the window.
When both columns have expand_y = True, the resulting GUI has both columns justified to the left despite having a Push() between them in the window layout. If I comment out the expand_y = True line from the Cards Column (just below the line # This breaks Push()), then suddenly the Push() works and the Cards Column is justified to the right edge. Of course, it is no longer extended vertically the way I want it.
Sample code:
import FreeSimpleGUI as sg
default_font = ("Arial", 16)
### FRUIT COLUMN ###
fruit_header = sg.Text('Fruit', justification = 'center', expand_x = True)
fruit_listbox = sg.Listbox(values = ['apple', 'banana', 'clementine', 'durian'],
key = '-FRUIT-', size = (40, None) )
fruit_column = sg.Column( [ [fruit_header], [fruit_listbox] ],
expand_y=True,
background_color = 'orange')
### CARDS COLUMN ###
cards_header = sg.Text('Cards', justification = 'center', expand_x = True)
cards_listbox = sg.Listbox(values = ['King', 'Queen', 'Eight', 'Joker'],
key = '-CARDS-', size = (40, None) )
cards_column = sg.Column( [ [cards_header], [cards_listbox] ],
# This breaks Push()
expand_y = True,
background_color = 'purple')
layout = [ [fruit_column, sg.Push(), cards_column] ]
# Create the Window
window = sg.Window('Justification Test', layout, resizable=True, finalize=True,
size=sg.Window.get_screen_size(), location=(0,0),
font = default_font)
window.bind('<Escape>', '-ESCAPE-')
# Event Loop to process "events" and get the "values" of the inputs
while True:
event, values = window.read()
if event in (sg.WIN_CLOSED, '-ESCAPE-'):
break
window.close()
Is there a way to have both columns extend the entire height of the window while also being justified to opposite edges horizontally?
- Lingua principale
- Python
- Stelle
- 867
- Fork
- 106
- Merge medio
- 1m
- PR unite (30g)
- 2
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di spyoungtech/FreeSimpleGUI
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
spyoungtech/FreeSimpleGUI#109 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
spyoungtech/FreeSimpleGUI#86 · 1 commento · 2 reazioni ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 58/100
spyoungtech/FreeSimpleGUI#101 · 8 reazioni ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
spyoungtech/FreeSimpleGUI#99 · 1 reazione ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
spyoungtech/FreeSimpleGUI#95 ·
Tutte le issue di spyoungtech/FreeSimpleGUI
Issue simili
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
stephrobert/dsoxlab#238 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
sublimehq/package_control#1780 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
nwg-piotr/nwg-displays#145 ·