18.2.22 create_window(position, **options)
可以在画布控件中放置其他tkinter控件。放置的方法就是使用窗口组件。一个窗口组件只能容纳一个控件。如果要放置多个控件,可以把这些控件作为Frame控件的子控件,将Frame控件放入窗口组件中,就可以实现多个子控件的放置。
控件必须是画布控件的子控件,否则无法显示。
在 position 指定的位置(x, y)创建一个窗口组件
(1)position: 坐标(x,y)
(2)options: 选项的具体含义
选项 | 含义 |
---|---|
anchor | 指定窗口组件在 position 参数的相对位置,可以是 N, NE, E, SE, S, SW, W, NW, 或 CENTER 来定位(EWSN代表东西南北,上北下南左西右东)。默认值是 CENTER |
height | 指定窗口组件的高度 |
state | 指定窗口组件的状态。可以是 NORMAL,DISABLED(不可用,不响应事件)和 HIDDEN(隐藏)。默认值是 NORMAL |
tags | 为创建的窗口组件添加标签 |
width | 指定窗口组件的宽度 |
window | 指定一个窗口组件 |
18.2.22.1 anchor | |
指定如何在坐标点(x,y)放置窗口组件。有N, NE, E, SE, S, SW, W, NW, 或 CENTER,具体的说明见18.2.21.3的说明。 |
import tkinter as tk
root=tk.Tk()
root.geometry('320x240')
b1=tk.Canvas(root)
b2=tk.Entry(b1)
win=b1.create_window(160,40,window=b2,anchor=tk.CENTER)
b1.pack()
root.mainloop()
结果:
18.2.22.2 height
指定窗口组件的高度。
18.2.22.3 state
窗口组件的状态,有三种:NORMAL、DISABLED和HIDDEN。
18.2.22.4 tags
定义窗口组件的标签。也可以通过其他方法设置。
18.2.22.5 width
定义窗口组件的宽度。
18.2.22.6 window
指定要加入窗口中的控件。该控件必须是画布控件的子控件。见18.2.22.1的说明。