2

GTKとgtksourceview2.0で簡単なコードエディタを作成しています。エディターにコード完了ウィンドウを追加したいと思います。10〜15個のキーワードが必要です(常に同じ)。

誰かが私にいくつかのチュートリアルのURLを教えたり、gtk_source_completion_XXX関数の使用法を説明したりできますか?

4

2 に答える 2

6

ええ、あなたはccSadeghが言ったことをすることができます. または、 GtkSourceCompletionを使用することもできます。

于 2012-10-13T12:56:45.213 に答える
6

必要なのは、ユーザー入力をkey-press-eventシグナル (または同様のシグナル) で解析することです。

  • gtk_text_view_get_bufferを呼び出して GtkTextBuffer を取得します。
  • gtk_text_buffer_get_insertを呼び出して GtkTextMark を取得します。
  • gtk_text_buffer_get_iter_at_markを呼び出して GtkTextIter を取得します。
  • gtk_text_iter_ends_word でGtkTextIterが単語の末尾にあるかどうかを確認します。
  • もしそうなら
    • 次に gtk_text_iter_backward_word_start を使用して、単語の開始の GtkTextIter を取得します。
    • gtk_text_buffer_get_text を呼び出して、未完成の単語を取得します。
    • 関連する識別子を検索し、GTK_WINDOW_POPUP タイプの GtkWindow の GtkTreeView に表示します。

.または::またはの後にオートコンプリート リストを表示したい場合は->、上記のような方法で前の単語を取得する必要があります。

于 2010-08-22T23:04:30.467 に答える