Windows/MFC 썸네일형 리스트형 MFC에서 API를 쓸때 handle 관련 현재윈도우의 핸들을 구하고자할때는 this->m_hWnd를 이용하면 됩니다. ::MessageBox(this->m_hWnd, ....); OnDraw같은데서 dc에 대해, dc.GetWindow()->m_hWnd를 이용하셔도 되구요. 당연히 pDC일때는 pDC->GetWindow()->m_hWnd를 이용하시면 되겠죠! 더보기 TreeList Control 트리리스트 컨트롤 트리리스트 컨트롤은... 기본 리스트 컨트롤이 있고 거기의 첫뻔째 컬럼이 트리컨트롤로 이루어 진 것을 말합니다. 이 곳이나 .. 코드프로젝트에 있는 샘플은 ..찾기 힘들고, 있다해도 코드가 복잡하네요... 그래서 괜찮은거 한개 찝어서.. 최대한 다이어트 시켰습니다... 저희 프로젝트때 쓸껀데... 혹시 필요하신 분 받으셔서...가져다 쓰세용...... 노드 삽입/삭제/수정(엔터쳐보세용)/리스트아이템간 키보드이동/트리펼치기(접기) 등등..기본기능은 다 됩니당.. 더보기 mmxmemcpy - from devpia [code] void mmxmemcpy(LPVOID pvDest, LPVOID pvSrc, int nCount) { __asm { // ecx < 8-bite count mov ecx, nCount shr ecx, 3 test ecx, ecx jz short _toend ;push eax ;push ebx push edx // edx 더보기 WM_COPYDATA 를 사용한 메세지 전송 COPYDATASTRUCT Link : http://blog.naver.com/kisatsg/20003544202 1.요약 서로다른 윈도우끼리(다른 프로세스에도 적용됨) 데이터를 주고 받고자 할때 윈도우에서 제공하는 WM_COPYDATA를 사용해 보기로 한다. 2.본문 하나의 윈도우에는 윈도우가 관리하는 논리적 주소공간이 있다. 이러한 이유때문에 하나의 윈도우에서 다른 윈도우로 포인터를 넘겨주고자 한다면 그리 쉬운방법이 아님을 알 수 있다. 하지만, WM_COPYDATA를 사용하면 논리적 주소공간에 상관없이 다른 윈도우로 한쪽의 논리적 주소를 넘길 수 있다. 예제를 살펴보기로 하자. 3.예제 [code] // source window에서.. void CSourceWnd::Write(const void* lpBuf, UINT nCo.. 더보기 프로그램이 실행된 폴더 구하기 GetModuleFileName Link : http://blog.naver.com/kisatsg/20003544184 [code] // // 프로그램이 실행된 폴더를 구하는 함수 // void GetExecFolder(CString& strPath) { TCHAR path_buffer[_MAX_PATH] = {0, }; TCHAR drive[_MAX_DRIVE] = {0, }; TCHAR dir[_MAX_DIR] = {0, }; TCHAR fname[_MAX_FNAME] = {0, }; TCHAR ext[_MAX_EXT] = {0, }; // // 실행 파일 이름을 포함한 Full path 가 얻어진다. // ::GetModuleFileName(NULL, path_buffer, _MAX_PATH); // // 폴더만 구해낸다. // .. 더보기 Font [code]// Day7Dlg.cpp : implementation file // #include "stdafx.h" #include "Day7.h" #include "Day7Dlg.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CAboutDlg dialog used for App About class CAboutDlg : public CDialog { public: CAboutDlg(); // Dialog Data //{{AFX_D.. 더보기 Font list 보기 폰트리스트 [code]int CALLBACK EnumFontFamProc(LPENUMLOGFONT lpelf, LPNEWTEXTMETRIC lpntm, DWORD nFontType, long lParam) { // Create a pointer to the dialog window CDay7Dlg* pWnd = (CDay7Dlg*) lParam; // Add the font name to the list box pWnd->m_ctlFontList.AddString(lpelf->elfLogFont.lfFaceName); // Return 1 to continue font enumeration return 1; } void CDay7Dlg::FillFontList() { int iCount; // The number .. 더보기 오른쪽 클릭 메뉴 [code]void CDay6Dlg::OnContextMenu(CWnd* pWnd, CPoint point) { // TODO: Add your message handler code here CMenu *mMenu; // Get a pointer to the menu mMenu = GetMenu(); // Get a pointer to the submenu mMenu = mMenu->GetSubMenu(0); // Open it as a context menu // 정렬 , 선택 버튼 mMenu->TrackPopupMenu(TPM_LEFTALIGN + TPM_LEFTBUTTON, point.x, point.y, pWnd, NULL); }[/code] 더보기 다이얼로그 띄우기 [code]Private : //해당 클래스명 맴버변수명 CMsgDlg m_dMsgDlg; if (m_dDlg.DoModal() == IDOK) { // The user checked OK, display the message the // user typed in on the message dialog m_sResult = m_dDlg.m_sMessage; // Update the dialog UpdateData(FALSE); // Enable the Which Option button //m_cWhichOption.EnableWindow(TRUE); }[/code] 더보기 공통 다이얼로그 함수 CFileDialog // 파일선택 CFontDialg // 폰트 선택 CColorDialog // 색상선택 CPageSetupDialog // 인쇄용지셋업 CPrintDialog // 인쇄 CFindReplaceDialog // 찾기와 바꾸기 더보기 이전 1 ··· 78 79 80 81 82 83 84 다음