草庐IT

Javascript textarea 撤消重做

我正在制作一个小型javascript编辑器(用于chrome扩展),有点像SO上的那个。文本区域中有一个用于操作文本的工具栏。(例如用一些模板包围选定的文本)我想知道是否有一种简单的方法可以实现这一点,目前在使用系统撤消/重做时,它会弄乱文本(我认为系统只跟踪编辑之间的增量)。 最佳答案 您或许可以模拟textInput事件来操作文本区域的内容。我认为以这种方式进行的更改会受到撤消/重做的影响(我知道它们在Safari中)varelement=document.getElementById('someTextarea');vart

javascript - Fabric.js 的撤消重做

我正在尝试向我的Fabric.jsCanvas添加撤消/重做功能。我的想法是有一个计数器来计算Canvas修改(现在它计算对象的添加)。我有一个状态数组,它将整个Canvas作为JSON推送到我的数组。然后我只想用记忆状态canvas.loadFromJSON(state[state.length-1+ctr],当用户点击撤消时,ctr将减一并将状态从数组中加载出来;当用户点击redo时,ctr将增加1并从数组中加载状态。当我用简单的数字体验到这种情况时,一切正常。使用真正的织物Canvas,我遇到了一些麻烦-->它实际上不起作用。我认为这取决于我的事件处理程序canvas.on({'

javascript - 在 ACE 编辑器中重置撤消堆栈

我想在ACEeditor中重置撤消堆栈.行为应该是:我在编辑器中做了一些修改。调用一些魔术函数来重置撤消堆栈尝试撤消时,这是不可能的,因为撤消堆栈已重置。我想这与UndoManager有关来自ACE,但我不知道如何在以下示例中使用它。vareditor=ace.edit("editor");editor.setTheme("ace/theme/monokai");editor.getSession().setMode("ace/mode/markdown");setTimeout(function(){editor.setValue("AndnowhowcanIresetthe\nun

PHP:使随机字符串 URL 安全并撤消使其安全的任何内容

给定一个随机生成的字符串,我如何转换它以使其URL安全——然后“取消转换”它?PHP的bin2hex函数(参见:http://www.php.net/manual/en/function.bin2hex.php)似乎可以安全地将字符串转换为URL安全字符。hex2bin函数(参见:http://www.php.net/manual/en/function.hex2bin.php)可能还没有准备好。以下自定义hex2bin函数有时会起作用:functionhex2bin($hexadecimal_data){$binary_representation='';for($i=0;$i只有当

java - 限制 JavaFX TextField 的字符数导致撤消时出现 IndexOutOfBounds

我需要限制用户可以输入到TextFieldJavaFX控件中的字符数。我像这样扩展了TextFieldpublicclassLengthLimitedTextFieldextendsTextField{/***@parammaxCharactersThemaxallowedcharactersthatcanbeenteredintothis{@linkTextField}.*/publicLengthLimitedTextField(finalintmaxCharacters){finalTextFieldthisField=this;this.textProperty().addLi

java - JTextArea 中的撤消功能

我正在尝试在JTextArea中实现撤消功能。在谷歌上搜索教程并遵循其中一个教程并编写了以下代码。当按下Ctrl+Z键时触发该事件。它不适合我。我错过了什么吗?privatevoidundoActionPerformed(java.awt.event.ActionEventevt){Documentdoc=editorTextArea.getDocument();finalUndoManagerundo=newUndoManager();doc.addUndoableEditListener(newUndoableEditListener(){@Overridepublicvoidun

java - 在 ArrayLists 中使用命令模式进行撤消和重做

所以我有一个程序,您可以在其中登录并在friends数组列表中添加/删除friend。我也可以喜欢某个东西,那个东西将被存储到likesarraylist中。我被要求为我执行的任何操作设置撤消和重做选项。所以我想加apple为好友。之后,当我选择撤消选项时,我可以撤消该操作,这样apple就不会成为我的friend。当输入是我输入要存储到friends数组列表中的任何名称或单词时,我如何使用CommandPattern来解决这个问题?我做了一些研究,发现使用命令模式可能是我最好的选择,因为这必须在我已有的Facebook类下完成。我假设我将不得不使用两个不同的堆栈,但我有点迷失了主题。

java - Eclipse 撤消对特定时间项目的更改?

是否可以在特定时间之前撤消对项目的更改?比如,将项目恢复到1:00pm时的状态? 最佳答案 在eclipse的编辑器中,执行此操作,右键单击->替换为->本地历史...从RevisionTime中的条目列表中,选择您想要的修订,比较更改,如果它们看起来没问题,则替换它。完成! 关于java-Eclipse撤消对特定时间项目的更改?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/1

java - 如何在 Eclipse 插件中编写撤消操作脚本?

我正在为Eclipse制作一个插件,我想在用户按下与插件关联的撤消按钮时利用内置的Eclipse“撤消”操作(org.eclipse.core.commands.operations)中。理想情况下,它只会重现当您按下CTRL+Z时发生的情况,但我没有模拟按键工作。我试过这些代码片段:在工作台中执行撤消:IWorkbenchOperationSupportoperationSupport=PlatformUI.getWorkbench().getOperationSupport();IUndoContextcontext=operationSupport.getUndoContext(

java - 为什么 JavaFX 不包含撤消功能

在我已经体验过Swing之后,我最近开始学习JavaFXAPI。我注意到,甚至很多类已经在AWT和Swing中很好地实现了,它们在JavaFX中有效地重新实现了。这包括:javafx.scene.paint.Colorjavafx.event.ActionEvent对比java.awt.Colorjava.awt.event.ActionEvent还有更多,尽管它很容易需要使用它们。我假设这是为了:尽可能将JavaFX与其他库分离(因此新开发人员甚至不应该知道它们的存在...,好的)。利用Java8lambda表达式。利用Java5泛型和枚举类型。在设计时考虑FXML。绑定(bind)