2010-11-22 6 views
0

나는 gtk 및 c에 대한 초보자입니다.위젯에서 Gtk 테이블을 제거하는 방법

내 프로그램에 c 및 libglade 사용.

사용자가 만든 콤보 상자 선택에 따라 gtk 테이블을 계속 업데이트해야하는 프로그램을 작성하고 있습니다.

초기화시 gui에는 빈 테이블이있는 vbox가 있습니다. 사용자는 콤보 박스에서 옵션을 선택하고 선택에 따라 표가 위젯 (레이블 및 입력란)으로 포장됩니다. 사용자가 자신의 선택을 다른 옵션으로 변경하면 이전 위젯의 테이블을 지우고 선택을위한 새로운 적절한 위젯으로 테이블을 채워야합니다.

테이블 위젯을 제거하고 새 테이블을 다시 만들어서 vbox에 추가하려고 시도했지만 세그먼트 오류가 발생했습니다.

테이블의 위젯을 파괴 할 수는 있지만 테이블을 위조하는 방법이나 내가하고 싶은 일을하는 다른 방법이 있습니까?

답변

0

tblFoo.resize(0, 0)을 사용해 보셨습니까?

3

테이블 대신 GtkListStore으로 GtkTreeView을 사용해야하고 라벨 및 입력란 대신 GtkCellRendererText을 사용해야하는 것처럼 들립니다. 이 테이블은 동적 데이터를 표시하도록 설계되지 않았습니다.

+0

GTK에 대해 얼마나 아는 지 알 수 있습니다. –

0

기존 테이블을 삭제하고 이전 테이블이 첨부 된 새 테이블을 만들거나 추가 할 수 있습니다. 수직 상자 안에.

관련 문제