-1

はい、検索を行いましたが、部分的にしか機能しないものが見つかりました。本当の迷路のようです。例えば:

  • なぜ彼らは使うのg_main_loop_run()ですか?GTK +プログラムがすでにメインループに入っている場合、本当に必要gtk_main()ですか?
  • 、、、、 ...などdbus_bus_request_name()の関数を呼び出す場合、パス、インターフェイス名、およびシグナル名はどのように表示されますか?dbus_message_new_signal()dbus_bus_add_match()dbus_message_is_signal()
  • /etc/dbus-1/system.confその後、プログラムがD-Busインターフェイスを使用できるようにするには、ファイルに名前を正しく設定する必要がありますか?驚いたことに、私が見つけたすべてのチュートリアルは、編集する必要があることをまったく言及するのを忘れています。
  • メッセージを非同期でキャッチするにはどうすればよいですか?別のスレッドのようにどうにかして行う必要がありますか?

使い方を学ぶのに役立つGTK+D-Busの良い例をお勧めします。

4

1 に答える 1

3

gtk_mainが を呼び出し g_main_loop_run()ている場合、ファイルgtk/gtkmain.cを調べて確認する必要があります。

グーグルでdbug_bus_request_nameいくつかの例、特にdbus-example.cを提供します

また、Gtk のコンテキストでシグナルとスロットが何を意味するかを理解するには、優れたgtk チュートリアルを読む必要があります。

グーグルd-bus tutorialこのdbusチュートリアルを提供します

最後に、関連するフリー ソフトウェアのソース コードを見つけて調べることをお勧めします。GtkApplication の例では、dbus コードを呼び出しています。

于 2012-09-21T17:37:35.430 に答える