禁用GTk python中文本框的输入

时间:2013-04-24 07:16:47

标签: python user-interface gtk

我正在使用Gtk在python中开发一个简单的计算器。在该计算器中,如果输入4*3等表达式并按下=,则会显示结果。但在此之后,如果按下任何其他按钮,则数字会附加在屏幕上(即)如果我按4*3 =它会显示12,之后我按3然后我得到123。我用了

tb.set_editable(False)

但它只停止了键盘输入,当我按下任何按钮时问题仍然存在。我想改变它,如果按下一个新条目,屏幕应该清除......

请帮助我做我能做的事情......

1 个答案:

答案 0 :(得分:2)

有一个最初设为False的变量,比方说我们称之为计算。

在您的按键事件回调中:

  • 如果按键是'=',则附加计算值并将计算结果设置为True。

  • 如果计算为True且按键不是'=',则在设置之前清除该值并将计算结果设置为False。