import ctypes
from tkinter import *
from tkinter.ttk import *
def fac(x):
if x==0 or x==1:
return 1
elif x>1:
return x*fac(x-1)
root=Tk()
ctypes.windll.shcore.SetProcessDpiAwareness(1)
ScaleFactor=ctypes.windll.shcore.GetScaleFactorForDevice(0)
root.tk.call('tk', 'scaling', ScaleFactor/75)
root.title('计算阶乘')
frame1=Frame(root)
frame1.pack(side='top',anchor='center',expand='yes')
lable1=Label(frame1,text='input')
lable2=Label(frame1,text='output')
entry1=Entry(frame1)
entry2=Entry(frame1)
def button1_clicked():
entry2.delete(0,END)
entry2.insert(0,str(fac(eval(entry1.get()))))
button1=Button(frame1,text='Run',command=button1_clicked)
button2=Button(frame1,text='Quit',command=root.quit)
lable1.grid(row=0,column=0,pady=3,padx=3)
lable2.grid(row=1,column=0,pady=3,padx=3)
entry1.grid(row=0,column=1,pady=3,padx=3)
entry2.grid(row=1,column=1,pady=3,padx=3)
button1.grid(row=2,column=0,sticky=W,pady=3,padx=3)
button2.grid(row=2,column=1,sticky=E,pady=3,padx=3)
root.mainloop()
大家好,本文将围绕python美化图形化界面设计展开说明,pythontkinter界面美化是一个很多人都想弄明白的事情,想搞清楚python美化输出模块需要先了解以下几个事情。
自带:tkinter,sys,time,wave,os,json,logging,tempfile,threading,re
第三方:tqdm,pyautogui,pillow,pygame,moviepy,pyaudio,numpy
性能低的电脑慎用
录屏方式:全屏,切屏,鼠标周边
录音:支持
看看好像网上没有这么成熟的教程,就自己写了一个
支持系统:Windows,Mac,Linux
tkinter有一个内部缩放因子,用于将点和英寸等测量值转换为像素.您可以使用"tk scaling"命令进行设置.此命令采用一个参数,即一个"点"中的像素数.一个点是1/72英寸,因此缩放因子1.0适用于72DPI显示器.你也可以使用 self.tk.call(‘tk’, ‘scaling’) 查看当前值。通常在缩放比率在100%时这个比率为 96/72=1.3333…
root = Tk.tk()
screenWidth = root.winfo_screenwidth()
screenHeight = root.winfo_screenheight()
这种形式在不同的win缩放情况下回返回完全相同的值,这对于冻结屏幕的操作是致命的
在程序中使用以下代码可以获取到真实的分辨率,包含了缩放结果
import ctyps
一种解决方案是make a theme or styles,您应用了自己设置的缩放算法。这里只是一个简单的例子,只有一个按钮。import tkinter as tkfrom tkinter import ttkroot = tk.Tk()# Base sizenormal_width = 1920normal_height = 1080# Get screen sizescreen_width ...
用python的tkinter做游戏 系列:
用python自带的tkinter做游戏(一)—— 贪吃蛇 篇
用python自带的tkinter做游戏(二)—— 俄罗斯方块 篇
用python自带的tkinter做游戏(三)—— 推箱子简易版 篇
用python的tkinter做游戏(四)—— 推箱子重制版 篇
用python的tkinter做游戏(五)—— 魔塔 篇
用python的tkinter做游戏(六)—— 坦克大战或射击游戏Demo 篇
用python的tkinter做游戏(七)—— 双人射击游戏