this tutorialに続いて、クリップボードからデータを取得できました。ブラウザにテキストを貼り付けるにはどうすればいいですか?
しかし、the xul browserに文字列を挿入する方法についてはわかりません(たとえば、ユーザーが「編集」メニューを開いて「貼り付け」をクリックしたとき)。
--update
cmd_paste
hereがありますが、私は(そしてどのように)ブラウザに貼り付けるためにそれを使用することができれば何のヒントはありません。また、入手可能なbrowser's APIのドキュメントには何も記載されていません。
私はcommand
属性(それが存在するかどうかわからない、the APIは何も言うが、それはあまり信頼性のwikiだ)&ペーストするボタンを設定し、それはブラウザを作成し動作させる試みた:
<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<window width="400" height="300"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<browser id="mybrowser" command="cmd_paste" type="content" src="http://www.google.com/" flex="1" />
<button label="TEST PASTE" command="document.getElementById('mybrowser').doCommand();" />
</window>
ナッシングボタンを押すと(クリップボード上のデータとブラウザ内で選択されたテキストフィールドで)発生します。 toolkit.jar内のXULRunnerソース
--in
は、コンテンツ/グローバル/ editMenuOverlay.xulで定義があります:
<command id="cmd_paste" oncommand="goDoCommand('cmd_paste')"/>
が、何の "goDoCommand" 方法は、そこに定義されていません、唯一のjavascriptファイルに含まれていません:editMenuOverlay.js
。
"貼り付けボタンが押されたときに、現在フォーカスされているテキスト要素にコピーします"これは私がやろうとしていることです。さて、どうしたらいいですか? (私は自分のアプリケーションでFirefoxではなく、ペーストボタンは用意されていないことに注意してください。 –
申し訳ありませんが、わかりませんでした。私は次のようなことをしていました。 var clipBoardText = getClipBoardText(); myTextBox.value = clipBoardText; しかし私はブラウザで作業したことがないので、ブラウザのテキストボックスにテキスト値を設定する方法はわかりません。 – revers