一、主程序界面如下(界面未美化,个别信息模糊处理了,暂完成功能) 二、各模块代码实现过程总结 主程序窗口:和登录窗口一样,继承Tk来创建窗口,定义一些重要的变量 # -*- c
一、主程序界面如下(界面未美化,个别信息模糊处理了,暂完成功能)
二、各模块代码实现过程总结
主程序窗口:和登录窗口一样,继承Tk来创建窗口,定义一些重要的变量
# -*- coding: utf-8 -*-from tkinter import *
from tkinter.ttk import *
import os,datetime
import tkinter.messagebox
from com.main.Tools import readConfigini,iplistGetuserorPassword,Log,changePassword,load_file_info,admin_changePassword,admin_deluser,admin_adduser,workTimeCheck
class MainWindow(Tk):
def __init__(self,current_user,current_time):
super().__init__()#初始化父类
self.title("自动化发布主控制台")
self.login_user = current_user #当前登陆的用户名
self.login_time = current_time#当前用户登录的时间
self.ip_list_select =[]#ip列表里选择哪些IP
self.vdn_list_select = []#vdn列表里选择哪些IP
self.ip_list_readConfig=[]#读取所有配置里所有的IP项目及用户密码
self.newgslfile_list=[]#读取发布材料目录gsl文件
self.newnotefile_list = []#读取发布材料目录note文件
self.newinifile_list = []#读取发布材料目录ini文件
self.geometry("1013x640+180+10") #"widthxheight+x+y"设置窗口大学及位置坐标
self.resizable(0,0)#窗口大小不可调整
self["bg"]="royalblue"
self.file_check=False #发布材料目录是否已经检查过
self.file_backup =False#是否备份生产文件
self.release_stop=False#发布是否暂停
self.release_ack =False#非工作时间,是否发布
self.checkBox_note = IntVar(value=1)#复选框,默认发布语音
self.checkBox_gsl = IntVar(value=1)#复选框,默认发布gsl
self.checkBox_ini = IntVar(value=1)#复选框,默认发布ini
# 加载gui
self.setup_UI()
UI界面方法setup_UI()关键代码:
def setup_UI(self):self.Style01 = Style()
# style = Style(theme='cosmo')
# # 想要切换主题,修改theme值即可,有以下这么多的主题,自己尝试吧:['vista', 'classic', 'cyborg', 'journal', 'darkly', 'flatly', 'clam', 'alt', 'solar', 'minty', 'litera', 'united', 'xpnative', 'pulse', 'cosmo', 'lumen', 'yeti', 'superhero', 'winnative', 'sandstone', 'default']
# TOP6 = style.master
# 这两行代码在自己原基础的代码上加入即可,放在代码的最开端部分,也就是在窗口创建代码之前
# 设定Style
# self.Style01 = Style()
self.Style01.configure("left.TPanedwindow", background="light blue")
self.Style01.configure("right.TPanedwindow", background="skyblue")
# self.Style01.configure("TButton", width=10, font=("华文黑体", 15, "bold"),bg="blue")
self.Style01.configure("TButton", font=("华文黑体", 14, "bold"), foreground="blue", background="yellow",highlightcolor="red")
# self.Style01.configure("TLabel", font=("华文黑体", 8, "bold"), foreground="blue", background="white",
# highlightcolor="red")
self.Login_image = PhotoImage(file="img" + os.sep + "top2.png")
self.Lable_image = Label(self, image=self.Login_image)
self.Lable_image.pack()
self.Label_login_user = Label(self, text="当前用户:" + str(self.login_user)
+ "\n登录时间:" + self.login_time,style="TLabel")
self.Button_add_image = PhotoImage(file="img" + os.sep + "logout.png")
self.Label_login_user.place(x=700, y=10)
self.Button_add = Button(self, text="退出",image=self.Button_add_image,style="TButton", command=self.logout)
self.Button_add.place(x=950, y=14)
# self.Label_login_user.pack()
# 左边:按钮区域,创建一个容器
self.Pane_left = PanedWindow(width=200, height=590, style="left.TPanedwindow")
self.Pane_left.place(x=2, y=55)
self.Pane_right = PanedWindow(width=806, height=590, style="right.TPanedwindow")
self.Pane_right.place(x=205, y=55)
# 添加左边按钮
self.Button_user = Button(self.Pane_left, text="账号管理", style="TButton",command=self.accountManagerUI)
self.Button_user.place(x=30, y=20)
self.Button_operate = Button(self.Pane_left, text="安全审计", style="TButton")
self.Button_operate.place(x=30, y=48)
self.Button_backup = Button(self.Pane_left, text="密码修改", style="TButton",command=self.changPasswordUI)
self.Button_backup.place(x=30, y=76)