PySimpleGUI中滑块与文本/按钮的垂直对齐问题
解决PySimpleGUI滑块与文本、按钮垂直对齐的问题
针对滑块和文本、按钮垂直错位的问题,可以通过以下几种实用方法调整:
方法1:调整滑块的pad参数
通过设置滑块的上下内边距,将其向上偏移以匹配其他元素的对齐位置。修改后的代码示例:
[sg.Text("Threshold:"), sg.Slider(range=(0, 255), default_value=0, orientation='h', size=(20, 15), enable_events=True, key="-THRESHOLD-", pad=(0, (0, 8))), sg.Button("Disable Threshold", key="-THRESHOLD_TOGGLE-", size=(14,1))]
这里的pad=(0, (0, 8))表示左右边距为0,上边距0、下边距8,通过增加下边距把滑块向上推,你可以根据实际显示效果调整8这个数值。
方法2:设置滑块的vertical_alignment属性
直接给滑块元素指定垂直对齐方式为顶部,让它和同行其他元素的顶部对齐:
[sg.Text("Threshold:"), sg.Slider(range=(0, 255), default_value=0, orientation='h', size=(20, 15), enable_events=True, key="-THRESHOLD-", vertical_alignment='top'), sg.Button("Disable Threshold", key="-THRESHOLD_TOGGLE-", size=(14,1))]
方法3:用Column统一行内元素对齐基准
如果前两种方法效果不理想,可以把整行元素放入sg.Column中,强制以顶部为对齐基准:
sg.Column([[sg.Text("Threshold:"), sg.Slider(range=(0, 255), default_value=0, orientation='h', size=(20, 15), enable_events=True, key="-THRESHOLD-"), sg.Button("Disable Threshold", key="-THRESHOLD_TOGGLE-", size=(14,1))]], vertical_alignment='top')
内容的提问来源于stack exchange,提问作者James
相关产品推荐
相关产品推荐

