好了,我正在學習有關wxPython的施膠劑,我想知道是否有可能做這樣的事情:尺寸儀... - wxPython的
==============================================
|WINDOW TITLE _ [] X|
|============================================|
|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
|xxxxxxxxxxxxxxxxxxNOTEBOOKxxxxxxxxxxxxxxxxxx|
|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
|________ ___________|
|IMAGE | |LoginForm |
|________| |___________|
==============================================
注意:是的,我從字面上wxPython - picking the right sizer to use in an application得到這個
筆記本擴展到左和底部,圖像左對齊和底部對齊登錄表單到右側和底部,我設法做的幾乎一切,但現在我有一個問題..
的問題是,我無法單獨對齊Loginform和Image(即時使用Box Sizer),而我也是我願意。
編輯:讓每個人都能明白我的意思: 「哦,我指的是,基本上,如果我改變了對齊,這將同時影響LoginForm的和圖像。例如,如果我設置對齊到右側,因爲:sizer.Add(sizer4,0,wx.ALIGN_RIGHT | wx.RIGHT,10),圖像和登錄形式都將對齊到右側。希望大家可以理解這一次「
This是我正在使用的代碼目前正在導致問題,任何幫助表示讚賞。 注意:由於我仍在學習Box Sizer,因此代碼可能(很害羞)。 繼承人一個測試代碼:
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。學習它,活下去,喜歡它。這並不完美,但比從頭開始手寫代碼要好得多。 – 2010-04-12 03:29:46
感謝您的建議,雖然我仍然想知道是否有可能解決我的問題:)。 – dpswt 2010-04-12 03:33:21
@Francisco - 你可以發佈一個最小但工作的例子的完整代碼?請儘可能簡單,不要使用圖像,登錄框等,只需使用按鈕或面板。有可能更好的例子,但我希望像我在這裏發佈的東西:http://stackoverflow.com/questions/2546979/2549783#2549783 – tom10 2010-04-12 03:50:10