[GTk+] 아이템팩토리로 메뉴바 만들때 라디오 버튼으로 구성하려면...
글쓴이: devanix / 작성시간: 월, 2007/10/01 - 2:20오전
안녕하세요.
static GtkItemFactoryEntry menu_items[] = { {"/_Tools", NULL, NULL, 0, "(Branch)" , NULL}, {"/_Tools/DB Daemon", NULL, NULL, 0, "(LastBranch)", NULL}, {"/_Tools/DB Daemon/DB Start...", NULL, NULL, 0, "(RadioItem)" , NULL}, {"/_Tools/DB Daemon/DB Stop..." , NULL, NULL, 0, "(RadioItem)" , NULL}, }; static GtkWidget *get_menubar_menu(GtkWidget *window){ GtkItemFactory *item_factory; GtkAccelGroup *accel_group; accel_group = gtk_accel_group_new(); item_factory = gtk_item_factory_new(GTK_TYPE_MENU_BAR, "'<'main'>'", accel_group); gint nmenu_items = sizeof(menu_items) / sizeof(menu_items[0]); gtk_item_factory_create_items (item_factory, nmenu, menu_items, NULL); gtk_window_add_accel_group (GTK_WINDOW(window), accel_group); return gtk_item_factory_get_winget(item_factory, "'<'main'>'") }
위와 같이 아이템패토리로 메뉴바를 구성하려고 합니다.
근데 DB Start... 와 DB Stop... 메뉴를 그룹으로 묶어 하나만 활성화 해야 되는데요 방법을 모르겠네요..
저렇케 만들면 라디오 버튼이 두개 전부가 활성화가 되는데
그룹으로 묶으려 해도 아이템팩토리 상에서 그룹으로 어떻케 묶는지...
친절한 답변 부탁드립니다.
Forums:
()를 쓰신 것은 <>가
()를 쓰신 것은 <>가 잘 안 나와서라고 생각하겠습니다.
GTK+ 2.0 Tutorial에 자세히 나와 있습니다.
http://www.gtk.org/tutorial/x1588.html
즉, 라디오 버튼을 그룹으로 묶으려면 item_type을 묶으려는 라디오 버튼의 이름에서 단축키 밑줄을 뺀 문자열로 주면 됩니다.
답변감사드립니다.
영어가 딸려 GTK 책으로만 했었는데..
Tutorial도 자주 봐야겠네요.
암튼 정말 감사드려요~~
좋은 하루 되세요.
댓글 달기