[問題] gtk2.0 xml & callback 的關聯(solved)
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
GCC
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
gtk2.0
問題(Question):
我打算用gtk畫一個drawarea出來,在它做完了時候,執行一段code
所以想使用realize的event來觸發callback function。
所以,我在xml的內容寫了這段
<object class="drawarea" id="Draw">
<signal name="realize" handler="realize_cb" />
</object>
而main中,宣告:
gboolean realize_cb(GtkWidget *widget, GdkEvent *ev
gpointer data){
// do something
fprintf(stderr, "check");
}
這段callback function。
另外在main program裡,用
GtkWidget *Drawarea =
GTK_WIDGET(gtk_builder_get_object(builder, "Draw"));
取得這個Widget的設定,
然後
gtk_widget_realize(Drawarea);
實作它。
compile的階段沒有問題,但是卻沒有進到callback裡;
不過如果是用
gtk_signal_connect(G_OBJECT(Drawarea), G_CALLBACK(realize_cb));
來連結就可以成功,
請問我還缺了什麼設定才能把這個連接起來?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.135.21.58
※ 文章網址: http://www.ptt.cc/bbs/C_and_CPP/M.1414144144.A.9E3.html
推
10/24 19:38, , 1F
10/24 19:38, 1F
推
10/24 19:42, , 2F
10/24 19:42, 2F
→
10/27 09:36, , 3F
10/27 09:36, 3F
→
10/27 11:39, , 4F
10/27 11:39, 4F
→
10/27 11:40, , 5F
10/27 11:40, 5F
按照一樓大大的解法弄好了!
重點在幾個:
1. gtk_build_connect_singals()
2. linker 要加上export_dynamic
3. 用 extern "C" G_MODULE_EXPORT
結案。
※ 編輯: chigi (220.135.21.58), 10/27/2014 14:50:12
※ 編輯: chigi (220.135.21.58), 10/27/2014 14:55:18
推
10/27 17:05, , 6F
10/27 17:05, 6F
→
10/30 12:08, , 7F
10/30 12:08, 7F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章