Ir ao conteúdo
  • Cadastre-se

c++: win32 - como selecionar 1 HFONT no HDC?


Cambalinho

Posts recomendados

tenho 1 função que retorna CHOOSEFONT:

CHOOSEFONT ShowSelectFont(HWND hwnd=GetForegroundWindow()){    CHOOSEFONT cf = {sizeof(CHOOSEFONT)};    LOGFONT lf;    cf.Flags = CF_EFFECTS | CF_INITTOLOGFONTSTRUCT | CF_SCREENFONTS;    cf.hwndOwner = hwnd;    cf.lpLogFont = &lf;    cf.rgbColors = RGB(0,0,0);    cf.lpLogFont->lfStrikeOut=FALSE;    cf.lpLogFont->lfUnderline=FALSE;    cf.lpLogFont->lfHeight=-MulDiv(12, GetDeviceCaps(GetDC(hwnd), LOGPIXELSY), 72);//change font size    _tcscpy(cf.lpLogFont->lfFaceName, "Arial" ); //we must include tchar.h    if(ChooseFont(&cf))    {        HFONT hf = CreateFontIndirect(&lf);        if(hf)        {            return cf;        }        else        {            MessageBox(hwnd, "Font creation failed!", "Error", MB_OK | MB_ICONEXCLAMATION);            //return  (CHOOSEFONT)(HFONT)GetStockObject(DEFAULT_GUI_FONT);        }    }}

mas por alguma razao parece que estou a perder os dados devido ao cf.lpLogFont ser 1 ponteiro. como posso resolver esta funçao?

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...