Arquivo manifest
Enviado: 19 Abr 2024 20:25
De vez em quando alguém ainda pergunta pra que serve o arquivo manifest.
Dentre de outras coisas..... pro windows liberar visual, caso não seja feito via aplicativo
A mudança mais chamativa é a barra de progresso.
Mas tem o button com ícone+label ao mesmo tempo, cor do button com foco, diferenças de contorno, etc.
Por padrão a Microsoft bloqueia o uso do visual mais novo, que já não é tão novo.
Isso só se aplica aos controles padrão do Windows, não se aplica a controles "feitos a mão".
Se a sua barra de progresso aparece igual à primeira imagem, isso é por faltar manifest.
Nota:
tinha até esquecido, quando converti pra 3.2, retirei o redimensionamento do ícone conforme posição
É no estilo tradicional DOS: pega altura/largura, reduz o tamanho da margem e o tamanho do texto, mas só mexi com altura, sem considerar alinhamento
Esse é no padrão do Windows.
No uso manual usa DrawIcon() ou DrawIconEx() pra fazer o desenho, usei isso na hwgui.
Até hoje não testei se o DrawIconEx() realmente aceita ícone PNG, dependia de função especial pra carregar PNG, não serve esse LOADIMAGE() do windows.
Dentre de outras coisas..... pro windows liberar visual, caso não seja feito via aplicativo
A mudança mais chamativa é a barra de progresso.
Mas tem o button com ícone+label ao mesmo tempo, cor do button com foco, diferenças de contorno, etc.
Por padrão a Microsoft bloqueia o uso do visual mais novo, que já não é tão novo.
Isso só se aplica aos controles padrão do Windows, não se aplica a controles "feitos a mão".
Se a sua barra de progresso aparece igual à primeira imagem, isso é por faltar manifest.
Nota:
tinha até esquecido, quando converti pra 3.2, retirei o redimensionamento do ícone conforme posição
É no estilo tradicional DOS: pega altura/largura, reduz o tamanho da margem e o tamanho do texto, mas só mexi com altura, sem considerar alinhamento
Código: Selecionar todos
aSize := ::CurrentSize()
nWidth := aSize[ 1 ] - 8
nHeight := aSize[ 2 ] - wvt_GetFontInfo()[ 6 ] - 8
SWITCH xCaption[ 2 ]
CASE WVG_IMAGE_ICONFILE
wvg_SendMessage( ::hWnd, BM_SETIMAGE, IMAGE_ICON, wvg_LoadImage( xCaption[ 3 ], nLoadFromDiskFile, IMAGE_ICON, nWidth, nHeight ) )
EXIT
...
No uso manual usa DrawIcon() ou DrawIconEx() pra fazer o desenho, usei isso na hwgui.
Até hoje não testei se o DrawIconEx() realmente aceita ícone PNG, dependia de função especial pra carregar PNG, não serve esse LOADIMAGE() do windows.