에서 벡터의 내용을 나열합니다. Gtk +로 약간 연습하고 있습니다. 나는 작업 메뉴가있는 창을 만들기 위해 abel이었습니다. 테스트 오브젝트 (기본적으로 정사각형, 사용자에게 길이를 입력하도록 요청)를 생성하여 벡터에 저장할 수는 있지만 목록에 표시 할 수는 없습니다. 내가 원하는 무엇Gtk +
이 저장된 모든 개체를 나열하는 스크롤 창을 보여주는 것입니다, 뭔가 같은 :
_Square 1-side:7_
_Square 2-side:25_
지금까지, 나는에 대한 정보의 스크롤 텍스트 레이블 창, 그러나 아무도를 보여줄 수 저장된 객체.
Gtk::Dialog dialog("Listing Squares",false,true);
dialog.set_default_size(500,30);
Gtk::Button close("Close");
close.signal_clicked().connect(sigc::mem_fun(*this,&Window::onFileListButtonClose));
Gtk::VBox* vbox = dialog.get_vbox();
Gtk::ScrolledWindow sw;
sw.set_policy(Gtk::POLICY_AUTOMATIC,Gtk::POLICY_AUTOMATIC);
/** FETCH FROM ARRAY*/
for(unsigned int i(0); i<vc.size();++i){
Gtk::Label label("Square number " + i);
sw.add(label);
}
sw.show_all_children();
vbox->pack_start(sw);
vbox = 0;
dialog.add_action_widget(close,1);
dialog.show_all_children();
dialog.run();
: 가 여기에 내가 시도 코드의 [편집 :]
1) VC는 표준 : : 벡터이다. 클래스 속성입니다.
2) 사각형의 길이를 입력하고이를 vc에 저장하도록 요청하는 코드 조각.
void Window::onMenuFileNew(void) {
Gtk::Dialog dialog("New Square",true,true);
dialog.set_default_size(70,20);
dialog.set_has_separator(true);
Gtk::Button close("Close");
entry.set_max_length(2);
entry.set_text("");
close.signal_clicked().connect(sigc::mem_fun(*this,&Window::onFileNewButtonClose));
Gtk::Label lab("Square side length:");
Gtk::VBox* vbox = dialog.get_vbox();
vbox->pack_start(lab);
vbox->pack_start(entry);
vbox = 0;
dialog.add_action_widget(close,1);
dialog.show_all_children();
dialog.run();
}
void Window::onFileNewButtonClose(void) {
int side = atoi((entry.get_text()).c_str());
vc.push_back(Cuadrado(side));
}
어떤 도움을 주시면 감사하겠습니다. :)
추신 : 사각형을 나열하려고하기 전에, 나는 그 중 일부를 만들었습니다!
'vc'를 정의하고 채우는 코드를 제공해야합니다. 비어 있다면? – Irfy
해당 코드로 게시물을 업데이트합니다! –
'for' 루프에서 "Square number #"텍스트를 포함하는 레이블을 추가하기 만하면됩니다. 그 텍스트를 보시겠습니까? 'Cuadrado' 객체의 정보를 추가하기 위해 루프에 추가 코드를 추가해야할까요? 실제로 그러한 객체의 내용에 액세스 할 수 있습니까? – Irfy