Tkinter教程之Font篇

原创 2007年10月06日 23:15:00
'''Tkinter教程之Font篇'''
# Tkinter中其它常用的一些功能
'''1.字体使用'''
# -*- coding: cp936 -*-
#
 改变组件的显示字体
from Tkinter import *
root 
= Tk()
# 创建一个Label
for ft in ('Arial',('Courier New',),('Comic Sans MS',),'Fixdsys',('MS Sans Serif',),('MS Serif',),'Symbol','System',('Times New Roman',),'Verdana'):
    Label(root,text 
= 'hello sticky',font = ft ).grid()

root.mainloop()
# 在Windows上测试字体显示,注意字体中包含有空格的字体名称必须指定为tuple类型。
'''2.使用系统已有的字体'''
# -*- coding: cp936 -*-
#
 Font来创建字体
from Tkinter import *
# 引入字体模块
import tkFont
root 
= Tk()
# 创建一个Label
#
 指定字体名称、大小、样式
ft = tkFont.Font(family = 'Fixdsys',size = 20,weight = tkFont.BOLD)
Label(root,text 
= 'hello sticky',font = ft ).grid()

root.mainloop()
# 使用tkFont.Font来创建字体。
'''3.字体创建属性优先级'''
# -*- coding: cp936 -*-
#
 使用系统已有的字体显示
from Tkinter import *
import tkFont
root 
= Tk()
# 创建一个Label
#
 指定字体名称、大小、样式
#
 名称是系统可使用的字体
ft1 = tkFont.Font(family = 'Fixdsys',size = 20,weight = tkFont.BOLD)
Label(root,text 
= 'hello sticky',font = ft1 ).grid()

ft2 
= tkFont.Font(font = ('Fixdsys','10',tkFont.NORMAL),size = 40)
Label(root,text 
= 'hello sticky',font = ft2).grid()

root.mainloop()
# 创建字体有font等其它属性,
#
 如果font指定了,有几个参数将不再起作用,如:family,size,weight,slant,underline,overstrike
#
 例子中演示的结果是ft2中字体大小为10,而不是40
'''4.得到字体的属性值'''
# -*- coding: cp936 -*-
#
 测试measure和metrics属性
from Tkinter import *
import tkFont
root 
= Tk()
# 创建一个Label
ft1 = tkFont.Font(family = 'Fixdsys',size = 20,weight = tkFont.BOLD)
Label(root,text 
= 'hello font',font = ft1 ).grid()

ft2 
= tkFont.Font(font = ('Fixdsys','10',tkFont.NORMAL),size = 40)
Label(root,text 
= 'hello font',font = ft2).grid()

# 得到字体的宽度
print ft1.measure('hello font')
print ft2.measure('hello font')

# 打印两个字体的属性
for metric in ('ascent','descent','linespace','fixed'):
    
print ft1.metrics(metric)
    
print ft2.metrics(metric)
root.mainloop()
# 使用这两个方法得到已创建字体的相关属性值
'''5.使用系统指定的字体'''
# -*- coding: cp936 -*-
#
 使用系统字体:以下测试是Windows上的系统指定字体
from Tkinter import *
import tkFont
root 
= Tk()
for ft1 in ('ansi','ansifixed','device','oemfixed','system','systemfixed'):
    Label(root,text 
= 'hello font',font = ft1 ).grid()

root.mainloop()
# X Window上的系统指定字体:fixed,6x10等
'''6.使用X Font Descriptor'''
# -*- coding: cp936 -*-
#
 使用X Font Descriptor
from Tkinter import *
import tkFont
root 
= Tk()
for ft in ('Times','Helvetica','Courier','Symbol',):
    Label(root,text 
= 'hello font',font = ('-*-%s-*-*-*--*-240-*')%(ft)).grid()

root.mainloop()
# X Font Descriptor格式:-*-family-weight-slant-*--*-size-*-*-*-*-charset
#
 这个例子是在Windows下测试,没有在Linux测试。
 
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Tkinter教程之Event篇(2)

Tkinter教程之Event篇(2)5.测试离开(Leave)事件# -*- coding: cp936 -*-# leave:鼠标离开时产生此事件from Tkinter import *root...

Tkinter教程之Font篇

'''Tkinter教程之Font篇''' # Tkinter中其它常用的一些功能 '''1.字体使用''' # -*- coding: utf-8 -*- # 改变组件的显示字体 from tkin.....

pythonTkinter(3) 用scale控制label中字体大小

#!/usr/bin/env python #coding=utf8 from Tkinter import * def resize(ev = None):     labe...

Tkinter教程之Label篇

#Tkinter教程之Label篇1.Label的第一个例子text属性使用方法#要使用Tk模块,除非你不想使用这个模块,那整个教程就不需要看了from Tkinter import *#初始化Tkr...

使用Tkinter做个日历

# -*- coding: cp936 -*-# 制作一个日历(只显示阳历日期)实现方法:不使用python提供的calendar,根据给出的日期计算:1。先根据输入年份得到这一年的第一天是星期几((...

[Tkinter 教程12] 布局管理 (Pack Place Grid)

本文译自:  http://www.python-course.eu/tkinter_layout_management.php 这个系列的 tkinter 文章图文并茂, 查了一堆教程, 就这个讲的...

Tkinter教程之Event篇(1)'

Tkinter教程之Event篇(1)# 事件的使用方法1.测试鼠标点击(Click)事件# -*- coding: cp936 -*-# :鼠标左击事件# :鼠标中击事件# :鼠标右击事件# :双击...

Tkinter教程之Grid篇

Tkinter教程之Grid篇# Tkinter参考中最推荐使用的一个布局器。实现机制是将Widget逻辑上分割成表格,在指定的位置放置想要的Widget就可以了。1.第一个Grid例子# -*- c...

Tkinter教程之Event篇(3)

Tkinter教程之Event篇(3)11.两个事件同时绑定到一个控件# -*- coding: cp936 -*-# bind:将事件与处理函数# 将两个事件绑定为同一个组件# 为root绑定两个事...

Tkinter教程之tkCommonDialog篇

Tkinter教程之tkCommonDialog篇1.使用用模态对话框SimpleDialg# SimpleDialog:创建一个模态对话框from Tkinter import *# 引入Simpl...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)