Хорошо, так что я учусь о дробилках в WxPython и мне было интересно, если это можно было сделать что-то вроде:Sizers ... - WxPython
==============================================
|WINDOW TITLE _ [] X|
|============================================|
|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
|xxxxxxxxxxxxxxxxxxNOTEBOOKxxxxxxxxxxxxxxxxxx|
|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
|________ ___________|
|IMAGE | |LoginForm |
|________| |___________|
==============================================
ПРИМЕЧАНИЯ: Да, я буквально получил от этого wxPython - picking the right sizer to use in an application
с ТЕТРАДЬЮ расширена слева и снизу, изображение, чтобы выровнять по левому нижнему и LoginForm выравнивать направо и снизу, и мне удалось сделать почти все, но теперь у меня есть проблема ..
проблема заключается в том, что я не может совмещать Logform и изображение отдельно (im, используя Box Sizers), и я w ould нравится.
EDIT: Так что каждый может увидеть, что я имею в виду: «Да, и то, что я имел в виду, в основном, что если бы я изменил выравнивать, это будет влиять как LoginForm и изображение .. Например, если я установил выровняйте вправо, изображение и форма входа будут выровнены вправо из-за: sizer.Add (sizer4,0, wx.ALIGN_RIGHT | wx.RIGHT, 10). Надеюсь, вы, ребята, можете понять на этот раз »
это код, который я использую, что вызывает проблему на данный момент, любая помощь приветствуется. ПРИМЕЧАНИЕ. Код может быть (HUGELY) неаккуратным, поскольку я все еще участвую в коробке. Heres тестовый код:
import wx
class Sizerframe(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, -1, 'sizertestframe',size=(790, 524))
p = wx.Panel(self)
nb = wx.Notebook(p, size = (750, 332))
button = wx.Button(p, -1, "loginform1rest", size=(94,23))
button1 = wx.Button(p, -1, "Login", size=(94,23))
button2 = wx.Button(p, -1, "Cancel", size=(94,23))
imagebutton = wx.Button(p, -1, "imagebutton", size=(94,23))
sizer = wx.BoxSizer(wx.VERTICAL)
sizer1 = wx.BoxSizer(wx.HORIZONTAL)
sizer1.Add(nb,1, wx.EXPAND)
sizer.Add(sizer1,1, wx.LEFT | wx.RIGHT | wx.EXPAND, 10)
sizer.Add((-1, 25))
sizer2 = wx.BoxSizer(wx.VERTICAL)
sizer2.Add(button, 0)
sizer3 = wx.BoxSizer(wx.HORIZONTAL)
sizer3.Add(button1, 0)
sizer3.Add(button2,0, wx.LEFT, 5)
sizer2.Add(sizer3, 0)
sizer4 = wx.BoxSizer(wx.HORIZONTAL)
sizer4.Add(imagebutton, 1, wx.LEFT | wx.BOTTOM)
sizer4.Add(sizer2,0, wx.RIGHT | wx.BOTTOM , 5)
sizer.Add(sizer4,0, wx.ALIGN_RIGHT | wx.RIGHT, 10)
p.SetSizer(sizer)
def main():
app = wx.App()
frame = Sizerframe()
frame.Show()
app.MainLoop()
if __name__ == '__main__':
main()
wxGlade. Изучайте, живите, любите. Это не идеально, но это намного лучше, чем ручное кодирование с нуля. –
Спасибо за совет, хотя мне все равно хотелось бы узнать, удалось ли решить мою проблему :). – dpswt
@Francisco - Не могли бы вы разместить полный код для минимального, но рабочего примера? Пожалуйста, как можно проще, так что никаких изображений, регистрационных ящиков и т. Д., А просто используйте кнопки или панели. Есть, вероятно, лучшие примеры, но я надеюсь на что-то вроде того, что я разместил здесь: http://stackoverflow.com/questions/2546979/2549783#2549783 – tom10