我正在创建一个简单的tkinter文本编辑器,但我希望尽可能删除文本小部件的所有默认绑定。
例如,当我按 Ctrl + i 时,默认情况下会插入一个Tab字符。 我制作了一个事件绑定来打印文本框中有多少行,我也将事件绑定设置为 Ctrl + i 。
当我运行它时,它会打印文本框内的行数,但也会插入制表符。
我想知道如何覆盖默认绑定,或者学习如何删除所有默认绑定。
继承我的代码btw:
<html>
<table>
<?php
#$b = str_replace("+"," ",$_POST['chk']);
#echo "<script type='text/javascript'> test() </script>";
echo "You have selected these Folders";
foreach($_POST['chk'] as $val)
{ echo "<tr>";
echo "<td>";
echo str_replace("+"," ",$val);
echo "<tr>";
echo "</td>";
}
?>
</table>
</html>
答案 0 :(得分:7)
您可以通过让函数返回字符串"break"
来覆盖绑定。例如:
def Ilim(self): # Prints How many lines are in
info = int(tbox.index('end-1c').split('.')[0])
print(info)
return "break"
如果要完全删除所有绑定(包括允许插入字符的绑定),则可以轻松完成。所有绑定都与&#34;绑定标记相关联。 (或&#34; bindtag&#34;)。如果删除了绑定标签,则删除绑定。
例如,这将删除所有默认绑定:
bindtags = list(tbox.bindtags())
bindtags.remove("Text")
tbox.bindtags(tuple(bindtags))
有关绑定标记的详细信息,请参阅以下答案:https://stackoverflow.com/a/11542200/7432