gtk에서요...

koonpal의 이미지

리스트에서 클릭한 데이터를 텍스트에 출력을 할려고 하거든요...

제가 아직 개념이 안서서 그러는데...

좀 가르쳐 주실래요...

ageldama의 이미지

gtk+ 1.2 기준으로 GtkList에는 select-child 시그널이 있군요.
gtk_signal_connect등으로 콜백을 등록해서 원하시는대로
사용하시면 될거라고 생각합니당.

gtk2에서도 크게 다를건 없구요. (표면적으로는 계층이나 이름 정도 바뀐거;;)

gtk은 시그널-콜백을 이벤트 처리를 위해서 사용합니다.
각 위젯은 이벤트들에 대한 시그널(슬롯?)을 갖고 있고
통지 받기 원하는 시그널에 대해 자신이 정의한 함수를 콜백으로 등록해주면
시그널이 발생했을 때 콜백이 실행됩니다.
그리고 콜백에서 이벤트를 처리하는거죵.

그럼..

----
The future is here. It's just not widely distributed yet.
- William Gibson

11tank의 이미지

원하시는게 맞는진 몰르겠지만 함 참고해 보세요.

http://www.gtk.org/tutorial1.2/gtk_tut-31.html#ss31.3

koonpal의 이미지

on_select_child(GtkList *list, GtkWidget *widget, gpointer user_data)
{
    GList *dlist;
    GtkObject *list_item;
    gchar *item_data_string;

    dlist = list->selection;
    list_item = GTK_OBJECT(dlist->data);
    item_data_string = gtk_object_get_user_data(list_item);
    g_print("%s\n", item_string_string);
}

이렇게 했는데 null 만 출력이 되네요....

gtk_object_get_data 함수를 쓸려고 하니 key를 어떻게 사용하는지 잘 이해가 되지 않네요...

좀 부탁을 드립니다...