0
A
回答
0
text
小部件支持完全撤銷/重做功能。你只需要打開它;因爲不是所有使用text
都需要這樣的事情,所以默認關閉。要打開它,您只需要將布爾型-undo
小部件選項設置爲true。就這麼簡單(儘管你寫的方式可能與Tcl以外的語言稍有不同,例如Tkinter的undo
)。
但是,PerlTk似乎弄得這一切混亂。出於某種原因,Tk::Text
小部件不支持撤銷/重做(爲什麼?機器在那裏,戳穿),並且Tk::TextUndo
小部件沒有暴露的重做功能(爲什麼地球上會被忽略?)這些都是PerlTk中的所有限制,而不是Tk本身。在這種情況下,你最好的選擇可能是Tk::Text::SuperText
類,但對我來說這很奇怪,因爲它只是做我認爲是核心Tk功能的東西。
或者只是CPAN文檔已過時。
0
問題是,「」結合被分配兩次,對於虛擬事件「<>」(實施emacs的狀粘貼)和到虛擬事件「<>」。正常的Tk::Text
不具有撤消功能,因此在這裏綁定C-y
是有道理的。不幸的是,這種綁定在使用Tk::TextUndo
時會發生衝突。
您有以下幾種可能:
- 使用重做其他綁定(例如F12結合,把傳統知識::主窗口的源代碼的完整列表,或者「重做」,在彈出的菜單項)
- 刪除全球範圍內
<<Paste>>
的C-y
綁定,例如使用:$mw->eventDelete('<<Paste>>', '<Control-Key-y>');
我不知道這可怎麼解決最好用Perl/Tk的源本身。最簡單的方法是在這裏刪除'<>'的emacs密鑰綁定,但是emacs用戶可能會不高興。我願意提供建議......
相關問題
- 1. 撤消窗口窗體和gridcontrol重做
- 2. 撤消/重做的多個上下文
- 3. 撤消後觸發重做
- 4. MVVM光和撤消/重做?
- 5. TextBox撤消/重做命令
- 6. 撤消和重做畫布
- 7. 撤消重做RichTextBox中使用撤消和恢復功能
- 8. 多重變量的撤消/重做實現
- 9. 實施撤消重做基於窗體的編輯器
- 10. 沒有jQuery/Javascript的窗口中的多個滾動窗格?
- 11. Android的位圖撤消重做影響
- 12. 如何撤消/重做jqueryui中的可排序動作?
- 13. 如何在mshtml&c中啓用多級撤消/重做#
- 14. 窗口滾動條在窗口的大小調整上消失
- 15. 窗口bat文件:撤消NET USE
- 16. 滾動窗口
- 17. Python中的滾動窗口
- 18. 我們如何做一個swt texteditor撤消和重做功能
- 19. Visual C++撤消和重做操作
- 20. 重做撤消繪圖帆布WP7
- 21. 撤消/重做與級聯刪除
- 22. 撤消重做功能不起作用。
- 23. 用UITextView撤消/重做(iOS/iPHone)
- 24. TWebBrowser可以撤消或重做
- 25. 撤消重做在Textarea可能嗎?
- 26. 模式例如撤消/重做
- 27. Android Canvas撤消和重做位圖
- 28. NSUndoManager only撤消,不是重做
- 29. 撤消/重做事件綁定
- 30. 撤消和重做功能破壞
你可以像Tkinter那樣注入Tcl命令嗎? –