Não pense em cintura, busto, quadris ou coisas do tipo. Com a API "GetSystemMetrics" você pode ter acesso a algumas medidas mais interessantes do Windows. Veja a seguir como utilizá-la:
Declare o tipo de chamada na special-names:
special-names.
Declare o tipo de chamada na special-names:
special-names.
call-convention 66 is WAPI.
Defina as seguintes variáveis na working-storage section:
working-storage section.
77 wsBotoes pic s9(09) comp-5 value zeros.
77 wsAltura pic s9(09) comp-5 value zeros.
77 wsLargura pic s9(09) comp-5 value zeros.
78 SM-CXSCREEN value 0.
78 SM-CYSCREEN value 1.
78 SM-CMOUSEBUTTONS value 43.
Defina as seguintes variáveis na working-storage section:
working-storage section.
77 wsBotoes pic s9(09) comp-5 value zeros.
77 wsAltura pic s9(09) comp-5 value zeros.
77 wsLargura pic s9(09) comp-5 value zeros.
78 SM-CXSCREEN value 0.
78 SM-CYSCREEN value 1.
78 SM-CMOUSEBUTTONS value 43.
Para saber a resolução da tela, utilize as constantes SM-CXSCREEN e SM-CYSCREEN:
call wapi "GetSystemMetrics" using by value SM-CXSCREEN
returning wsLargura
call wapi "GetSystemMetrics" using by value SM-CYSCREEN
returning wsAltura
A constante SM-CMOUSEBUTTONS retorna quantidade de botões do mouse ou zeros se o mouse não estiver instalado:
call wapi "GetSystemMetrics" using by value SM-CMOUSEBUTTONS
returning wsBotoes
Muitas outras constantes podem ser utilizadas com a API "GetSystemMetrics".
A relação completa você encontra no site da Microsoft.
call wapi "GetSystemMetrics" using by value SM-CXSCREEN
returning wsLargura
call wapi "GetSystemMetrics" using by value SM-CYSCREEN
returning wsAltura
A constante SM-CMOUSEBUTTONS retorna quantidade de botões do mouse ou zeros se o mouse não estiver instalado:
call wapi "GetSystemMetrics" using by value SM-CMOUSEBUTTONS
returning wsBotoes
Muitas outras constantes podem ser utilizadas com a API "GetSystemMetrics".
A relação completa você encontra no site da Microsoft.
2 comentários:
Como de costume, sempre uma boa dica do Alexandre. Nesse exemplo creio que faltou mencionar na working as variáveis WsAltura e WsLargura.
Muito pertinente a sua observação, "anônimo".. rss... realmente, defini as variáveis wsLinhas e wsColunas na intenção de utilizá-las, mas no exemplo acabei deixando de forma errada outras variáveis.
As váriáveis de retorno da API "GetSystemMetrics" serão sempre definidas como PIC 9(09) COMP-5.
Obrigado pela colaboração, "anônimo"...
Postar um comentário