2011-10-27 5 views
0

Qt4와 C++을 처음 사용하기 때문에 qt4에서 GUI를 만들려고합니다. 다른 콤보 상자에서 선택한 문자열을 기반으로 콤보 상자에 항목을 추가하는 방법은 무엇입니까? 내 comboBox_1에는 "2.4GHz"및 "5GHz"라는 두 항목이 있습니다. 사용자가 "2.4GHz"를 선택하면 ComboBox_2에 1에서 12까지의 항목이 있고, 사용자가 "5GHz"를 선택하면 ComboBox_2에 다른 항목이 있어야합니다. 어떻게해야합니까? 도와주세요.C++의 종속 콤보 상자 Qt4

고마워요.

답변

1

우선 내 마음이 :, 예컨대을 QComboBox::currentIndexChanged() 신호를 사용하여 슬롯에 연결하는 것입니다

connect(&comboBox_1, SIGNAL(currentIndexChanged(int)), 
     this, SLOT(populateComboBox2(int))); 

는 그런 다음 populateComboBox2(int)를 정의 할 필요가왔다. 매개 변수는 자동으로 전달되고 콤보 상자 1에서 현재 선택된 인덱스를 나타냅니다.이 인덱스를 사용하면 콤보 상자 1에서 선택된 항목을 이해하고 이에 따라 콤보 상자 2를 채울 수 있습니다.

+0

Donotalo 님의 답변에 감사드립니다. 그러나 조금 더 자세히 알려 주시기 바랍니다. "populateComboBox2"전달 된 매개 변수를 어떻게 검색 할 것입니다? U 말했듯이, 인덱스를 사용하여 그에 따라 combobox_2 채울 수 있지만 그것을 사용하려면 어떤 인덱스가 전달 된 알 수 있습니까? 매우 명확하지 않습니다. – user976369

+0

필자의 예제에서'populateComboBox2' 함수는 매개 변수를 가지고 있는데 그것은 콤보 상자 1의 변경된 인덱스입니다. – Donotalo

+0

직접 해보기 바랍니다. 일반적으로 인덱스> = 0입니다. – Donotalo