임베디드 프로그래밍  

         
전체 기타 | WinCE | Delphi | VisualC | ARM | Media | SE | 마리오네트 | Java | wdm | JTAG | 영상처리 | 인증 | 질문/답변 | H/W | 알고리즘 | Platform | .net | VB | PPC | Network | android | QT | WWW | Linux |
윈도우 이름을 기준으로 하부 윈도우를 찾는 예제
하창호04-21 17:27 | HIT : 4,133
윈도우 이름을 기준으로 하부 윈도우를 찾고 해당 윈도우가 원하는 윈도우인지
또다른 하부 윈도우로 이름을 체크하는 프로그램 예제

typedef enum
{
        FF_WNDTYPE_MAIN = 0,
        FF_WNDTYPE_SUB,
        FF_WNDTYPE_SUBSUB,
        FF_WNDTYPE_MAX
} CFirstFindWindowType;

CWnd* FindSubWindow(CFirstFindWindowType eWndNameType, CString szWndName, UINT nSubCount, UINT nSubSubCount, CString szCompareSubName = _T(""), UINT nCompareSubCount = 0)
{
        if((szCompareSubName.IsEmpty() == FALSE) && (nCompareSubCount != 0))
        {
                CWnd* pCompareWnd = FindSubWindow(eWndNameType, szWndName, nCompareSubCount);
                if(pCompareWnd != NULL)
                {
                        CString szCompare = _T("");
                        pCompareWnd->GetWindowText(szCompare);
                        if(szCompare.Find(szCompareSubName, 0) < 0)
                        {
                                return NULL;
                        }
                }
        }

        CWnd* pFirstWnd = NULL;
        pFirstWnd = FindWindow(NULL, szWndName);
        if((pFirstWnd == NULL) || (pFirstWnd->GetSafeHwnd() == NULL))
        {
                return NULL;
        }

        CWnd* pMainWnd = NULL;
        switch(eWndNameType)
        {
                case FF_WNDTYPE_MAIN:
                        pMainWnd = pFirstWnd;
                        break;
                case FF_WNDTYPE_SUB:
                        pMainWnd = pFirstWnd->GetParent();
                        break;
                case FF_WNDTYPE_SUBSUB:
                        pMainWnd = pFirstWnd->GetParent()->GetParent();
                        break;
                default:
                        return NULL;
        }
        
        if((pMainWnd == NULL) || (pMainWnd->GetSafeHwnd() == NULL))
        {
                return NULL;
        }

        UINT nSub = 0;
        UINT nSubSub = 0;

        if(nSubCount == 0)
        {
                return pMainWnd;
        }

        CWnd* pSubWnd = pMainWnd->GetWindow(GW_CHILD);
        nSub++;

        while(1)
        {
                if((pSubWnd == NULL) || (pSubWnd->GetSafeHwnd() == NULL))
                {
                        return NULL;
                }

                if(nSub >= nSubCount)
                {
                        break;
                }

                nSub++;
                pSubWnd = pSubWnd->GetWindow(GW_HWNDNEXT);
        }

        if(nSubSubCount == 0)
        {
                return pSubWnd;
        }

        pSubWnd = pSubWnd->GetWindow(GW_CHILD);
        nSubSub++;

        while(1)
        {
                if((pSubWnd == NULL) || (pSubWnd->GetSafeHwnd() == NULL))
                {
                        return NULL;
                }

                if(nSubSub >= nSubSubCount)
                {
                        break;
                }

                nSubSub++;
                pSubWnd = pSubWnd->GetWindow(GW_HWNDNEXT);
        }

        return pSubWnd;
}


