2011-05-05 6 views
0

CLinkCtrl의 글꼴 크기를 설정할 수 있습니까? 다음 코드를 시도했지만 아무것도하지 않습니다!CLinkCtrl의 글꼴 크기 설정

편집 : 나는 당신의 코드 또는 대화 자원으로 무엇이 잘못되었는지 잘 모릅니다

CFont* aboutFont=nullptr; 

BOOL AboutDlg::OnInitDialog(){ 
    SpecialDlg::OnInitDialog(); 
    if(aboutFont==nullptr){ 
     aboutFont=new CFont(); 
     aboutFont->CreateFont(
     20,      // nHeight 
     0,       // nWidth 
     0,       // nEscapement 
     0,       // nOrientation 
     FW_NORMAL,     // nWeight 
     FALSE,      // bItalic 
     FALSE,      // bUnderline 
     0,       // cStrikeOut 
     ANSI_CHARSET,    // nCharSet 
     OUT_DEFAULT_PRECIS,  // nOutPrecision 
     CLIP_DEFAULT_PRECIS,  // nClipPrecision 
     DEFAULT_QUALITY,   // nQuality 
     DEFAULT_PITCH | FF_SWISS, // nPitchAndFamily 
     L"Arial"); 
    } 
    ((CLinkCtrl*)GetDlgItem(ID_WEBSITE_LINK))->SetFont(aboutFont,true); 
    return true; 
} 
+0

코드가 확인하지 않는 것 : CreateFont의 반환 값; SetFont에서 반환 값. 또한 .rc 파일 자체에 글꼴을 설정하면 어떻게됩니까? –

+0

CreateFont가 성공적입니다. SetFont에는 반환 값이 없습니다. .rc 파일에서 글꼴을 설정하는 방법을 볼 수 있습니다. – Casebash

답변

1

: 죄송합니다, 내 시도를 포함하는 것을 잊었다. 하지만 CLinkCtrl (심지어 변수 또는 typecasting을 사용하지 않고) 글꼴을 설정하고 성공했습니다. CFont::CreatePointFont을 사용하여 글꼴을 만들었습니다.

먼저 리소스 ID를 확인하고 다른 접근 방식으로 글꼴을 만들 었는지 확인하십시오.

+0

CreatePointFont 제안 주셔서 감사합니다. 나는 이미 CLinkCtrl을 SysLinkCtrl로 대체했지만 Visual Studio에서는 MFC Link Ctrl (CLinkCtrl 아님) 만 만들 수 있습니다. 이 컨트롤은 버튼처럼 보이며 클릭 할 때 URL로 이동하지 않습니다. 정확히 무슨 일이 일어나고 있는지 모르겠지만, 매우 혼란 스럽습니다. – Casebash

+0

W7에 VS2010이 있지만 VS2005에서 WinXP로 테스트했는데 정상적으로 작동합니다. CLinkCtrl에 대한 DDX 매핑을 무시하고 가능한 경우 글꼴을 직접 변경하십시오. 왜 "버튼"만 보는지 나는 모르겠다. – Ajay