Tkinter--GUI布局

 

http://blog.csdn.net/xxb2008
#-*- coding: utf-8 -*-

"""
Tkconstants.py -- 常量类

Tkinter布局

pack 参数说明
fill -- x 横向填充(默认,各组件自上而下), y竖向填充(各组件自左往右),both都填充
expand -- 1 父外框大小改变时,自动扩充大小,0为false
side -- left right top bottom 停靠在父组件的哪一边上
anchor -- 对齐方式

grid  参数说明
row -- 行号
rowspan -- 合并行
column -- 列号
columnspan -- 合并列
sticky -- 组件紧靠所在单元格的某一边角

grid填充(自动缩放)--同 pack的 expand属性
root.columnconfigure(0, weight=1)
root.rowconfigure(0, weight=1)
frame.grid(row=0, column=0, sticky="nsew")

下面是程序融合了 pack填充(自动缩放)和 grid填充(自动缩放)与及 多组件整合布局
http://blog.csdn.net/xxb2008
"""

import Tkinter


class MainFrame(Tkinter.Frame):
    def __init__(self, master=None):
        Tkinter.Frame.__init__(self, master)
        self.grid(row=0, column=0, sticky="nsew")
        self.createFrame()

    def createFrame(self):
        self.frameTop = Tkinter.Frame(self)
        self.frameTop.pack(fill="x")

        self.labelFilePaths = Tkinter.Label(self.frameTop, text="文件路径:", width=10)
        self.labelFilePaths.pack(fill="y", expand=0, side=Tkinter.LEFT)

        self.textFilePaths = Tkinter.Text(self.frameTop, height=10)
        self.textFilePaths.pack(fill="both", expand=1, side=Tkinter.LEFT)

        self.frameCenter = Tkinter.Frame(self)
        self.frameCenter.pack(fill="x")

        self.frameBottom = Tkinter.Frame(self)
        self.frameBottom.pack(fill="x")



        #self.labelFilePaths = Tkinter.Label(self, text="文件路径:", width=10)
        #self.labelFilePaths.grid(row=0, column=0, sticky="w")

        #self.textFilePaths = Tkinter.Text(self.frame, height=10)
        #self.textFilePaths.pack(fill="both")
        #self.textFilePaths.grid(row=1, column=0, sticky="nsew")


def main():
    root = Tkinter.Tk()
    root.columnconfigure(0, weight=1)
    root.rowconfigure(0, weight=1)
    root.geometry('640x360')  #设置了主窗口的初始大小960x540

    app = MainFrame(root)
    app.mainloop()


if __name__ == "__main__":
    main()


 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值