개발메모(형식에 매이지 않는 짤막한 개발 낙서)

KD_RadioGroup KDManip.dll의 라디오그룹 사용 과정 메모

조회 수 2843 추천 수 0 2006.05.10 12:09:24
허창원 *.19.44.69
KD_RadioGroup KDManip.dll의 라디오그룹 사용 과정 메모

1. 구조체 변수 선언
    ...common.c에서 해당 구조체 변수의 선언
        KD_RadioGroup kdradiogroup;
        
    ...common.h에서 해당 구조체 변수의 선언
        extern KD_RadioGroup kdradiogroup;
        
    ...INI.h에서 해당라디오그룹의 정보 저장을 위한 변수 등록
        
        // kdradiogroup 의 옵션설정값의 활용예
        int opt;   // 0: xxx, 1: yyy, 2:zzz
    
    ...INI.c에서 해당라디오그룹의 정보 저장 및 적용 처리
    
        // KDRadioGroup과 연관된 사용예
        //KD_INIDATA2_Add(p_list->kid2, p_list->numData++, &(p_set->opt), "Section", "opt", KD_DT_INT);

        // KDRadioGroup과 연관된 사용예
        //p_set->opt = 0;

        // KDRadioGroup 값 적용하는 예
        //KDRadioGroup_SetMarkedOption_index(&kdradiogroup, p_set->opt);

        
2. 등록
    Initialize_DEFPROG_Before_DisplayPanel()에서 등록
    -------------------------------------------------------------------------        
    // KD_RadioGroup 초기화-시작
        // ini 모듈보다는 먼저 초기화할 것
        KDRadioGroup_Initialize(&kdradiogroup, 10, panelHandle);
    
        KDRadioGroup_Add(&kdradiogroup, PANEL_rbOpt1);
        KDRadioGroup_Add(&kdradiogroup, PANEL_rbOpt2);
        KDRadioGroup_Add(&kdradiogroup, PANEL_rbOpt3);
        
        // Radio Group 설정을 갱신
        //KDRadioGroup_Refresh(&kdradiogroup);
    // KD_RadioGroup 초기화-마침
    -------------------------------------------------------------------------        

3. 사용
    -------------------------------------------------------------------------        
        int CVICALLBACK radioCMGenMethod (int panel, int control, int event,
                void *callbackData, int eventData1, int eventData2)
        {
            switch (event)
                {
                case EVENT_VAL_CHANGED:
                        // 사용자에 의해 선택된 radio 컨트롤을 set(이 부분이 좀 특이한 처리군요...개선의 여지가 좀 있네요)
                        KDRadioGroup_SetMarkedOption_control(&kdradiogroup, control);
                    break;
                case EVENT_COMMIT:
                    KDRadioGroup_GetMarkedOption(&kdradiogroup, &(image23dviewer_ini_setting.opt));
                    
                    // 기타 처리
                    // ............
        
                    break;
                }
            return 0;
        }
    -------------------------------------------------------------------------        
        
4. 마무리
    Finish_DEFPROG()에서 마무리
    -------------------------------------------------------------------------        
    // KD_RadioGroup 마무리-시작
    // ini 모듈보다는 나중에 마무리할 것
    KDRadioGroup_Finish(&kdradiogroup);
    // KD_RadioGroup 마무리-마침
    -------------------------------------------------------------------------        
List of Articles
번호 제목 글쓴이 날짜 조회 수
93 그래프 커서의 위치를 읽어와서 스트링 컨트롤에 표시하는 예 허창원 2006-06-16 3064
92 폴더가 있는지 체크하고, 없다면, 생성하는 예 허창원 2006-06-01 3161
91 주어진 경로명이 디렉토리(폴더)인지 파일인지 구분하려면... 허창원 2006-06-01 3029
90 Panel이 항상 위에 오도록 file 허창원 2006-05-25 3146
» KD_RadioGroup KDManip.dll의 라디오그룹 사용 과정 메모 허창원 2006-05-10 2843
88 [Link] Reading and Writing Image Files 허창원 2006-05-03 2819
87 그래프의 Scaling Mode와 Range를 지정 예 허창원 2006-05-02 5408
86 저장할 때 데이터 폴더를 검사하여 필요하면 만들어서 저장하는 예 허창원 2006-04-18 2977
85 투명한 Canvas를 이용할 때 이런 모드... file 허창원 2006-04-13 3158
84 그래프 커서를 이용하려면 그래프의 Control Mode가... 허창원 2006-03-30 4474
83 테이블의 셀 인덱스 구하는 예 허창원 2006-03-07 2827
82 Rect, Point 구조체 선언된 userint.h의 일부 내용 허창원 2006-02-22 3236
81 List box에서 Delete 키를 눌렀을 때, 해당 Item 지우는 예 허창원 2006-02-02 3026
80 클립보드에 문자열 복사하기/가져오기 허창원 2006-01-09 3294
79 구간을 Linear/Log scale로 등분하고자 할 때 허창원 2005-12-27 3353
78 Build Error 중 Inconsistent type declarations... 해결방법 허창원 2005-12-23 3022
77 CVI에서 이용하는 Complex 데이터형 허창원 2005-12-22 2970
76 그래프 컨트롤 더블클릭하면 확대된 그래프 화면 보이기 허창원 2005-12-22 3076
75 명령버튼을 누를 때와 뗄 때에 각각 적절한 처리하기 file 허창원 2005-12-06 3912
74 Noisy Sine Wave 데이터 만들기 허창원 2005-11-24 3297