MFC에서 슬라이더 컨트롤을 더블클릭하면

조금은 심하게 생뚱맞은 핸들러가 생성되는데 문제는.. 값이 변하는데 나오는 값이 아닌

슬라이더를 그리는데 필요한 핸들러가 호출되도록 연결된다.. -_-

ON_NOTIFY(NM_CUSTOMDRAW, IDC_SLIDER1, &CtestDlg::OnNMCustomdrawSlider1) 


void CtestDlg::OnNMCustomdrawSlider1(NMHDR *pNMHDR, LRESULT *pResult)

{

// optical zoom slider

LPNMCUSTOMDRAW pNMCD = reinterpret_cast<LPNMCUSTOMDRAW>(pNMHDR);

// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.

*pResult = 0;


아무튼.. 여기다가 억지로 코드를 구겨 넣어서 값을 넣어두니..

실행하면 창이 뜨기도 전에 에러가 발생하는 사태가 발생..


클래스 위저드에서 "메시지 - WM_HSCROLL" 을 택해서 추가한 후

원하는 슬라이더 컨트롤의 스크롤바인지 확인하고 처리를 해주어야 한다.

void CtestDlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)

{

// TODO: 여기에 메시지 처리기 코드를 추가 및/또는 기본값을 호출합니다.


CDialogEx::OnHScroll(nSBCode, nPos, pScrollBar);


[링크 : http://system.tistory.com/entry/MFC슬라이더-컨트롤-사용법]


void CMyDlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar) 

{

    CSliderCtrl *ACSliderCtrl = (CSliderCtrl *)pScrollBar;

    int nID = ACSliderCtrl->GetDlgCtrlID();

    int NewPos = ((CSliderCtrl *)pScrollBar)->GetPos();

    CWnd *ACWnd = GetDlgItem(nID);



    switch (nID)

    {

        default:

            break;


        case IDC_SLIDER1:

            m_edit1.Format( "%d", NewPos );

            UpdateData(FALSE);

            break;

    }

    CDialog::OnHScroll(nSBCode, nPos, pScrollBar);

}

[링크 : https://stackoverflow.com/questions/7269834/event-when-a-particular-slider-is-changed]

[링크 : https://msdn.microsoft.com/ko-kr/library/xzkasz2y(v=vs.100).aspx]

신고
Posted by 구차니

댓글을 달아 주세요

MFC CMenu에서 선택/선택해제 하도록 하는 방법


음.. radio 처럼 하나 선택하면 다른거 풀리는게 아니다 보니

여러개 항목이라면 꽤나 번거로워 질 듯 하다 ㅠㅠ


[링크 : http://cysnim12.tistory.com/entry/메뉴-항목-체크-해지-하기]


DWORD WINAPI CheckMenuItem(

  _In_ HMENU hmenu,

  _In_ UINT  uIDCheckItem,

  _In_ UINT  uCheck

);

[링크 : https://msdn.microsoft.com/en-us/library/windows/desktop/ms647619(v=vs.85).aspx]


UINT GetMenuState(

   UINT nID,

   UINT nFlags 

) const;

[링크 : ]https://msdn.microsoft.com/ko-kr/library/5z8dxz39.aspx

신고
Posted by 구차니

댓글을 달아 주세요

스타일이랑은 좀 다른건가..?

아무튼 스택오버플로우 문서에서 힌트를 얻어 보다 보니..

Border가 THICK 이면 resize가 된다고 하니

Thick이 아닌 걸로 찾아보니..

Thin / Resizing / Dialog Frame / None 중에 일단

Thin으로 하니 리사이즈가 안된다!!



[링크 : https://stackoverflow.com/questions/3275989/disable-window-resizing-win32]

신고
Posted by 구차니

댓글을 달아 주세요

일단 BMP를 ICO로 웹에서 변경하고 다운 받은 후

리소스에 추가하고 그걸 불러 오는 쪽으로 전환을 했는데..

속성에 보면 Bitmap과 Icon이 있는데 둘다 체크해도 상관없고

둘중에 하나라도 체크를 해주어야 아이콘이 표시된다.


왼쪽은 icon/bitmap true로 설정

오른쪽은 둘다 false로 설정했을때 표시되는 내용


다만, 둘다 false로 표시해도

충분히 크면 표시는 되는데 예상한 것과는 좀 다르게 작동하는 것 같아서

아이콘 크기라던가 이런거 좀 고민중..

버튼을 줄이면 이런식으로 나오는데.. 

버튼의 중심점을 기준으로 왼쪽에 표시하고 크기에 따라 잘리게 되는것 같은 느낌?


BM_SETIMAGE is not a button style, but a message which is sent to the window in order to set a bitmap. What you probably want is the BS_BITMAP style. Unfortunately as far as I know, it is not possible to have both text and a bitmap on a standard button. But you should find plenty of working implementations of a custom button class on sites like codeguru or codeproject. 

[링크 : https://stackoverflow.com/.../how-to-show-both-icon-and-text-on-button-on-mfc]

[링크 : https://www.codeproject.com/.../HowpluscanplusIpluscreateplusplusbuttonplusshowing]


이상하다.. 왜 두배 정도 커졌지?


+

SetIcon 대신에 LoadImage를 해서 HICON 핸들을 얻은후 그걸로 넣으면 해결

간단한 방법 없나...

[링크 : http://forums.codeguru.com/showthread.php?394090-Resizing-icon-on-a-button]

[링크 : https://www.experts-exchange.com/.../MFC-SetIcon-problem-if-called-twice.html]

[링크 : https://www.experts-exchange.com/.../CMFCButton-Icon-twice-as-big-as-it-should-be.html]


+

void CtestDlg::setIconBydlgitem(int dlg, int icon)

{

CButton *btn;

btn = ((CButton*)GetDlgItem(dlg));

HICON DSN_ICON = (HICON)::LoadImage(AfxGetInstanceHandle(), MAKEINTRESOURCE(icon), IMAGE_ICON, 16, 16, 0);

btn->SetIcon(DSN_ICON);


+

HICON SetIcon(

   HICON hIcon,

   BOOL bBigIcon 

);

hIcon

A handle to a previous icon.

bBigIcon

Specifies a 32 pixel by 32 pixel icon if TRUE; specifies a 16 pixel by 16 pixel icon if FALSE. 

[링크 : https://msdn.microsoft.com/ko-kr/library/9cb3b7b5.aspx]

신고

'Programming > C / Win32 / MFC' 카테고리의 다른 글

MFC CMenu  (0) 2017.10.16
MFC 다이얼로그 창 크기 변경 못하도록 하기  (0) 2017.10.11
MFC 버튼에 아이콘 표시 관련  (0) 2017.10.11
MFC 버튼에 이미지 넣기  (0) 2017.10.10
MFC CMenu 폰트 변경하기  (0) 2017.10.08
MFC String table  (0) 2017.09.29
Posted by 구차니

댓글을 달아 주세요

아무래도 리소스의 비트맵이나 아이콘이 편할 듯?


비트맵 이미지를 리소스에 넣고 그걸 이용하는 소스

CBitmapButton 클래스 사용

[링크 : http://l71026.tistory.com/105]


BOOL LoadBitmaps(

   LPCTSTR lpszBitmapResource,

   LPCTSTR lpszBitmapResourceSel = NULL,

   LPCTSTR lpszBitmapResourceFocus = NULL,

   LPCTSTR lpszBitmapResourceDisabled = NULL 

);

BOOL LoadBitmaps(

   UINT nIDBitmapResource,

   UINT nIDBitmapResourceSel = 0,

   UINT nIDBitmapResourceFocus = 0,

   UINT nIDBitmapResourceDisabled = 0 

); 

[링크 : https://msdn.microsoft.com/ko-kr/library/6y6acs49.aspx]


리소스의 아이콘을 setIcon을 통해 이용하는 소스

[링크 : http://as1202.tistory.com/321]



CImage 클래스를 이용해서 png를 불러들여 CMFCButton 클래스에서 설정하는 방법

[링크 : http://blog.naver.com/hextrial/220156224504]

[링크 : https://msdn.microsoft.com/en-us/library/bb984522(v=vs.90).aspx]

신고
Posted by 구차니

댓글을 달아 주세요

VS2010 에서 폰트가 너무 큰 느낌이라..

dialog에서 폰트를 변경하니 Menu 에는 적용 안되서 검색중


[링크 : https://msdn.microsoft.com/en-us/library/ms647558(VS.85).aspx...]

   [링크 : http://cafecola.tistory.com/62]

   [링크 : https://social.msdn.microsoft.com/.../change-the-font-size-of-menu-in-mfc-in-sdi-application...]

   [링크 : ]https://www.codeproject.com/Questions/808818/in-mfc-how-to-set-menu-fonts-and-colors

[링크 : https://www.codeproject.com/Articles/22/Cool-Owner-Drawn-Menus-with-Bitmaps-Version]

   [링크 : http://majorss.tistory.com/32]

신고

'Programming > C / Win32 / MFC' 카테고리의 다른 글

MFC 버튼에 아이콘 표시 관련  (0) 2017.10.11
MFC 버튼에 이미지 넣기  (0) 2017.10.10
MFC CMenu 폰트 변경하기  (0) 2017.10.08
MFC String table  (0) 2017.09.29
MFC 다이얼로그 메뉴 추가하기  (0) 2017.09.29
MFC alt키 조합 입력 받기  (0) 2017.09.29
Posted by 구차니

댓글을 달아 주세요

Programming/web 관련2017.10.03 18:07


Remote System Explorer


[링크 : http://mine7.tistory.com/139]

[링크 : http://arisu1000.tistory.com/27705]

[링크 : http://jos39.tistory.com/56]

[링크 : https://blog.naver.com/hnb0102/30182584695]

[링크 : http://bedbugs.tistory.com/50]


[링크 : http://www.jcraft.com/eclipse-sftp/]


신고

'Programming > web 관련' 카테고리의 다른 글

eclipse php sftp  (0) 2017.10.03
aptana studio 설치  (0) 2017.10.03
HTML fieldset / legend  (0) 2017.05.26
웹 페이지용 이미지 DB에 저장하기  (0) 2017.04.21
http digest  (0) 2017.03.03
http header  (0) 2017.03.02
Posted by 구차니

댓글을 달아 주세요

Programming/web 관련2017.10.03 16:18

JRE를 인스톨러에서 받아서 설치하고

내부적으로 nodejs 와 git를 받는데


nodejs는 링크가 깨졌는지 구버전을 설치해야 넘어간다.

nodejs 사이트에서 받아도 x86버전을 해줘도 안되는 이머병 스러운 사태가.. -_-

node-v0.10.13-x86.msi 는 아래의 티스토리에서 받으면 된다.


[링크 : http://www.aptana.com/index.html]

[링크 : http://taejusoul.tistory.com/627]

[링크 : https://github.com/aptana/studio3/issues/402]










일단.. sftp나 연결해서 해보려고 했으나..





안되네?! 검색해보니 구버전의 SFTP 프로토콜만 지원하고

요즘 sftp는 보안상의 문제로 그걸 막아놔서 못쓴다는데

[링크 : https://nikinuryadin.wordpress.com/2015/05/19/aptana-studio-3-sftp-key-exchange/]

[링크 : https://github.com/aptana/studio3/issues/367]


앱타나 자체도 2015년 이후로 업데이트 없는것 같고

다른 방법이나 eclipse 자체에서 사용할 수 있는법을 찾는게 나을 듯 하다

신고

'Programming > web 관련' 카테고리의 다른 글

eclipse php sftp  (0) 2017.10.03
aptana studio 설치  (0) 2017.10.03
HTML fieldset / legend  (0) 2017.05.26
웹 페이지용 이미지 DB에 저장하기  (0) 2017.04.21
http digest  (0) 2017.03.03
http header  (0) 2017.03.02
Posted by 구차니

댓글을 달아 주세요

LoadString()

[링크 : https://msdn.microsoft.com/ko-kr/library/windows/desktop/ms647486(v=vs.85).aspx]


String table을 dll로 생성해서 다국어 지원하기

[링크 : http://copynull.tistory.com/91]

[링크 : http://copynull.tistory.com/72]


2010/09/27 - [프로그램 사용/Visual Studio] - 비쥬얼 스튜디오 다국어 문자열 추가하기 - Visual Studio multilingual Project

신고

'Programming > C / Win32 / MFC' 카테고리의 다른 글

MFC 버튼에 이미지 넣기  (0) 2017.10.10
MFC CMenu 폰트 변경하기  (0) 2017.10.08
MFC String table  (0) 2017.09.29
MFC 다이얼로그 메뉴 추가하기  (0) 2017.09.29
MFC alt키 조합 입력 받기  (0) 2017.09.29
MFC 프로그램 아이콘 변경하기  (0) 2017.09.08
Posted by 구차니

댓글을 달아 주세요


[링크 : http://www.tipssoft.com/bulletin/tb.php/FAQ/1191]

[링크 : http://jangjy.tistory.com/42]


이벤트 핸들러

[링크 : http://lovestory0408.tistory.com/57]

[링크 : http://yyman.tistory.com/entry/MFC-윈도우-프로그래밍-기초-팝업메뉴-만들기리소스의-이해]


vs2010에서 Menu 추가시 최상위 항목은 자동으로 ID가 생성되지 않는다.

그렇기에 ID 편집을 체크해서 활성화 하고, ID 추가 후 속성에서 caption을 추가해

최상위에 대해서는 ID를 생성해 주어야 먼가 할 수 있을 듯 하다.


[링크 : https://blog.naver.com/klp0712/220697923189]


리소스 파일의 메뉴 관련 문법구조

[링크 : https://msdn.microsoft.com/en-us/library/windows/desktop/aa381025(v=vs.85).aspx]


menuitem 문법구조

[링크 : https://msdn.microsoft.com/en-us/library/windows/desktop/aa381024(v=vs.85).aspx]


popup 문법구조

[링크 : https://msdn.microsoft.com/en-us/library/windows/desktop/aa381030(v=vs.85).aspx]

신고

'Programming > C / Win32 / MFC' 카테고리의 다른 글

MFC CMenu 폰트 변경하기  (0) 2017.10.08
MFC String table  (0) 2017.09.29
MFC 다이얼로그 메뉴 추가하기  (0) 2017.09.29
MFC alt키 조합 입력 받기  (0) 2017.09.29
MFC 프로그램 아이콘 변경하기  (0) 2017.09.08
MFC DC대신 비트맵  (0) 2017.09.05
Posted by 구차니

댓글을 달아 주세요