分享
 
 
 

wxPython代码编写系列之wxScrolledPanel示例

王朝other·作者佚名  2008-05-18
窄屏简体版  字體: |||超大  

[myphp]

#/usr/bin/env python

# -*- coding:gb2312 -*-

#-----------------------------------------------

# 演示滚动窗口的程序

#-----------------------------------------------

from wxPython.wx import *

from wxPython.lib.scrolledpanel import wxScrolledPanel

#注意控件wxScrolledPanel是在包wxPython.lib.scrolledpanel中

text = "one tow buckle my shoe three four shut door five six pick up sticks seven eight lay them straight nine ten big fat hen"

#定义一个滚动窗口类

class TestPanel(wxScrolledPanel):

def __init__(self, parent):

wxScrolledPanel.__init__(self, parent, -1)

vbox = wxBoxSizer(wxVERTICAL)

desc = wxStaticText(self, -1, u"这是wxScrolledPanel的示例了")

desc.SetForegroundColour("Blue")

vbox.Add(desc, 0, wxALIGN_LEFT|wxALL, 5)

vbox.Add(wxStaticLine(self, -1, size=(1024, -1)),0, wxALL, 5)

vbox.AddSpacer(20, 20)

words = text.split()

panel1 = wxScrolledPanel(self, -1, size=(120, 300),style = wxTAB_TRAVERSAL|wxSUNKEN_BORDER)

fgs1 = wxFlexGridSizer(cols=2, vgap=4, hgap=4)

for word in words:

label = wxStaticText(panel1, -1, word + ":")

tc = wxTextCtrl(panel1, -1, word, size=(50, -1))

fgs1.Add(label, flag=wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL)

fgs1.Add(tc, flag=wxEXPAND|wxRIGHT, border=25)

panel1.SetSizer(fgs1)

panel1.SetAutoLayout(1)

panel1.SetupScrolling(scroll_x=False)

panel2 = wxScrolledPanel(self, -1, size=(350, 40),style=wxTAB_TRAVERSAL|wxSUNKEN_BORDER)

panel3 = wxScrolledPanel(self, -1, size=(200, 100),style = wxTAB_TRAVERSAL|wxSUNKEN_BORDER)

fgs2 = wxFlexGridSizer(cols=25, vgap=4, hgap=4)

fgs3 = wxFlexGridSizer(cols=5, vgap=4, hgap=4)

for i in range(len(words)):

word = words[i]

if i % 5 != 4:

label2 = wxStaticText(panel2, -1, word)

fgs2.Add(label2, flag=wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL)

label3 = wxStaticText(panel3, -1, word)

fgs3.Add(label3, flag=wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL)

else:

tc2 = wxTextCtrl(panel2, -1, word, size=(50, -1))

fgs2.Add(tc2, flag=wxLEFT, border=5)

tc3 = wxTextCtrl(panel3, -1, word)

fgs3.Add(tc3, flag=wxLEFT, border=5)

panel2.SetSizer(fgs2)

panel2.SetAutoLayout(1)

panel2.SetupScrolling(scroll_y=False)

panel3.SetSizer(fgs3)

panel3.SetAutoLayout(1)

panel3.SetupScrolling()

hbox = wxBoxSizer(wxHORIZONTAL)

hbox.AddSpacer(20, 20)

hbox.Add(panel1, 0)

hbox.AddSpacer(20, 20)

vbox2 = wxBoxSizer(wxVERTICAL)

vbox2.Add(panel2, 0)

vbox2.AddSpacer(20, 20)

vbox2.Add(panel3, 0)

vbox2.AddSpacer(20, 10)

hbox.Add(vbox2, 5)

vbox.AddSizer(hbox, 0)

self.SetSizer(vbox)

self.SetAutoLayout(1)

class MyFrame(wxFrame):

def __init__(self):

wxFrame.__init__(self, None, -1, u"滚动窗口", size=(800, 600))

FG = TestPanel(self)

class MyApp(wxApp):

def OnInit(self):

f = MyFrame()

f.Show(true)

self.SetTopWindow(f)

return true

if __name__ == "__main__":

a = MyApp(0)

a.MainLoop()

[/myphp]

下面是运行的截图:

[myimg]upload/wxscrolled.png[/myimg]

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有