아.. 죄송합니다 ㅠㅠ
지적이라니요 ㅠㅠ 그럴 실력도 못되구요 ㅠㅠ
다만 질문자가 혼동을 할까 싶어서 그만...
혹시 기분이 상하셨다면 죄송합니다.
김시환 님이 쓰신 글 :
: 지적 감사합니다. ^^;;
: 그런데 제가 답변을 쓴 이유는 범용적이 차원에서 추가 답변을 쓴 것입니다.
:
: 프로그램을 하다보면 특화된 기능만 코딩하기도 하지만 이왕이면 범용적으로 코딩을 하면
: 나중에 다시 재 사용하는 차원에서도 도움이 되고 또 다른 분이 비슷한 기능을 원했을 때
: 캡션이 숫자가 아닐 수도 있는 경우도 있으니 참고로 적어 놓은 것입니다.
:
: 저도 Q/A를 많이 이용해서 많은 정보를 얻는데 이왕이면 좀더 좋은 기능을 추가적으로
: 확인할 수 있으면 코딩에 많이 도움이 돼서요..
:
:
:
:
: 時代遺憾 님이 쓰신 글 :
: : 글쎄요 김시환님의 방법도 틀린 방법은 아니지만
: : 최초 질문자의 질문 내용 중에 임의 버튼 클릭 시 해당 버튼의 캡션을 출력한다는 내용의
: : 요지를 보았을 때...
: : 캡션이 숫자이든 문자이든 이것은 중요한 사안이 아닌것같습니다.
: : 중요한 것은 100개의 버튼이 있고 100개의 버튼이 반복적인 캡션을 출력하는 작업을 해야하는데
: : 이때 함수 한번만 호출해서 처리할 수 있는 메카니즘을 궁금해 하신것 같네요
: : 그런 차원에서는 장성호님이 답변하신 방법이 가장 적당하다고 생각됩니다..
: :
: :
: : 김시환 님이 쓰신 글 :
: : : 장성호님 글에 추가로 하나더 알려드리면
: : :
: : : 장성호님 처럼 버튼의 캡션 속성을 이용하게 되면 캡션은 무조건 숫자가 되어야 합니다.
: : :
: : :
: : : 컴포넌트에는 Tag라는 속성이 있습니다. 이것을 이용하면 버튼의 캡션과 무관하게 사용할 수 있습니다.
: : : Tag 속성이 Int 이므로 각 버튼마다 Tag 속성의 값을 번호로 매겨 놓습니다.
: : :
: : : void __fastcall TF_Main::Button12Click(TObject *Sender)
: : : {
: : : TButton *Btn=(TButton *)Sender;
: : :
: : : switch(Btn->Tag)
: : : {
: : : case 1 :
: : : case 2 :
: : : :
: : : case 100 :
: : : }
: : : }
: : :
: : : 위의 예처럼 switch 문을 사용하기도 편하고 Tag 숫자를 파라메터로 해서 함수를 호출할 수도 있습니다.
: : :
: : :
: : :
: : : 장성호 님이 쓰신 글 :
: : : : 다음과 같이 하면 됩니다.
: : : :
: : : :
: : : : void __fastcall TF_Main::Button12Click(TObject *Sender)
: : : : {
: : : : TButton *Btn=(TButton *)Sender;
: : : :
: : : : Memo1->Lines->Add(Btn->Caption);
: : : : }
: : : :
: : : : 축구 님이 쓰신 글 :
: : : : : 버튼 100개가 있는데 하는일이 누르면 자기가 가지고 있는 캡션을 출력을 한다고 할시
: : : : :
: : : : : 같은걸 100번 코딩하는거 말고 함수를 하나 만들어서 해도 되는데요
: : : : :
: : : : : 1번 버튼이눌렸는지 2번버튼이 눌렸는지 그건 어떻게 아는 거에요?
: : : : :
: : : : : 함수를 하나 만든다면 버튼마다 함수 호출할때 어떤게 눌렸는지 인자를 넘겨주면 될거 같은데 그럼 버튼마다 함수를 호출해서
: : : : :
: : : : : 100번 호출 하잖아요?
: : : : :
: : : : : 이방법 말고 버튼 하나에만 출력하는 코딩한다음 나머지 버튼은 온클릭을 버튼 1로 해주려하는데 이때
: : : : :
: : : : : Memo1->Lines->Add(button1->caption);
: : : : :
: : : : : 이런식으로 한다면 2~100번 버튼까지도 버튼 1캡션이 나오잖아요?
: : : : :
: : : : : 이걸 어떻게 바꿔야 각자로 인식을 할까요? this로 하면 form캡션이 인식이 되고 Sender에는 없는거 같고
: : : : :
: : : : : 어디선가 본것 같긴한데 잘 모르겠네요