【个人笔记】python界面美化

目录

标题栏美化

样例展示

代码

配套鼠标移动

完整展示


标题栏美化

样例展示
代码
python 复制代码
import tkinter as tk
from tkinter import ttk
from PIL import Image, ImageTk
import subprocess
import sys

def open_buy_quantity():
    window.destroy()
    subprocess.run(["python", "D:/桌面/python项目/软件使用公告.py"])
    sys.exit()

def on_close():
    window.destroy()

def maximize_window():
    window.attributes('-zoomed', True)  # Maximize the window


# 创建主窗口,并设置边框颜色和大小
window = tk.Tk()
window.title('抖音视频批量快删神器')
window.config(bg='black', bd=1)  # 设置窗口背景色为黑色,边框宽度为4
window.overrideredirect(True)  # 隐藏窗口边框
window.geometry('500x400')  # 设置窗口大小为固定值

# 创建标题栏
title_bar = tk.Frame(window, height=30, relief='raised', bg='pink')  # 设置标题栏背景色为黑色
title_bar.pack(fill='x', side='top')

# 添加标题文本
title_label = tk.Label(title_bar, text='抖音视频批量快删神器', font=('宋体', 12, 'bold'), bg='pink', fg='black')  # 设置标题文本背景色为黑色,文本颜色为白色
title_label.pack(side='left', padx=10)

# 添加最小化按钮的自定义图标
minimize_icon = Image.open('q.png')  # 替换为你的最小化按钮图标路径
minimize_icon = minimize_icon.resize((20, 20), Image.LANCZOS)
minimize_photo = ImageTk.PhotoImage(minimize_icon)

# 添加最大化按钮的自定义图标
maximize_icon = Image.open('qq.png')  # 替换为你的最大化按钮图标路径
maximize_icon = maximize_icon.resize((20, 20), Image.LANCZOS)
maximize_photo = ImageTk.PhotoImage(maximize_icon)

# 添加关闭按钮的自定义图标
close_icon = Image.open('qqq.png')  # 替换为你的关闭按钮图标路径
close_icon = close_icon.resize((20, 20), Image.LANCZOS)
close_photo = ImageTk.PhotoImage(close_icon)

# 添加最小化按钮
minimize_button = ttk.Button(title_bar, image=minimize_photo, command=window.iconify, style='Toolbutton')
minimize_button.pack(side='right', padx=5)

# 添加最大化按钮
maximize_button = ttk.Button(title_bar, image=maximize_photo, command=maximize_window, style='Toolbutton')
maximize_button.pack(side='right', padx=5)

# 添加关闭按钮
close_button = ttk.Button(title_bar, image=close_photo, command=on_close, style='Toolbutton')
close_button.pack(side='right', padx=5)

配套鼠标移动

python 复制代码
# 定义鼠标按下事件,用于实现窗口拖动
def on_mouse_down(event):
    global last_x, last_y
    last_x, last_y = event.x, event.y
 
# 定义鼠标移动事件,用于实现窗口拖动
def on_mouse_move(event):
    x, y = event.x_root - last_x, event.y_root - last_y
    window.geometry(f"+{x}+{y}")
 
# 绑定鼠标按下和移动事件
window.bind("<ButtonPress-1>", on_mouse_down)
window.bind("<B1-Motion>", on_mouse_move)

完整展示

相关推荐
三途河畔人2 分钟前
Pytho基础语法_运算符
开发语言·python·入门
Benmao⁢12 分钟前
C语言期末复习笔记
c语言·开发语言·笔记·leetcode·面试·蓝桥杯
adsadswee13 分钟前
Qt 样式与 QLinearGradient 渐变详解
开发语言·qt·qt样式表·qlineargradient·qss渐变效果
花月C38 分钟前
个性化推荐:基于用户的协同过滤算法
开发语言·后端·算法·近邻算法
脾气有点小暴1 小时前
前端页面跳转的核心区别与实战指南
开发语言·前端·javascript
2401_834517071 小时前
AD学习笔记-27 泪滴的添加和移除
笔记·学习
rit84324991 小时前
基于MATLAB的BP神经网络手写数字识别
开发语言·神经网络·matlab
独行soc1 小时前
2025年渗透测试面试题总结-275(题目+回答)
网络·python·安全·web安全·网络安全·渗透测试·安全狮
zyq~2 小时前
【课堂笔记】凸优化问题-2
笔记
San30.2 小时前
深入 JavaScript 内存机制:从栈与堆到闭包的底层原理
开发语言·javascript·udp