================ | | | | |===============
首先知道tix模块过时了,要用ttk来代替
tkinter.ttk — Tk 主题小部件
源代码:Lib/tkinter/ttk.py
tkinter.ttk 模块提供对 Tk 主题小部件集的访问, 在Tk 8.5中引入。如果 Python 尚未针对 Tk 8.5 进行编译,则此 如果已安装磁贴,则仍然可以访问模块。前者 使用 Tk 8.5 的方法提供了额外的好处,包括抗锯齿字体 在 X11 和窗口透明度下渲染(需要合成 X11 上的窗口管理器)。
tkinter.ttk 的基本思想是尽可能分离: 从实现其行为的代码实现小部件行为的代码 外观。
使用 Ttk
要开始使用 Ttk
,请导入其模块:
from tkinter import ttk
要覆盖基本的 Tk 小部件,导入应遵循 Tk 导入:
from tkinter import * from tkinter.ttk import *
该代码会导致多个 tkinter.ttk 小部件自动替换 Tk 小部件。ButtonCheckbuttonEntryFrameLabelLabelFrameMenubuttonPanedWindowRadiobuttonScaleScrollbar
这有使用新小部件的直接好处,它可以提供更好的 跨平台的外观和感觉;但是,替换小部件不是 完全兼容。主要区别在于小部件选项,例如 “FG”、“BG”和其他与小部件样式相关的内容是 no 更长的时间出现在 Ttk 小部件中。相反,请使用类 以改善样式效果。ttk.Style
实现安装软件时候选择文件安装目录模块
# coding=utf-8 import tkinter as tk from tkinter import filedialog, dialog import os window = tk.Tk() window.title('窗口标题') # 标题 window.geometry('500x500') # 窗口尺寸 file_path = '' file_text = '' text1 = tk.Text(window, width=50, height=10, bg='orange', font=('Arial', 12)) text1.pack() def open_file(): ''' 打开文件 :return: ''' global file_path global file_text file_path = filedialog.askopenfilename(title=u'坤坤选择文件', initialdir=(os.path.expanduser('D:/'))) print('打开文件:', file_path) if file_path is not None: with open(file=file_path, mode='r+', encoding='utf-8') as file: file_text = file.read() text1.insert('insert', file_text) def save_file(): global file_path global file_text file_path = filedialog.asksaveasfilename(title=u'保存文件') print('保存文件:', file_path) file_text = text1.get('1.0', tk.END) if file_path is not None: with open(file=file_path, mode='a+', encoding='utf-8') as file: file.write(file_text) text1.delete('1.0', tk.END) dialog.Dialog(None, {'title': 'File Modified', 'text': '保存完成', 'bitmap': 'warning', 'default': 0, 'strings': ('OK', 'Cancle')}) print('保存完成') bt1 = tk.Button(window, text='打开文件', width=15, height=2, command=open_file) bt1.pack() bt2 = tk.Button(window, text='保存文件', width=15, height=2, command=save_file) bt2.pack() window.mainloop() # 显示
总结
总而言之一句话,就是用
file_path = filedialog.askopenfilename(title=u'坤坤选择文件', initialdir=(os.path.expanduser('D:/')))
# coding=utf-8 import tkinter as tk from tkinter import filedialog, dialog import os window = tk.Tk() window.title('窗口标题') # 标题 window.geometry('500x500') # 窗口尺寸 filedialog.askopenfilename(title=u'坤坤选择文件', initialdir=(os.path.expanduser('D:/'))) window.mainloop() # 显示
最简单的版本
# coding=utf-8 from tkinter import filedialog filedialog.askopenfilename()