我在OpenERP 6.0.3的GTK客户端中创建了一次性密码机制。登录后,GTK客户端会显示一个窗口,如下所示输入一次性密码。如何禁用GTK中的关闭按钮?
现在我想在窗口左上方禁用关闭按钮。我怎样才能做到这一点?我使用Python和代码来创建窗口是:
编辑
class sms_auth(gtk.Dialog):
def run_thread(self):
code=self.textbox_code.get_text()
self.result = rpc.session.rpc_exec_auth('/object', 'execute', 'res.users', 'check_code', code)
return self.result
def run(self):
self.show_all()
res = super(sms_auth, self).run()
result = None
if res == gtk.RESPONSE_ACCEPT:
result = self.run_thread()
self.destroy()
return result
def hide(*args):
window.hide()
return gtk.TRUE
def __init__(self, parent, response):
# To use cancel butto add gtk.STOCK_CANCEL, gtk.RESPONSE_REJECT,
gtk.Dialog.__init__(
self, 'Sms Authentication', parent,
gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT,
(gtk.STOCK_OK, gtk.RESPONSE_ACCEPT)
)
label = gtk.Label("Please enter sms code :")
self.parent_widget = parent
self.response = False
self.db_login_response = response
self.connect('delete_event', hide)
self.textbox_code = gtk.Entry()
label.set_alignment(0,0)
table = gtk.Table(1, 7)
table.set_homogeneous(False)
table.set_col_spacings(40)
table.attach(label, 0, 6, 0, 1, ypadding=4)
table.attach(self.textbox_code, 5, 6, 0, 1, ypadding=4)
self.vbox.pack_start(table,False, False, 0)
您有一个已经回答了,所以我只是做一个评论:防止窗口clo se/hide几乎总是一个坏主意。人们犯错误,您的应用程序应允许他们取消任何可能被取消的操作。另外:该按钮不能在视觉上被禁用,它会看起来像一个工作按钮,但不会做人们所期望的... – jku