一个简单的记工tkinter窗口

代码分享:

导入datetime模块,用于获取当前日期

import datetime as da

导入csv模块,用于读写csv文件

import csv

导入tkinter模块,用于创建窗口和按钮

from tkinter import *

创建主窗口

app=Tk()

设置窗口大小为1048x2048,背景色为灰色

app.geometry(“1048x2048”)
app.configure(bg=“grey”)

创建标签,显示工作日志

la=Label(app,text=“工作日志”,font="Times 20 ",fg=“red”)
la.grid(padx=10,pady=10)

创建标签,显示工头姓名

la1=Label(app,text=“工头姓名:”,font=“Times 12”,fg=“red”)
la1.grid(padx=10,pady=10)

创建标签,显示师傅姓名

la2=Label(app,text=“师傅姓名:”,font=“Times 12”,fg=“red”)
la2.grid(padx=10,pady=10)

创建标签,显示工作地址

la3=Label(app,text=“工作地址:”,font=“Times 12”,fg=“red”)
la3.grid(padx=10,pady=10)

创建StringVar对象,用于存储工头姓名、师傅姓名和工作地址

v1=StringVar()
v2=StringVar()
v3=StringVar()

创建Entry控件,用于输入工头姓名、师傅姓名和工作地址

en=Entry(app,textvariable=v1)
en.grid(row=1,column=3,ipadx=12,padx=12,pady=12,ipady=12)

en1=Entry(app,textvariable=v2)
en1.grid(row=2,column=3,ipadx=12,ipady=12,padx=12,pady=12)

en2=Entry(app,textvariable=v3)
en2.grid(row=3,column=3,ipadx=12,ipady=12,padx=12,pady=12)

定义一个函数file_da,用于将工头姓名、师傅姓名、工作地址和工作时间写入csv文件

def file_da(name=“某总”):
# 获取工头姓名、师傅姓名、工作地址和工作时间
name_foreman=en.get()
name_master=en1.get()
ip=en2.get()
ti=da.datetime.now()
ye=ti.year
ma=ti.month
da_=ti.day
ymd=str(ye)+‘年’+str(ma)+‘月’+str(da_)+‘日’

# 定义一个列表,用于存储日志信息
title=['工头姓名','师傅姓名','工作地址','工作时间']
specific=[name_foreman,name_master,ip,ymd]

# 打开并追加到csv文件
with open(f"{ma}月记工日志.csv","a",newline="") as f_csv:
	# 创建csv写入器
	writer=csv.writer(f_csv)
	
	# 写入日志信息
	writer.writerow(title)
	writer.writerow(specific)

创建按钮,用于调用file_da函数

b1=Button(app,text=“保存”,fg=“red”)
b1.grid(row=4,column=0)

创建按钮,用于退出程序

b2=Button(app,text=“退出”,command=app.quit,fg=“blue”)
b2.grid(row=5,column=0,padx=12,pady=12)

绑定按钮事件,调用file_da函数

b1.bind("",file_da)
b1.bind("")

进入主循环,等待用户操作

mainloop()
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/563239.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【网络协议】 TCP与UDP协议区别及应用场景深度分析

1. TCP与UDP简介 1.1 TCP 1.1 定义 TCP(TransmissionControl Protocol)传输控制协议。 是一种可靠的、面向连接的协议(eg:打电话)、传输效率低全双工通信(发送缓存&接收缓存)、面向字节流。使用TCP的应…

ROS1快速入门学习笔记 - 01Linux基础

目录 一、Linux极简基础 二、C与Python极简基础 1. for循环 2. while循环 3. 面向对象 一、Linux极简基础 终端快捷键:ctrlaltt 命令行的操作方式 查看当前终端所在路径:pwd切换路径cd;例如cd /home/ 进入home文件夹;cd …

【精】Devops实战学习CI/CD落地方案#CI篇#

目录 先有个大概了解 基本概念 CI/CD Devops 阿里云效 devops产品 K8s jenkins docker git maven 知行合一,上手操作 实操记录 安装VMware 安装并配置虚拟机 安装并配置docker docker安装 修改镜像源(关键且易出错) CentOS…

【数据结构-树和二叉树-森林-哈夫曼树】

目录 1 树1.1 树的描述(基本术语) 2 二叉树(树的度最大为2)2.1 注意事项-五种基本形态2.2 二叉树的抽象数据类型定义 3 二叉树的性质3.1 两种特殊形式的二叉树-重点会计算3.2 题目练习: 4 二叉树的存储结构4.1 顺序存储…

竞逐智能家居大模型:美的“蓄力”,海尔“疾行”

配图来自Canva可画 随着ChatGPT火热出圈,AI大模型便成为了各行各业必争的高地。“BAT”等互联网大厂、华为、小米等通讯巨头,以及一些垂直AI公司,都开始在大模型市场积极布局。众所周知,发展大模型的关键在于应用场景的落地&…

