|
3888 | 3888 | </div>
|
3889 | 3889 |
|
3890 | 3890 | <h4 id="3-布局介绍"><a href="#3-布局介绍" class="headerlink" title="3.布局介绍"></a>3.布局介绍</h4><p><strong>pack()方式</strong><br>side 设置组件相对于父组件的摆放位置</p>
|
3891 |
| -<figure class="highlight plain"><table><tr><td class="code"><pre><span class="line"># 导入tkinter模块</span><br><span class="line">import tkinter</span><br><span class="line"># 创建主窗口对象</span><br><span class="line">root = tkinter.Tk()</span><br><span class="line"># 设置窗口大小(最小值:像素)</span><br><span class="line">root.minsize(500,500)</span><br><span class="line"># 创建一个按钮组件</span><br><span class="line">btn0 = tkinter.Button(root,text = '按钮1')</span><br><span class="line"># 默认上边或 side = 'top'</span><br><span class="line">btn0.pack()</span><br><span class="line">btn1 = tkinter.Button(root,text = '按钮1')</span><br><span class="line"># 下面</span><br><span class="line">btn1.pack(side = 'bottom')</span><br><span class="line">btn2 = tkinter.Button(root,text = '按钮2')</span><br><span class="line"># 左边</span><br><span class="line">btn2.pack(side = 'left')</span><br><span class="line">btn3 = tkinter.Button(root,text = '按钮2')</span><br><span class="line"># 右边</span><br><span class="line">btn3.pack(side = 'right')</span><br><span class="line"># 加入消息循环</span><br><span class="line">root.mainloop()</span><br><span class="line">``` </span><br><span class="line"></span><br><span class="line">ipadx,ipady 设置组件的内部间距</span><br><span class="line"></span><br><span class="line">``` </span><br><span class="line">btn0 = tkinter.Button(root,text = '按钮1')</span><br><span class="line"># 设置按钮中文字到边缘的间距</span><br><span class="line">btn0.pack(ipadx = 20,ipady = 20)</span><br><span class="line">``` </span><br><span class="line"></span><br><span class="line">padx,pady 设置多个组件外部间距</span><br><span class="line"> </span><br><span class="line">``` </span><br><span class="line">btn0 = tkinter.Button(root,text = '按钮1')</span><br><span class="line"># padx设置组件外部左右间距,pady设置组件外部上下间距</span><br><span class="line">btn0.pack(padx = 20,pady = 20)</span><br><span class="line">``` </span><br><span class="line">fill 设置按钮站一行或者一列</span><br></pre></td></tr></table></figure> |
3892 |
| -<p>btn1 = tkinter.Button(root,text = ‘Hello World!!’)# 该组件站水平方向的最大位</p> |
3893 |
| -<figure class="highlight plain"><table><tr><td class="code"><pre><span class="line"></span><br><span class="line">expand 设置side是否失效</span><br><span class="line"></span><br><span class="line">``` </span><br><span class="line">btn1 = tkinter.Button(root,text = 'Hello World!!')</span><br><span class="line"># yes时side失效,按钮位于窗口中间,按钮占用所有水平和垂直的空间,此时fill = both 按钮站全部空间</span><br><span class="line">btn1.pack(expand = 'yes',fill = 'both')</span><br><span class="line">``` </span><br><span class="line"></span><br><span class="line">注意:仅仅使用pack无法实现表格方式,必须借助Franme组件才可以实现,非常复杂。</span><br><span class="line"></span><br><span class="line">**grid()方式**</span><br><span class="line">row 设置行数 默认为0</span><br><span class="line">column 设置列数 默认为0</span><br><span class="line"></span><br><span class="line">``` </span><br><span class="line">btn1 = tkinter.Button(root,text = '按钮1')</span><br><span class="line">btn1.grid()</span><br><span class="line">btn2 = tkinter.Button(root,text = '按钮2')</span><br><span class="line">btn2.grid(row = 1,column = 1)# 设置按钮位置</span><br><span class="line">btn3 = tkinter.Button(root,text = '按钮3')</span><br><span class="line">btn3.grid(row = 0,column = 1)</span><br></pre></td></tr></table></figure> |
| 3891 | +<figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">#导入tkinter模块</span><br><span class="line">import tkinter</span><br><span class="line"># 创建主窗口对象</span><br><span class="line">root = tkinter.Tk()</span><br><span class="line"># 设置窗口大小(最小值:像素)</span><br><span class="line">root.minsize(500,500)</span><br><span class="line"># 创建一个按钮组件</span><br><span class="line">btn0 = tkinter.Button(root,text = '按钮1')</span><br><span class="line"># 默认上边或 side = 'top'</span><br><span class="line">btn0.pack()</span><br><span class="line">btn1 = tkinter.Button(root,text = '按钮1')</span><br><span class="line"># 下面</span><br><span class="line">btn1.pack(side = 'bottom')</span><br><span class="line">btn2 = tkinter.Button(root,text = '按钮2')</span><br><span class="line"># 左边</span><br><span class="line">btn2.pack(side = 'left')</span><br><span class="line">btn3 = tkinter.Button(root,text = '按钮2')</span><br><span class="line"># 右边</span><br><span class="line">btn3.pack(side = 'right')</span><br><span class="line"># 加入消息循环</span><br><span class="line">root.mainloop()</span><br></pre></td></tr></table></figure> |
| 3892 | + |
| 3893 | +<p>ipadx,ipady 设置组件的内部间距</p> |
| 3894 | +<figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">btn0 = tkinter.Button(root,text = '按钮1')</span><br><span class="line"># 设置按钮中文字到边缘的间距</span><br><span class="line">btn0.pack(ipadx = 20,ipady = 20)</span><br></pre></td></tr></table></figure> |
| 3895 | + |
| 3896 | +<p>padx,pady 设置多个组件外部间距</p> |
| 3897 | +<figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">btn0 = tkinter.Button(root,text = '按钮1')</span><br><span class="line"># padx设置组件外部左右间距,pady设置组件外部上下间距</span><br><span class="line">btn0.pack(padx = 20,pady = 20)</span><br></pre></td></tr></table></figure> |
| 3898 | + |
| 3899 | +<p>fill 设置按钮站一行或者一列</p> |
| 3900 | +<figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">btn1 = tkinter.Button(root,text = 'Hello World!!')# 该组件站水平方向的最大位</span><br></pre></td></tr></table></figure> |
| 3901 | + |
| 3902 | +<p>expand 设置side是否失效</p> |
| 3903 | +<figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">btn1 = tkinter.Button(root,text = 'Hello World!!')</span><br><span class="line"># yes时side失效,按钮位于窗口中间,按钮占用所有水平和垂直的空间,此时fill = both 按钮站全部空间</span><br><span class="line">btn1.pack(expand = 'yes',fill = 'both')</span><br></pre></td></tr></table></figure> |
| 3904 | + |
| 3905 | +<p>注意:仅仅使用pack无法实现表格方式,必须借助Franme组件才可以实现,非常复杂。</p> |
| 3906 | +<p><strong>grid()方式</strong><br>row 设置行数 默认为0<br>column 设置列数 默认为0</p> |
| 3907 | +<figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">btn1 = tkinter.Button(root,text = '按钮1')</span><br><span class="line">btn1.grid()</span><br><span class="line">btn2 = tkinter.Button(root,text = '按钮2')</span><br><span class="line">btn2.grid(row = 1,column = 1)# 设置按钮位置</span><br><span class="line">btn3 = tkinter.Button(root,text = '按钮3')</span><br><span class="line">btn3.grid(row = 0,column = 1)</span><br></pre></td></tr></table></figure> |
3894 | 3908 |
|
3895 | 3909 | <p>rowspan 设置跨行数量<br>cloumnspan 设置跨列数量<br>ipadx,ipady 设置组件内部间距</p>
|
3896 | 3910 | <figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">btn1 = tkinter.Button(root,text = '按钮1')</span><br><span class="line">btn1.grid()</span><br><span class="line">btn2 = tkinter.Button(root,text = '按钮2')</span><br><span class="line">btn2.grid(row = 1,column = 0)# 设置按钮位置</span><br><span class="line">btn2 = tkinter.Button(root,text = '按钮2')</span><br><span class="line">btn2.grid(row = 0,column = 2,rowspan = 2,ipady = 15)</span><br><span class="line">btn2 = tkinter.Button(root,text = '按钮2')</span><br><span class="line">btn2.grid(row = 2,column = 0,columnspan = 3,ipadx = 20)</span><br></pre></td></tr></table></figure>
|
|
0 commit comments