[英]Virtual keyboard in Monaco editor
我是Monaco編輯器的新手,我正在嘗試使用虛擬鍵盤並通過虛擬鍵盤鍵入內容。 你知道我該怎么做嗎? 這是我目前正在做的
var position = editor.getPosition(); // Get current mouse position
var text = editor.getValue(position);
var splitedText=text.split("\n");
var lineContent = splitedText[position.lineNumber-1]; // Get selected line content
var textToInsert = character; // text to be inserted
splitedText[position.lineNumber-1] = [lineContent.slice(0, position.column-1), textToInsert, lineContent.slice(position.column-1)].join(''); // Append the text exactly at the selected position (position.column -1)
editor.setValue(splitedText.join("\n")); // Save the value back to the Editor
editor.setPosition(position+1);
第一個字符將被正確插入,但是當我觸發下一個字符時,它將進入前一個字符的前面。 有什么辦法解決嗎?
謝謝
我找出答案
var line = editor.getPosition();
var range = new monaco.Range(line.lineNumber, line.column, line.lineNumber, line.column);
var id = { major: 1, minor: 1 };
var text = character ;
var op = {identifier: id, range: range, text: text, forceMoveMarkers: true};
editor.executeEdits("my-source", [op]);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.