gksqjs94 님이 쓰신 글 :
: 안녕하세요. 간단한건데요..
:
: 그룹박스에 라디오버튼이 6개 있습니다.
: 각 라디오버튼을 누를때마다 발생하는 이벤트가 다른 형식입니다.
:
: 그리고 그냥 버튼이 하나있는데 이걸 누르면 어느 라디오버튼이 체크되었는지 알고싶습니다.
: 밑에코드는 버튼 누르면 어디에 체크되있는지 조건문을 반복적으로 도는건데요
:
: 버튼클릭함수
: if(RadioButton5->Checked)
: {
:
: imagePath=L"D:\\sample\\Suc.bmp";
: }
: else if(RadioButton6->Checked)
: {
:
: imagePath=L"D:\\sample\\Suc.bmp";
: }
: else if(RadioButton1->Checked)
: {
:
: imagePath=L"D:\\sample\\Suc.bmp";
: }
: else if(RadioButton2->Checked)
: {
:
: imagePath=L"D:\\sample\\Suc.bmp";
: }
: else if(RadioButton3->Checked)
: {
:
: imagePath=L"D:\\sample\\Suc.bmp";
: }
: else if(RadioButton4->Checked)
: {
:
: imagePath=L"D:\\sample\\Suc.bmp";
: }
: 이거를 더 간결히 할수 있는 방법이 있을까요 ?
:
:
: 그리고 라디오그룹이라는것도 있던데 이것도 각각 라디오버튼에 클릭이벤트를 줄수있나요 ?
:
: 감사합니다.
:
:
:
:
RadioGroup 컴포넌트를 사용하세요..
그리고 RadioGroup 의 click 이벤트에서 ItemIndex 프로퍼티를 이용하시면 간단해 집니다.
void __fastcall TfrmCondition::RadioGroup1Click(TObject *Sender)
{
switch(RadioGroup1->ItemIndex)
{
case 0:imagePath=L"D:\\sample\\Suc1.bmp";
break ;
case 1:imagePath=L"D:\\sample\\Suc2.bmp";
break ;
case 2:imagePath=L"D:\\sample\\Suc3.bmp";
break ;
:
:
}
}
|