python - wxPython小部件的像素完美对齐?
问题描述
概括:
我正在尝试在BoxSizer底部水平对齐多个 wxPython 小部件,但它们仅相差一个像素,如下面的屏幕截图所示:
如您所见,BitmapToggleButton的位置比TextCtrl小部件高一个像素。wxPython检查工具显示 Button 甚至高出两个像素,但在屏幕截图中,它只有一个。我认为这与边界计算有关,但我不知道。
如果我在下面的代码中省略了对齐标志,小部件会与中心对齐,但 Button 在相反方向上仍然是一个像素。
代码:
header = wx.BoxSizer(wx.HORIZONTAL)
self.label_user = wx.StaticText(panel, label="User:")
self.input_user = wx.TextCtrl(panel)
self.edit_user = wx.BitmapToggleButton(panel, label=img_edit, style=wx.BU_EXACTFIT)
header.Add(...) # more widgets that are not bottom-aligned
header.Add(self.label_user, flag=wx.ALIGN_BOTTOM)
header.Add(5, -1)
header.Add(self.input_user, flag=wx.ALIGN_BOTTOM)
header.Add(self.lock_user, flag=wx.ALIGN_BOTTOM)
main_sizer.Add(header, flag=wx.LEFT | wx.TOP | wx.RIGHT | wx.EXPAND, border=views.constants.MARGIN)
解决方案
推荐阅读
- javascript - 使用 for 循环在 Class Constructor 中创建 x 数量的新对象,然后在 JavaScript 中修改它们
- r - 有没有办法在 R Shiny 中*输出*星级?
- java - Java 以什么顺序评估这个特定的表达式: System.out.println("g."+ " big " + 2*3);
- r - 如何融化数据框
- c - Fgets 在第二次调用时被忽略
- c - 为什么当条件满足时我的while循环不执行它的功能?
- javascript - Electron 5 和 6 是否有一些更改会阻止入站 IPC 连接?
- r - renderMenu 导致奇怪的格式,R Shiny Dashboard
- excel - 如何在 Excel VBA 中的 If-else 语句中使用字符串文本
- transcrypt - 将 Transcrypt 与传单地图一起使用