0

lib BeanShellに会ったばかりです。そして今、コンパイルせずにコードを実行する実行ボタンを備えた Java エディターを作成しています。texteditor-component には、オープンソースのjEdit Syntax Packageを使用します。デモへのリンクは次のとおりです: link

ここで、ユーザーが Enter キーを押すたびに、前の行が始まるのと同じ数のタブを自動的に追加するコードを作成しました。私はそのコードを簡単にテストし、JTextArea正しく動作しました。しかし、キーイベントが動作していないようです。JEditTextArea この JComponent をJPanel.

これJEditTextAreaは、lib のエディター コンポーネントです。(延長JComponent)

4

1 に答える 1

1

通常のJEditTextAreaスイングとは異なりJTextComponentます。processKeyEventJEdi​​tTextAreaのオーバーライドされたコードを参照してください。特に、パフォーマンスのために KeyListener を回避しています。

キー処理ロジックを JEditTextArea に追加した方法は、 をサブクラス化しDefaultInputHandler、オーバーライド して、目的のバインディングとロジックaddDefaultKeyBindingsで呼び出すことです。addKeyBinding()

于 2009-10-13T15:05:40.290 に答える