Notice  기타 :: 내가 만든 제품이 CES 2009 에서 혁신상을 탔다.    하창호 2009·01·21 4406
490  Linux :: 우분투에서 리모트 데스크탑 설치    하창호 2011·07·16 2882
489  Linux :: 우분투 멀티 모니터 기본모니터 수정    하창호 2011·07·16 3192
488  android :: 겔럭시 계열 USB 드라이버 다운로드    하창호 2011·05·30 3090
487  Linux :: gcc: error trying to exec 'cc1plus'...    하창호 2011·04·22 8232
486  android :: Android Preview surface 위에 컨트롤 위치...    하창호 2011·03·09 6348
485  android :: Android Irrlicht 3D 포팅 예제    하창호 2011·02·18 6330
484  기타 :: Linux Unicode programming    하창호 2011·02·18 3372
483  영상처리 :: BMP 스팩 Height 역전에 대해 새롭게 알게된 사실    하창호 2010·07·28 4080
482  WWW :: Facebook JavaScript    하창호 2010·06·16 3895
481  WWW :: Server-side Personalization faceboo...    하창호 2010·06·14 3730
480  WWW :: REST API Server 구축 관련 자료를 수집  …1  하창호 2010·06·11 4132
479  WWW :: CURL 사용방법  …1  하창호 2010·06·11 4009
478  기타 :: MAC OS X 10.5.8 leopard 용 XCODE 및 I...    하창호 2010·05·11 5359
477  WWW :: Facebook Query Language 의 Table Lis...    하창호 2010·05·04 3568
476  기타 :: VM 에 OSX 설치  …3  하창호 2010·04·27 3416
475  WWW :: What is Data Web Services?    하창호 2010·04·14 3316
474  WWW :: 루비 프로그래밍    하창호 2010·04·14 3280
473  WWW :: IBM developerworks    하창호 2010·04·14 3167
472  WWW :: 웹 포탈 사이트 설계    하창호 2010·04·13 3597
471  WWW :: 아마존 클라우드 잘 정리된 링크    하창호 2010·04·13 3352
470  android :: Android UI 설계용 Layout Tool    하창호 2010·03·19 7390
469  android :: Android 개발환경 설정 요약  …1  하창호 2010·03·11 3491
468  WinCE :: QR CODE 관련 2차원 바코드  …1  하창호 2010·01·06 5830
467  android :: G4L - ghost for linux    하창호 2009·12·11 4287
466  .net :: NDDE Source    하창호 2009·10·07 3607
465  android :: 리눅스에서 IP 설정 및 USB LAN 설정    하창호 2009·08·20 5609
464  VisualC :: ODBC 이용 EXCEL 사용시 데이터 입력 주의    하창호 2009·08·07 3698
463  VisualC :: Office Excel 2007 SQL에 넣기 mssql    하창호 2009·08·06 8400
462  VisualC :: 내부적으로 쓰레드를 사용하는 COM 객체를 쓰레드에서 ...    하창호 2009·07·18 4199
461  VisualC :: CDBVariant 의 m_pstring Exception 방...    하창호 2009·07·16 4430
460  QT :: Porting to QBuild  …1  하창호 2009·06·26 3362
459  QT :: OS 에 따른 Build 조건문 예제    하창호 2009·06·26 3386
458  PPC :: PPC DeviceID 가져오기    하창호 2009·06·18 4634
457  PPC :: Serial Number    하창호 2009·06·09 0
456  android :: 안드로이드 android 개발 설정    하창호 2009·05·29 6828
455  android :: 안드로이드 android 설치 관련    하창호 2009·05·29 3779
454  Network :: Hypertext Transfer Protocol -- HTTP...    하창호 2009·05·26 3520
453  Network :: HTTP Tunneling (HTTP Proxy Socket C...    하창호 2009·05·26 4268
452  Network :: Http Tunnel Software    하창호 2009·05·22 4736
451  Network :: Tunneling to circumvent firewall po...    하창호 2009·05·22 3575
450  PPC :: Mobile6에서 구글 메일 사용 하기 위한 프로그램들    하창호 2009·05·21 3279
449  PPC :: 4655 키패드에 조명 설정 레지스트리    하창호 2009·05·19 4183
448  기타 :: M4850 블루투스로 인터넷 연결하기    하창호 2009·05·15 4746
447  VisualC :: CEdit 를 이용한 채팅창 처럼 자동 스크롤 되는 로그...    하창호 2009·05·11 6713
446  기타 :: google calendar sms crack ...ing    하창호 2009·04·30 1
445  VisualC :: ATL COM 쉽게 레지스트리 등록 방법    하창호 2009·04·29 3738
444  VisualC :: OLE Automation Event 사용예제 대신사이보스...    하창호 2009·04·28 7384
443  VisualC :: OLE Automation classes 사용예제    하창호 2009·04·27 6948
442  VisualC :: 소스코드에 DLL 위치 추가하는 방법    하창호 2009·04·27 6378
441  VisualC :: Linker Tools Error LNK2001 에러에 대한 ...    하창호 2009·04·27 4568
440  VisualC :: Capture 하기 예제 캡춰시 상위 화면 보인후 캡춰하...    하창호 2009·04·24 3992
439  VisualC :: DIBAPI 사용시 Bitmap 이미지 크기와 JPEG 이미...    하창호 2009·04·23 4914
438  VisualC :: DIB API 를 이용한 Bitmap 을 jpeg 로 저장하...    하창호 2009·04·22 5466
437  VisualC :: Thread 와 List 를 이용한 Queue 로 버퍼링 ...    하창호 2009·04·22 3735
436  VisualC :: ClickWindow 예제    하창호 2009·04·21 3733
 VisualC :: 윈도우 이름을 기준으로 하부 윈도우를 찾는 예제    하창호 2009·04·21 4133
434  기타 :: WOL Wake On Lan 원격 부팅 만드는 방법    하창호 2009·04·21 11717
433  VisualC :: MAPI 를 이용한 메일 보내기 Sendmail    하창호 2009·04·20 5548
432  VisualC :: 부모 윈도우에서 자식 윈도우 위치로 윈도운 핸들 구하기  …1  하창호 2009·04·16 7835
431  VB :: VB 에서 타이머 사용    하창호 2009·04·13 3436
430  VisualC :: Excel DDE 제어    하창호 2009·04·13 4196
429  VisualC :: 시간을 배열의 Index 로 서로간 변환 하는 함수 최소...    하창호 2009·04·03 3596
428  VisualC :: mysql odbc connection string    하창호 2009·03·26 5828
427  VisualC :: CDBException::m_strStateNativeOrigi...  …1  하창호 2009·03·24 4137
426  VisualC :: Microsoft Excel data type ODBC data...  …1  하창호 2009·03·11 3599
425  VisualC :: CRecordset.GetFieldValue 사용시 CDBVar...    하창호 2009·03·10 4633
424  VisualC :: ini 사용법    하창호 2009·03·09 4390
423  WinCE :: EVC 설치시 REG.VBS 파일 Script Host Error...  …2  하창호 2009·02·24 5043
422  WinCE :: EVC Window Fatal Error 8000002 관련 ...    하창호 2009·02·19 3811
1 [2][3][4][5][6][7][8]
   
Copyright 1999-2018 Zeroboard / skin by GGAMBO
....