超星图书转成PDF格式

转为pdf 为避免浪费您的时间,本篇转载文章不值得花费您的宝贵时间阅读 方法一 感谢医学插画动画杜鹏 Roison An两位提供的方法,经试验后简化了一下,得出以下方法:1、使用超星打开你想要转换的图书2、依次打开本书的所有页面,不要…

Linux基础和常见命令速览

来源:Linux 基础知识总结 | JavaGuide 一、Linux文件系统 1. 文件系统 Linux 系统中的一个重要的概念:一切都是文件。 在 Linux 操作系统中,一切被操作系统管理的资源,如网络接口卡、磁盘驱动器、打印机、输入输出设备、普通文件…

(避雷指引:管理页面超时问题)windows下载安装RabbitMQ

一、背景: 学习RabbitMQ过程中,由于个人电脑性能问题,直接装在windows去使用RabbitMQ,根据各大网友教程,去下载安装完之后,使用web端进行简单的入门操作时,总是一直提示超时,要么容…

Electron+Vue3整合-开发时整合-全部ts开发 + 一条命令启动vue3和electron两个服务

说明 本文介绍一下 Electron Vue3 的整合的中级操作。实现的效果是 : 1、一个正常的Vue3项目; 2、整合加入 Electron 框架 :开发时只执行一条命令,启动 vue 项目 后 再启动 electron;electron 的开发使用 typescript…

Office疑难杂症-Word页码重复无法修改

在现代办公环境中,Microsoft Office 套件扮演着不可或缺的角色,尤其是 Word 文档处理软件,在日常生活和工作中的应用广泛。然而,即使是这样成熟的软件,也不免有一些令人头疼的技术问题。本文将详细介绍如何解决Word中页…

深度学习之图像分割从入门到精通——基于unet++实现细胞分割

模型 import torch from torch import nn__all__ [UNet, NestedUNet]class VGGBlock(nn.Module):def __init__(self, in_channels, middle_channels, out_channels):super().__init__()self.relu nn.ReLU(inplaceTrue)self.conv1 nn.Conv2d(in_channels, middle_channels, …

回归预测 | Matlab实现BO-RF贝叶斯优化随机森林多变量回归预测

回归预测 | Matlab实现BO-RF贝叶斯优化随机森林多变量回归预测 目录 回归预测 | Matlab实现BO-RF贝叶斯优化随机森林多变量回归预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现BO-RF贝叶斯优化随机森林多变量回归预测; 2.输入7个特征&#xf…

互联网技术知识点总览——数据库知识点框架

简介 本文对数据库的知识点整体框架进行梳理和分享如下:

Vue3+TS版本Uniapp:封装uni.request请求配置

作者:前端小王hs 阿里云社区博客专家/清华大学出版社签约作者✍/CSDN百万访问博主/B站千粉前端up主 封装请求配置项 封装拦截器封装uni.request 封装拦截器 uniapp的封装逻辑不同于Vue3项目中直接使用axios.create()方法创建实例(在create方法中写入请求…

Oracle中的视图

1- 什么是视图 视图是一个虚拟表 视图是由sql查询语句产生的 视图真实存在 但是不存储数据 视图中的数据 只是对 基表(源数据表) 中的数据的引用 总的来说 视图可以简化数据 用户,订单,物流 三个表进行关联 吧很复杂的sql查询语句存储成一个视图 …

【 AIGC 研究最新方向(下)】面向平面、视觉、时尚设计的高可用 AIGC 研究方向总结

目前面向平面、视觉、时尚等设计领域的高可用 AIGC 方向有以下 4 种: 透明图层生成可控生成图像定制化SVG 生成 本篇(下篇)介绍 3、4,上篇在:https://blog.csdn.net/weixin_44212848/article/details/138035279?spm…

CSS——高级选择器

层次的选择器&#xff1a; <1> 后代选择器&#xff1a; 格式&#xff1a; 标签1 标签2{} 解释&#xff1a; 标签1 不生效&#xff0c;被标签1 嵌套中的 标签2才生效 举例&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta charse…

JVM常见的垃圾回收器

1、回收方法区&#xff1a; 方法区回收价值很低&#xff0c;主要回收废弃的常量和无用的类。 方法区中的存储&#xff1a; 方法区中存储的是加载的类的信息&#xff0c;常量&#xff0c;静态变量&#xff0c;即时编译后的代码等数据&#xff0c;所以回收的对象也就是这些内…

go+react实现远程vCenter虚拟机管理终端

文章目录 React-VcenterDemoQuick Start React-Vcenter 基于go & react实现远程vSphere vcenter虚拟机终端console页面&#xff0c;提供与vcenter管理中的Launch Web Console相同的功能。 项目地址&#xff1a;react-vcenter Demo URL: http://localhost:3000 Quick St…
最新文章