1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
| # dialog.py -- Tkinter interface to the tk_dialog script.
|
| from Tkinter import *
| from Tkinter import _cnfmerge
|
| if TkVersion <= 3.6:
| DIALOG_ICON = 'warning'
| else:
| DIALOG_ICON = 'questhead'
|
|
| class Dialog(Widget):
| def __init__(self, master=None, cnf={}, **kw):
| cnf = _cnfmerge((cnf, kw))
| self.widgetName = '__dialog__'
| Widget._setup(self, master, cnf)
| self.num = self.tk.getint(
| self.tk.call(
| 'tk_dialog', self._w,
| cnf['title'], cnf['text'],
| cnf['bitmap'], cnf['default'],
| *cnf['strings']))
| try: Widget.destroy(self)
| except TclError: pass
| def destroy(self): pass
|
| def _test():
| d = Dialog(None, {'title': 'File Modified',
| 'text':
| 'File "Python.h" has been modified'
| ' since the last time it was saved.'
| ' Do you want to save it before'
| ' exiting the application.',
| 'bitmap': DIALOG_ICON,
| 'default': 0,
| 'strings': ('Save File',
| 'Discard Changes',
| 'Return to Editor')})
| print d.num
|
|
| if __name__ == '__main__':
| t = Button(None, {'text': 'Test',
| 'command': _test,
| Pack: {}})
| q = Button(None, {'text': 'Quit',
| 'command': t.quit,
| Pack: {}})
| t.mainloop()
|
|