윈도우 창 리사이즈를 정리해보자 ~!
http://snipplr.com/view/14659/mfc-resize-control-in-cdialog-app/


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
    // This OnSize function resizes one large control in a dialog.
    // The one control grows horizontally and vertically to fill the dialog. It's position remains unchanged.
    // Other controls (buttons etc) would typically be above the one resizable control.
    // How to add OnSize:
    // [1] add to .h: afx_msg void OnSize(UINT nType, int cx, int cy);
    // [2] add to message map in .cpp: ON_WM_SIZE()
    // [3] add this OnSize function.
    
    //http://wwwusers.brookes.ac.uk/p0071643/resize.htm

    void CMyDlg::OnSize(UINT nType, int cx, int cy)
    {
      CDialog::OnSize( nType, cx, cy);
       // 리사이즈 할 컨트롤의 포인터 선언
       CWnd* pCtl = GetDlgItem(IDC_MSFLEXGRID1);
     
          if (!pCtl) { return; }                      // 컨트롤이 있는지 확인
     
       CRect rectCtl;                              //CRect 를 사용해서 포지션을 할당
       pCtl->GetWindowRect(&rectCtl);   // 컨트롤의 위치 얻기
       ScreenToClient(&rectCtl);            //스크린 좌표로 부터의 다이얼로그에 대한 좌표로 변환

       // SetWindowPos 를 호출해서 동적으로 컨트롤의 위치를 리사이즈 한다.
       // rectCtl.left is assumed to be the left, bottom and right margin for the control.
       //rectCtrl.left 는 왼쪽이며 bottom 과 right 는 컨트롤의 여백이다.
       //x값 : 절대위치, y값 :절대위 ,w. 수평으로 늘릴때 늘어난 가로,수직으로 늘릴때 늘어난 세로
       pCtl->SetWindowPos(NULL,rectCtl.left, rectCtl.top,
                                       cx- 2 * rectCtl.left, cy- rectCtl.top - rectCtl.left, SWP_NOZORDER);
  
    



저작자 표시
신고

'MFC > Basic' 카테고리의 다른 글

창 리사이즈 코드  (0) 2014.10.31
[MFC] RPC 서버 해결 방법  (2) 2014.10.21
Path관련 함수 정리 및 탐색기 예제 소스  (2) 2013.10.17

WRITTEN BY
Profile
비타오백
Enjoy your stage!

받은 트랙백이 없고 , 댓글이 없습니다.
secret


파일다이얼로그를 열때 RPC 서버 뭔식이가 뜨는 것을 방지하기 위해서는

아래와 같이 해야함.

출처 : http://mfctips.com/2012/10/29/cfiledialogdomodal-causes-access-violation/

#ifdef _DEBUG
const BOOL VistaStyle = FALSE;  
#else
const BOOL VistaStyle = TRUE;  
#endif
CFileDialog Dlg( TRUE, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, L"All Files (*.*)|*.*||", NULL, 0, VistaStyle ); 

if( Dlg.DoModal() == IDOK )  
{

}


저작자 표시
신고

'MFC > Basic' 카테고리의 다른 글

창 리사이즈 코드  (0) 2014.10.31
[MFC] RPC 서버 해결 방법  (2) 2014.10.21
Path관련 함수 정리 및 탐색기 예제 소스  (2) 2013.10.17

WRITTEN BY
Profile
비타오백
Enjoy your stage!

받은 트랙백이 없고 , 댓글  2개가 달렸습니다.
  1. 살려주세요 2016.04.22 22:38 신고
    저 혹시 윈도우7 암호입력할때 나오는 rpc서버를 사용할수 없습니다는 어떻게 고쳐야 하나요?
  2. 윈도우7 이 아니라 비주얼 스튜디오 문제라 ....죄송
secret

상대경로 --> 폴더 패스를 만들고 싶어서 구글링을 한 결과.. 찾은 참고 사이트..


요기


저작자 표시
신고

'MFC > Basic' 카테고리의 다른 글

창 리사이즈 코드  (0) 2014.10.31
[MFC] RPC 서버 해결 방법  (2) 2014.10.21
Path관련 함수 정리 및 탐색기 예제 소스  (2) 2013.10.17

WRITTEN BY
Profile
비타오백
Enjoy your stage!

받은 트랙백이 없고 , 댓글  2개가 달렸습니다.
  1. http://yowon009.tistory.com/650
    http://yowon009.tistory.com/651

    링크 바꼈습니다.
secret

구글링하다가 찾은 리스트 컨트롤 색상넣고


제목은 두줄로 만들기..


저작권 보호를 위해 링크를 연결함,,


헤더 생성을 위한 파일:


CHeaderCtrlEx.egg


링크사이트



요기

저작자 표시
신고

WRITTEN BY
Profile
비타오백
Enjoy your stage!

받은 트랙백이 없고 , 댓글이 없습니다.
secret

1. 차일드 다이얼로그 변수 선언 방법


여러가지 방법이 있지만 , 깔끔한 방법은 이것!

CWinApp 헤더에 집어 넣는다.


#include "ChildDlg.h"    // Added by ClassView

/////////////////////////////////////////////////////////////////////////////
// CChildDlgTestApp:
// See ChildDlgTest.cpp for the implementation of this class
//

class CChildDlgTestApp : public CWinApp
{
public:
    CChildDlg * m_pChildDlg;  
    CChildDlgTestApp();


/***/

}


2. 다이얼로그 생성방법


// 메인 다이얼로그에 자식 다이얼로그 삽입

BOOL OninitDialog()

{


    theApp.m_pChildDlg = new CChildDlg(this);
    CStatic *pStatic ;
    CRect rect ;
    pStatic = ( CStatic* )GetDlgItem(IDC_STATIC_DLG);
    pStatic->GetWindowRect(&rect) ;
    ScreenToClient(rect);

  theApp.m_pChildDlg->Create(IDD_DIALOG1 , this );

    theApp.m_pChildDlg->ShowWindow(SW_NORMAL);
    theApp.m_pChildDlg->SetWindowPos(this , rect.left , rect.top, rect.Width(), rect.Height()   ,SWP_SHOWWINDOW    ) ; 


    return TRUE;  // return TRUE  unless you set the focus to a control
}



3. 다이얼로그 소멸 (WM_CLOSE) 호출하여 아래 내용을 넣음..


void CChildDlgTestDlg::OnClose()
{

    theApp.m_pChildDlg->DestroyWindow();
    delete      theApp.m_pChildDlg;

    CDialog::OnClose();
}


예제 파일은 요기! 


ChildDlgTest.egg




저작자 표시
신고

'MFC > Child Dialog' 카테고리의 다른 글

차일드 다이얼로그를 CStatic 탭에 넣기 ..  (0) 2013.05.03

WRITTEN BY
Profile
비타오백
Enjoy your stage!

받은 트랙백이 없고 , 댓글이 없습니다.
secret


내가 만든 파일

Prog_src.egg


저작자 표시
신고

WRITTEN BY
Profile
비타오백
Enjoy your stage!

받은 트랙백이 없고 , 댓글이 없습니다.
secret

참고 사이트


http://blog.naver.com/nanoteli/30074940036


첨부 파일  

vcblog.egg


저작자 표시
신고

WRITTEN BY
Profile
비타오백
Enjoy your stage!

받은 트랙백이 없고 , 댓글이 없습니다.
secret


1. 도움이 큰 곳


http://ziplab.blogspot.kr/2010/04/mfcvirtual-list-control.html


http://code.google.com/p/embedded-sg2000-firmware/source/browse/trunk/Application/1%EC%B4%88%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B3%80%ED%99%98/%EC%98%88%EC%A0%9C/HighSpeedListCtrl_%EC%B6%94%EA%B0%80_%EA%B0%9C%EC%84%A0/?r=5



2. 그밖에 (Virtual ListCtrl (가상 리스트 컨트롤) 주의 사항)


http://six605.tistory.com/248

저작자 표시
신고

WRITTEN BY
Profile
비타오백
Enjoy your stage!

받은 트랙백이 없고 , 댓글이 없습니다.
secret