본문 바로가기
반응형

C & C++/MFC 컨트롤199

멀티라인 헤더(컬럼) 및 배경색 추가, 헤더(컬럼) 크기 고정, 행 높이 - 리스트 리스트콘트롤의 헤더에서 멀티라인 지원하는 클래스. http://www.codeproject.com 에 있는 자료를 필요에 의해 짜집기 및 수정해서 만들었다. 사용법은 간단하다. // 헤더파일 추가 #include "ListCtrlEx.h" CListCtrl 멤버변수를 CListCtrlEx로 바꿔주고... // 헤더 추가LV_COLUMN lvcolumn; lvcolumn.mask = LVCF_FMT|LVCF_SUBITEM|LVCF_TEXT|LVCF_WIDTH; lvcolumn.fmt = LVCFMT_CENTER; lvcolumn.cx = 0; lvcolumn.pszText = " "; m_ctrlList.InsertColumn(nIdx++, &lvcolumn); lvcolumn.fmt = LVCFMT_RI.. 2013. 8. 29.
다이얼로그 작업표시줄에서 감추기기(이중 다이얼로그) 같은 프로젝트를 사용하는 다이얼로그 화면인데 왼쪽화면은 작업표시줄에 화면이 표시 되지않았고 오른쪽 다이얼로그는 작업표시줄에 표시되는 상황 발생... ㅡㅡ 아래 소스로 해결 'OnInitDialog' 에다가 다음 한줄을 넣어주면 해결된다. ModifyStyleEx( WS_EX_APPWINDOW,WS_EX_TOOLWINDOW, 0 ); 퍼온글 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// CDialog에 기반한 App를 개발할때, 작업표시줄에서 대화상자를 감추고 싶을때 써먹어 보자. (WTL 프로젝트지만, MFC 프로젝트에도 약간만 바꾸면 쉽게 .. 2013. 7. 5.
특정 색상을 제외한 투명한 다이얼로그 특정 색상을 제외한 투명한 다이얼로그 SetWindowLong(this->m_hWnd, GWL_EXSTYLE, GetWindowLong(this->m_hWnd, GWL_EXSTYLE) | WS_EX_LAYERED); ::SetLayeredWindowAttributes(this->m_hWnd, RGB(255, 255, 255), 0, LWA_COLORKEY); // RGB(0, 0, 0) 값을 제외시킨다. 2013. 5. 7.
다이얼로그 최대화 하는 2가지 방법 방법 1) ShowWindow(SW_MAXIMIZE); ============================================================================================== 방법 2) //OnInitDialog() 부분에 추가하면 된다. LONG style = ::GetWindowLong( m_hWnd, GWL_STYLE ); style &= ~WS_CAPTION; style &= ~WS_SYSMENU; ::SetWindowLong( m_hWnd, GWL_STYLE, style ); int screenx = GetSystemMetrics( SM_CXSCREEN ); int screeny = GetSystemMetrics( SM_CYSCREEN ); //.. 2012. 11. 28.
시스템 캡션 깜빡거리게 만들기 윈도우 캡션(타이틀)을 깜빡거리게 만드는 방법에 대해서 알아보겠습니다. // 사용하고자하는 클래스 헤더파일에 아래의 코드를 추가한다. private: BOOL m_flag; // 클래스의 객체 생성자에 아래의 코드를 추가한다. m_flag = TRUE; // ClassWizard를 이용하여 WM_SYSCOMMAND 메시지를 등록하고 해당 메시지 핸들러에 // 아래의 코드를 추가한다. // 일반적인 ClassWizard 설정에서 대화상자의 경우 WM_SYSCOMMAND 메시지가 목록에 // 없을 때는 아래와 같이 설정하면 된다. // 해당 대화상자에 최소화 버튼이 없을 경우에는 아래와 같이 설정하면 된다. // 최소화 버튼이 눌러졌는지 체크하여 최소화 버튼이 눌렸다면 Timer를 생성하고 // 윈도우가 R.. 2012. 10. 5.
분할 윈도우(Splitter) 하나의 View 영역을 분할하여 사용할 수 있는 윈도우를 의미합니다. 여기서 분할이라는 의미는 화면 영역을 나누어 사용한다는 의미로 각 영역은 동일한 데이터를 공유할 수 있으며 화면에 표시되는 방식에만 차이가 있는 것을 의미합니다. 분할윈도우를 컨트롤하는 윈도우 클래스는 CSplitterWnd입니다. 이 클래스가 프레임윈도우에 설정되고 이 윈도우위에 여러 개의 View윈도우들이 설정될 수 있는 것 입니다. 분할윈도우를 설정하고자 할 때는 AppWizard Step4에서 Advance항목을 선택하고 분할윈도우 스타일을 설정해 주어야 합니다. 1) 분할 윈도우의 종류 정적 분할 윈도우 프로그램이 실행 될 때 영역이 분할된 상태로 실행되며 영역의 크기를 조절할 수는 있지만 분할된 영역을 제거할 수는 없는 분할.. 2012. 9. 3.
반응형