如何让i pad 能换输入法吗用量不显示

用户“”对问题“如何使文本小部件静态?”的回答 - 问答 - 云+社区 - 腾讯云云+社区首页更改小部件文本的字体大小后,如何使其保持静态?我把所有的代码都给你这样你就可以运行程序了。from tkinter import*
import tkinter as tk
from tkinter import Toplevel, Listbox, StringVar, BooleanVar, TclError
from tkinter import filedialog, scrolledtext,Menu,END,messagebox
from tkinter.ttk import Checkbutton, Frame, Label, Button, Scrollbar, Style, Entry
from tkinter.font import families, Font
from locale import getdefaultlocale
import PIL
from PIL import Image, ImageTk
__version__ = &2.0.2&
# --- translation
EN = {&Cancel&: &Cancel&, &Bold&: &Bold&, &Italic&: &Italic&,
&Underline&: &Underline&, &Overstrike&: &Strikethrough&}
FR = {&Cancel&: &Annuler&, &Bold&: &Gras&, &Italic&: &Italique&,
&Underline&: &Souligné&, &Overstrike&: &Barré&}
LANGUAGES = {&fr&: FR, &en&: EN}
if getdefaultlocale()[0][:2] == &fr&:
TR = LANGUAGES[&fr&]
TR = LANGUAGES[&en&]
class FontChooser(Toplevel):
&&&.Font chooser dialog.&&&
def __init__(self, master, font_dict={}, text=&Abcd&, title=&Font Chooser&,
**kwargs):
Create a new FontChooser instance.
Arguments:
master: master window
font_dict: dictionnary, like the one returned by the .actual
method of a Font object:
{'family': 'DejaVu Sans',
'overstrike': False,
'size': 12,
'slant': 'italic' or 'roman',
'underline': False,
'weight': 'bold' or 'normal'}
text: text to be displayed in the preview label
title: window title
**kwargs: additional keyword arguments to be passed to
Toplevel.__init__
Toplevel.__init__(self, master, **kwargs)
self.title(title)
self.resizable(False, False)
self.protocol(&WM_DELETE_WINDOW&, self.quit)
self._validate_family = self.register(self.validate_font_family)
self._validate_size = self.register(self.validate_font_size)
# --- variable storing the chosen font
self.res = &&
style = Style(self)
style.configure(&prev.TLabel&, background=&white&)
bg = style.lookup(&TLabel&, &background&)
self.configure(bg=bg)
# --- family list
self.fonts = list(set(families()))
self.fonts.append(&TkDefaultFont&)
self.fonts.sort()
for i in range(len(self.fonts)):
self.fonts[i] = self.fonts[i].replace(& &, &\ &)
max_length = int(2.5 * max([len(font) for font in self.fonts])) // 3
self.sizes = [&%i& % i for i in (list(range(6, 17)) + list(range(18, 32, 2)))]
# --- font default
font_dict[&weight&] = font_dict.get(&weight&, &normal&)
font_dict[&slant&] = font_dict.get(&slant&, &roman&)
font_dict[&underline&] = font_dict.get(&underline&, False)
font_dict[&overstrike&] = font_dict.get(&overstrike&, False)
font_dict[&family&] = font_dict.get(&family&,
self.fonts[0].replace('\ ', ' '))
font_dict[&size&] = font_dict.get(&size&, 10)
# --- creation of the widgets
# ------ style parameters (bold, italic ...)
options_frame = Frame(self, relief='groove', borderwidth=2)
self.font_family = StringVar(self, & &.join(self.fonts))
self.font_size = StringVar(self, & &.join(self.sizes))
self.var_bold = BooleanVar(self, font_dict[&weight&] == &bold&)
b_bold = Checkbutton(options_frame, text=TR[&Bold&],
command=self.toggle_bold,
variable=self.var_bold)
b_bold.grid(row=0, sticky=&w&, padx=4, pady=(4, 2))
self.var_italic = BooleanVar(self, font_dict[&slant&] == &italic&)
b_italic = Checkbutton(options_frame, text=TR[&Italic&],
command=self.toggle_italic,
variable=self.var_italic)
b_italic.grid(row=1, sticky=&w&, padx=4, pady=2)
self.var_underline = BooleanVar(self, font_dict[&underline&])
b_underline = Checkbutton(options_frame, text=TR[&Underline&],
command=self.toggle_underline,
variable=self.var_underline)
b_underline.grid(row=2, sticky=&w&, padx=4, pady=2)
self.var_overstrike = BooleanVar(self, font_dict[&overstrike&])
b_overstrike = Checkbutton(options_frame, text=TR[&Overstrike&],
variable=self.var_overstrike,
command=self.toggle_overstrike)
b_overstrike.grid(row=3, sticky=&w&, padx=4, pady=(2, 4))
# ------ Size and family
self.var_size = StringVar(self)
self.entry_family = Entry(self, width=max_length, validate=&key&,
validatecommand=(self._validate_family, &%d&, &%S&,
&%i&, &%s&, &%V&))
self.entry_size = Entry(self, width=4, validate=&key&,
textvariable=self.var_size,
validatecommand=(self._validate_size, &%d&, &%P&, &%V&))
self.list_family = Listbox(self, selectmode=&browse&,
listvariable=self.font_family, highlightthickness=0, exportselection=False, width=max_length)
self.list_size = Listbox(self, selectmode=&browse&,
listvariable=self.font_size, highlightthickness=0, exportselection=False, width=4)
scroll_family = Scrollbar(self, orient='vertical', command=self.list_family.yview)
scroll_size = Scrollbar(self, orient='vertical', command=self.list_size.yview)
self.preview_font = Font(self, **font_dict)
if len(text) & 30:
text = text[:30]
self.preview = Label(self, relief=&groove&, style=&prev.TLabel&, text=text, font=self.preview_font, anchor=&center&)
self.list_family.configure(yscrollcommand=scroll_family.set)
self.list_size.configure(yscrollcommand=scroll_size.set)
self.entry_family.insert(0, font_dict[&family&])
self.entry_family.selection_clear()
self.entry_family.icursor(&end&)
self.entry_size.insert(0, font_dict[&size&])
i = self.fonts.index(self.entry_family.get().replace(& &, &\ &))
except ValueError:
self.list_family.selection_clear(0, &end&)
self.list_family.selection_set(i)
self.list_family.see(i)
i = self.sizes.index(self.entry_size.get())
self.list_size.selection_clear(0, &end&)
self.list_size.selection_set(i)
self.list_size.see(i)
except ValueError:
self.entry_family.grid(row=0, column=0, sticky=&ew&, pady=(10, 1), padx=(10, 0))
self.entry_size.grid(row=0, column=2, sticky=&ew&, pady=(10, 1), padx=(10, 0))
self.list_family.grid(row=1, column=0, sticky=&nsew&, pady=(1, 10), padx=(10, 0))
self.list_size.grid(row=1, column=2, sticky=&nsew&, pady=(1, 10), padx=(10, 0))
scroll_family.grid(row=1, column=1, sticky='ns', pady=(1, 10))
scroll_size.grid(row=1, column=3, sticky='ns', pady=(1, 10))
options_frame.grid(row=0, column=4, rowspan=2, padx=10, pady=10, ipadx=10)
self.preview.grid(row=2, column=0, columnspan=5, sticky=&eswn&, padx=10, pady=(0, 10), ipadx=4, ipady=4)
button_frame = Frame(self)
button_frame.grid(row=3, column=0, columnspan=5, pady=(0, 10), padx=10)
Button(button_frame, text=&Ok&, command=self.ok).grid(row=0, column=0, padx=4, sticky='ew')
Button(button_frame, text=TR[&Cancel&], command=self.quit).grid(row=0, column=1, padx=4, sticky='ew')
self.list_family.bind('&&ListboxSelect&&', self.update_entry_family)
self.list_size.bind('&&ListboxSelect&&', self.update_entry_size, add=True)
self.list_family.bind(&&KeyPress&&, self.keypress)
self.entry_family.bind(&&Return&&, self.change_font_family)
self.entry_family.bind(&&Tab&&, self.tab)
self.entry_size.bind(&&Return&&, self.change_font_size)
self.entry_family.bind(&&Down&&, self.down_family)
self.entry_size.bind(&&Down&&, self.down_size)
self.entry_family.bind(&&Up&&, self.up_family)
self.entry_size.bind(&&Up&&, self.up_size)
self.bind_class(&TEntry&, &&Control-a&&, self.select_all)
self.wait_visibility(self)
self.grab_set()
self.entry_family.focus_set()
self.lift()
def select_all(self, event):
event.widget.selection_range(0, &end&)
def keypress(self, event):
key = event.char.lower()
l = [i for i in self.fonts if i[0].lower() == key]
i = self.fonts.index(l[0])
self.list_family.selection_clear(0, &end&)
self.list_family.selection_set(i)
self.list_family.see(i)
self.update_entry_family()
def up_family(self, event):
i = self.list_family.curselection()[0]
self.list_family.selection_clear(0, &end&)
if i &= 0:
i = len(self.fonts)
self.list_family.see(i - 1)
self.list_family.select_set(i - 1)
except TclError:
self.list_family.selection_clear(0, &end&)
i = len(self.fonts)
self.list_family.see(i - 1)
self.list_family.select_set(i - 1)
self.list_family.event_generate('&&ListboxSelect&&')
def up_size(self, event):
&&&Navigate in the size listbox with up key.&&&
s = self.var_size.get()
if s in self.sizes:
i = self.sizes.index(s)
sizes = list(self.sizes)
sizes.append(s)
sizes.sort(key=lambda x: int(x))
i = sizes.index(s)
self.list_size.selection_clear(0, &end&)
if i &= 0:
i = len(self.sizes)
self.list_size.see(i - 1)
self.list_size.select_set(i - 1)
except TclError:
i = len(self.sizes)
self.list_size.see(i - 1)
self.list_size.select_set(i - 1)
self.list_size.event_generate('&&ListboxSelect&&')
def down_family(self, event):
&&&Navigate in the family listbox with down key.&&&
i = self.list_family.curselection()[0]
self.list_family.selection_clear(0, &end&)
if i &= len(self.fonts):
self.list_family.see(i + 1)
self.list_family.select_set(i + 1)
except TclError:
self.list_family.selection_clear(0, &end&)
self.list_family.see(0)
self.list_family.select_set(0)
self.list_family.event_generate('&&ListboxSelect&&')
def down_size(self, event):
&&&Navigate in the size listbox with down key.&&&
s = self.var_size.get()
if s in self.sizes:
i = self.sizes.index(s)
sizes = list(self.sizes)
sizes.append(s)
sizes.sort(key=lambda x: int(x))
i = sizes.index(s) - 1
s = len(self.sizes) - 1
self.list_size.selection_clear(0, &end&)
if i & len(self.sizes) - 1:
self.list_size.selection_set(i + 1)
self.list_size.see(i + 1)
self.list_size.see(0)
self.list_size.select_set(0)
except TclError:
self.list_size.selection_set(0)
self.list_size.event_generate('&&ListboxSelect&&')
def toggle_bold(self):
&&&Update font preview weight.&&&
b = self.var_bold.get()
self.preview_font.configure(weight=[&normal&, &bold&][b])
def toggle_italic(self):
&&&Update font preview slant.&&&
b = self.var_italic.get()
self.preview_font.configure(slant=[&roman&, &italic&][b])
def toggle_underline(self):
&&&Update font preview underline.&&&
b = self.var_underline.get()
self.preview_font.configure(underline=b)
def toggle_overstrike(self):
&&&Update font preview overstrike.&&&
b = self.var_overstrike.get()
self.preview_font.configure(overstrike=b)
def change_font_family(self, event=None):
&&&Update font preview family.&&&
family = self.entry_family.get()
if family.replace(& &, &\ &) in self.fonts:
self.preview_font.configure(family=family)
def change_font_size(self, event=None):
&&&Update font preview size.&&&
size = int(self.var_size.get())
self.preview_font.configure(size=size)
def validate_font_size(self, d, ch, V):
&&&Validation of the size entry content.&&&
l = [i for i in self.sizes if i[:len(ch)] == ch]
i = self.sizes.index(l[0])
elif ch.isdigit():
sizes = list(self.sizes)
sizes.append(ch)
sizes.sort(key=lambda x: int(x))
i = min(sizes.index(ch), len(self.sizes))
if i is not None:
self.list_size.selection_clear(0, &end&)
self.list_size.selection_set(i)
deb = self.list_size.nearest(0)
fin = self.list_size.nearest(self.list_size.winfo_height())
if V != &forced&:
if i & deb or i & fin:
self.list_size.see(i)
return True
if d == '1':
return ch.isdigit()
return True
def tab(self, event):
&&&Move at the end of selected text on tab press.&&&
self.entry_family = event.widget
self.entry_family.selection_clear()
self.entry_family.icursor(&end&)
return &break&
def validate_font_family(self, action, modif, pos, prev_txt, V):
&&&Completion of the text in the entry with existing font names.&&&
if self.entry_family.selection_present():
sel = self.entry_family.selection_get()
txt = prev_txt.replace(sel, '')
txt = prev_txt
if action == &0&:
txt = txt[:int(pos)] + txt[int(pos) + 1:]
return True
txt = txt[:int(pos)] + modif + txt[int(pos):]
ch = txt.replace(& &, &\ &)
l = [i for i in self.fonts if i[:len(ch)] == ch]
i = self.fonts.index(l[0])
self.list_family.selection_clear(0, &end&)
self.list_family.selection_set(i)
deb = self.list_family.nearest(0)
fin = self.list_family.nearest(self.list_family.winfo_height())
index = self.entry_family.index(&insert&)
self.entry_family.delete(0, &end&)
self.entry_family.insert(0, l[0].replace(&\ &, & &))
self.entry_family.selection_range(index + 1, &end&)
self.entry_family.icursor(index + 1)
if V != &forced&:
if i & deb or i & fin:
self.list_family.see(i)
return True
return False
def update_entry_family(self, event=None):
&&&Update family entry when an item is selected in the family listbox.&&&
family = self.list_family.get(&@%i,%i& % (event.x , event.y))
family = self.list_family.get(self.list_family.curselection()[0])
self.entry_family.delete(0, &end&)
self.entry_family.insert(0, family)
self.entry_family.selection_clear()
self.entry_family.icursor(&end&)
self.change_font_family()
def update_entry_size(self, event):
&&&Update size entry when an item is selected in the size listbox.&&&
size = self.list_size.get(&@%i,%i& % (event.x , event.y))
size = self.list_size.get(self.list_size.curselection()[0])
self.var_size.set(size)
self.change_font_size()
def ok(self):
&&&Validate choice.&&&
self.res = self.preview_font.actual()
self.quit()
def get_res(self):
&&&Return chosen font.&&&
return self.res
def quit(self):
self.destroy()
def askfont(master=None, text=&Abcd&, title=&Font Chooser&, **font_args):
chooser = FontChooser(master, font_args, text, title)
chooser.wait_window(chooser)
return chooser.get_res()
def edit_font():
font = askfont(root, title=&Choose a font&)
font['family'] = font['family'].replace(' ', '\ ')
font_str = &%(family)s %(size)i %(weight)s %(slant)s& % font
if font['underline']:
font_str += ' underline'
if font['overstrike']:
font_str += ' overstrike'
text.configure(font=font_str)
root=tk.Tk()
root.geometry(&&)
# added weights so the widget resizes correctly with window
root.rowconfigure(0, weight=1)
root.columnconfigure(0, weight=1)
image = ImageTk.PhotoImage(file=&0.png&)
lab=tk.Label(root, image = image)
lab.grid(row=0, column=0)
text=tk.Text(root,width = 60,height=15, font=Font(family=&Helvetica&, size=10))
text.grid(row=0, column=0)
king=tk.Menu(root)
root.config(menu=king)
view=tk.Menu(king, tearoff=0)
view2=tk.Menu(view, tearoff=0)
view2.add_command(label='Font',command=edit_font)
view.add_cascade(label='Text', menu=view2)
king.add_cascade(label='View', menu=view)
root.mainloop()这是解决我的问题最需要的代码:def askfont(master=None, text=&Abcd&, title=&Font Chooser&, **font_args):
chooser = FontChooser(master, font_args, text, title)
chooser.wait_window(chooser)
return chooser.get_res()
def edit_font():
font = askfont(root, title=&Choose a font&)
font['family'] = font['family'].replace(' ', '\ ')
font_str = &%(family)s %(size)i %(weight)s %(slant)s& % font
if font['underline']:
font_str += ' underline'
if font['overstrike']:
font_str += ' overstrike'
text.configure(font=font_str)
root=tk.Tk()
root.geometry(&&)
# added weights so the widget resizes correctly with window
root.rowconfigure(0, weight=1)
root.columnconfigure(0, weight=1)
image = ImageTk.PhotoImage(file=&0.png&)
lab=tk.Label(root, image = image)
lab.grid(row=0, column=0)
text=tk.Text(root,width = 60,height=15, font=Font(family=&Helvetica&, size=10))
text.grid(row=0, column=0)
king=tk.Menu(root)
root.config(menu=king)
view=tk.Menu(king, tearoff=0)
view2=tk.Menu(view, tearoff=0)
view2.add_command(label='Font',command=edit_font)
view.add_cascade(label='Text', menu=view2)
king.add_cascade(label='View', menu=view)
root.mainloop()这可能包括设置帧大小和帧,以及禁止分发,我的一个朋友说。希望这对你有帮助写回答邀请回答小时前如何使文本小部件静态?写回答如果你给文本小部件一个固定的高度和宽度,并将其包装在一个具有相同宽度和高度的框架中,则使用grid_propagate(False),当文本变得更大时,文本小部件保持相同的大小。import tkinter as tk
def fontUp():
text.config(font = (&30&))
root = tk.Tk()
root.geometry(&800x800&)
frm = tk.Frame(root, height = 500, width = 500)
frm.grid(row = 0, column = 0)
frm.grid_propagate(False)
text = tk.Text(frm, height = 500, width = 500)
text.grid(row = 0, column = 0)
btn = tk.Button(root, text=&Font bigger&, command = fontUp)
btn.grid(row = 2, column = 0)回答过的其他问题这可能是一个并发问题,因为打印出图像内容的行将在回调完成之前执行,这是背景任务的性质。如果你确实想看到图像的打印内容,则可以在回调中打印它,或者完全在for循环外部打印。它可能会发生,因为你选择的设备可能无法支持选定的目标。因此,根据设备规范更改目标。因为一些低分辨率设备不支持更高的API级别的目标。 它是在执行文件I/O时释放的,这意味着可以并行读取文件。因为从进程的角度来看,没有文件这样的东西,只有文件描述符(假设POSIX),那么无论你读取什么,它都不必存储在磁盘上。 总之,如果将文件移动到(例如)tmpfs或者是ramdisk或任何类似的工具,那么应该可以获得更好的性...... import configparser
config = configparser.ConfigParser(comment_prefixes=(&#&, &;&, &'&))
config.read(path, encoding='cp1250') 管理操作记录在日志中,并且可以使用该Get-AzureRmLog命令检索这些: $days = 7
$pointInTime = [DateTime]::Now.AddDays(-$days);
$horizon = $pointInTime.AddDays(-$days);
innodb_buffer_pool_size=8G
# from & 40G (95% of RAM will not work well)
innodb_lru_scan_depth=100
# from 1024
see refman every second d...... 学生更多频道内容在这里查看
爱奇艺用户将能永久保存播放记录
过滤短视频
暂无长视频(电视剧、纪录片、动漫、综艺、电影)播放记录,
按住视频可进行拖动
&正在加载...
举报视频:
举报原因(必填):
请说明举报原因(300字以内):
请输入您的反馈
举报理由需要输入300字以内
感谢您的反馈~
请勿重复举报~
请刷新重试~
收藏成功,可进入
查看所有收藏列表
当前浏览器仅支持手动复制代码
视频地址:
flash地址:
html代码:
通用代码:
通用代码可同时支持电脑和移动设备的分享播放
用爱奇艺APP或微信扫一扫,在手机上继续观看
当前播放时间:
一键下载至手机
限爱奇艺安卓6.0以上版本
使用微信扫一扫,扫描左侧二维码,下载爱奇艺移动APP
其他安装方式:手机浏览器输入短链接http://71.am/udn
下载安装包到本机:
设备搜寻中...
请确保您要连接的设备(仅限安卓)登录了同一爱奇艺账号 且安装并开启不低于V6.0以上版本的爱奇艺客户端
连接失败!
请确保您要连接的设备(仅限安卓)登录了同一爱奇艺账号 且安装并开启不低于V6.0以上版本的爱奇艺客户端
部安卓(Android)设备,请点击进行选择
请您在手机端下载爱奇艺移动APP(仅支持安卓客户端)
使用微信扫一扫,下载爱奇艺移动APP
其他安装方式:手机浏览器输入短链接http://71.am/udn
下载安装包到本机:
爱奇艺云推送
请您在手机端登录爱奇艺移动APP(仅支持安卓客户端)
使用微信扫一扫,下载爱奇艺移动APP
180秒后更新
打开爱奇艺移动APP,点击“我的-扫一扫”,扫描左侧二维码进行登录
没有安装爱奇艺视频最新客户端?
i pad pro 12.9寸2017款装载ios11beta的使用体验
正在检测客户端...
您尚未安装客户端,正在为您下载...安装完成后点击按钮即可下载
30秒后自动关闭
i pad pro 12.9寸2017款装载ios11beta的使用体验">i pad pro 12.9寸2017款装载ios11beta的使用体验
请选择打赏金额:
播放量12.7万
播放量数据:快去看看谁在和你一起看视频吧~
更多数据:
热门短视频推荐
Copyright (C) 2018 & All Rights Reserved
您使用浏览器不支持直接复制的功能,建议您使用Ctrl+C或右键全选进行地址复制
正在为您下载爱奇艺客户端安装后即可快速下载海量视频
正在为您下载爱奇艺客户端安装后即可免费观看1080P视频
&li data-elem="tabtitle" data-seq="{{seq}}"& &a href="javascript:void(0);"& &span>{{start}}-{{end}}&/span& &/a& &/li&
&li data-downloadSelect-elem="item" data-downloadSelect-selected="false" data-downloadSelect-tvid="{{tvid}}"& &a href="javascript:void(0);"&{{pd}}&/a&
选择您要下载的《
后才可以领取积分哦~
每观看视频30分钟
+{{data.viewScore}}分
{{data.viewCount}}/3
{{if data.viewCount && data.viewCount != "0" && data.viewCount != "1" && data.viewCount != "2" }}
访问泡泡首页
+{{data.rewardScore}}分
{{if data.rewardCount && data.rewardCount != 0 && data.getRewardDayCount != 0}}1{{else}}0{{/if}}/1
{{if data.rewardCount && data.rewardCount != 0 && data.getRewardDayCount != 0}}
+{{data.signScore}}分
{{data.signCount}}/1
{{if data.signCount && data.signCount != 0}}
色情低俗内容
血腥暴力内容
广告或欺诈内容
侵犯了我的权力
还可以输入
您使用浏览器不支持直接复制的功能,建议您使用Ctrl+C或右键全选进行地址复制提供的知识:完全没有任何影响!放心吧!我的手机和平板就是共用一个ID的,你的ID被允许登录设备会在设置里面看得见的!如果你注销ipad上的ID以后系统会发送一封邮件提示你的。完全不用担心。请注意:本内容来自悟空问答,版权归悟空问答所有,本网旨在传播知识,不代表本网赞同以上意见,如有任何问题请与本网联系!声明:以上内容由用户提供,并不代表本网赞同其观点。如有任何不妥,请与不良与违法信息举报中心联系:
学网版权所有 如有任何问题请联系}

我要回帖

更多关于 i pad air 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信