python tkinter设置窗口出现位置
时间: 2023-09-11 13:07:16 浏览: 76
可以使用Tkinter的geometry()方法来设置窗口的位置。该方法需要一个字符串参数,格式为“宽度x高度+横坐标+纵坐标”,其中“+”符号后面的两个数字表示窗口的位置。
例如,以下代码将创建一个宽度为300像素、高度为200像素的窗口,并将其位置设置为屏幕的中心:
```
import tkinter as tk
root = tk.Tk()
root.geometry("300x200+{}+{}".format(int(root.winfo_screenwidth() / 2 - 150), int(root.winfo_screenheight() / 2 - 100)))
root.mainloop()
```
其中,winfo_screenwidth()和winfo_screenheight()方法可以获取屏幕的宽度和高度,从而计算出窗口的位置。
相关问题
python Tkinter 设置窗口透明不影响画布
可以使用`attributes`方法来设置窗口的透明度,而不影响画布。具体步骤如下:
1. 创建一个带有画布的 Tkinter 窗口。
2. 使用 `attributes` 方法来设置窗口的透明度。例如,设置窗口的透明度为 0.5:
```python
root.attributes("-alpha", 0.5)
```
这将会使得窗口半透明。
3. 在画布上绘制你想要的图形或者文字。例如,你可以在画布上添加一个文本标签:
```python
canvas.create_text(100, 100, text="Hello, World!")
```
这将会在画布上添加一个文本标签,内容为 "Hello, World!"。
完整的示例代码如下:
```python
import tkinter as tk
root = tk.Tk()
# 设置窗口大小和标题
root.geometry("300x200")
root.title("Transparent Window")
# 设置窗口透明度为 0.5
root.attributes("-alpha", 0.5)
# 创建画布
canvas = tk.Canvas(root, width=300, height=200)
canvas.pack()
# 在画布上添加一个文本标签
canvas.create_text(100, 100, text="Hello, World!")
root.mainloop()
```
运行以上代码,你将得到一个半透明的窗口,并且在画布上添加了一个文本标签。
python Tkinter 设置窗口透明,画布不透明
要设置窗口透明,可以使用 `attributes()` 方法来设置窗口属性。要设置画布不透明,可以使用 `Canvas` 组件的 `config()` 方法来设置画布属性。
下面是一个示例代码:
```python
import tkinter as tk
root = tk.Tk()
# 设置窗口透明
root.attributes("-alpha", 0.5)
# 创建画布
canvas = tk.Canvas(root, width=200, height=200, bg='white')
canvas.pack()
# 设置画布不透明
canvas.config(highlightthickness=0, bd=0)
root.mainloop()
```
在上面的代码中,`root.attributes("-alpha", 0.5)` 设置窗口透明度为 50%。`canvas.config(highlightthickness=0, bd=0)` 将画布的边框和高亮边框都设置为 0,使画布不透明。