1

私は、開発したカスタムスクリプト言語で使用するプリミティブIDEを作成するために、他のいくつかの高度な機能とともに一種のオートコンプリートを実行する小さなプラグインを開発しようとしています。

だから私は知りたいのですが、オートコンプリートプラグインは通常どのように機能しますか?遊んでいる基本的なプラグインテンプレート(C#のもの)があり、コマンドがどのように機能するかを高レベルから確認していますが、オートコンプリート機能を作成する方法を理解しようとしています。

私の最初の推測は、100ミル程度ごとにメモ帳++テキストのコンテンツ全体を取得する新しいスレッドを生成し、小さなセレクタボックスをポップアップするか、正しいパターンがあったときにオートコンプリートの可能性を直接書き込むコマンドを作成することです。新しく入力したテキストに一致します。

これについて私の前に行った人々からの知恵はありますか?

どうもありがとう。

4

1 に答える 1

2

よく私はそれを理解しました。ダウンロードしたプロジェクトテンプレートには「beNotified」メソッドがあり、Scintilla /Notepad++環境からのすべてのイベント/通知を処理しているようです。おそらく、文字がGUIに追加されるたびに、SCN_CHARADDEDイベントを使用して現在のテキスト行をチェックします。

于 2012-04-10T20:59:12.797 に答える