Como determinar a configuração de tamanho de fonte

Traduções deste artigo Traduções deste artigo
ID do artigo: 137556 - Exibir os produtos aos quais esse artigo se aplica.
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Expandir tudo | Recolher tudo

Sumário

O código neste artigo demonstra como usar os comandos de biblioteca foxtools.fll para chamar funções (API) para determinar se a sessão atual do Windows está usando fontes grandes ou pequenas de interface de programação de aplicativo do Microsoft Windows. As seguintes funções de API são usadas:
GetDC()
GetDeviceCaps()
ReleaseDC()
				

Mais Informações

O programa carrega primeiro a biblioteca foxtools.fll que é fornecida com o FoxPro para Windows. Em seguida, ele inicializa algumas variáveis e recupera o identificador para o dispositivo de vídeo. Em seguida, ele chama a função GetDeviceCaps, solicitando o número de pixels por polegada lógica ao longo da exibição largura e altura. Se o número de pixels é igual a 96, o Windows está executando com fontes pequenas. Se o número de pixels é igual a 120, o Windows está executando com fontes grandes. O programa, em seguida, libera o identificador para o dispositivo de vídeo e a biblioteca.
SET LIBRARY TO SYS(2004) + "FOXTOOLS.FLL" ADDITIVE

* create variables to pass index to GetDeviceCaps()
* this value cane be found in the WINGDI.H file

LOGPIXELSX = 88
LOGPIXELSY = 90

* get the handle to the device context

lnGetDC = RegFN("GetDC","I","I")
lnHDC = CallFN(lnGetDC,0)

* get the number of pixels per logical inch

lnGetLogPix = RegFN("GetDeviceCaps","II","I")
lnLogPixX = CallFN(lnGetLogPix,lnHDC,LOGPIXELSX)
lnLogPixY = CallFN(lnGetLogPix,lnHDC,LOGPIXELSY)

* determine if small or large fonts, either lnLogPixX or
* lnLogPixY may be used to test for the values 96 or 120

IF lnLogPixX < 96
  WAIT WINDOW "Windows is using smaller than Small Fonts"   
ELSE IF InLogPixX = 96
  WAIT WINDOW "Windows is using Small Fonts"   
ELSE IF InLogPixX < 120
  WAIT WINDOW "Windows is using between Small Fonts and Large Fonts"
ELSE IF IF lnLogPixX = 120
  WAIT WINDOW "Windows is using Large Fonts"
ELSE
  WAIT WINDOW "Windows is using larger than Large Fonts"
ENDIF

* release the handle to the device context

lnRelease = RegFN("ReleaseDC","II","I")
= CallFN(lnRelease,0,lnHDC)

* release the FOXTOOLS.FLL library

RELEASE LIBRARY SYS(2004) + "FOXTOOLS.FLL"
				

Referências

Microsoft Windows Software Development Kit, "referência do programador, volume 2: funções," páginas 350-354, 785.

Foxtools.WRI localizado no diretório C:\Fpw26\Goodies\Foxtools.

Wingdi.h localizado no diretório C:\C700\Include

Propriedades

ID do artigo: 137556 - Última revisão: sábado, 22 de fevereiro de 2014 - Revisão: 2.2
A informação contida neste artigo aplica-se a:
  • Microsoft FoxPro 2.5b
  • Microsoft FoxPro 2.5a
  • Microsoft FoxPro 2.5b
  • Microsoft FoxPro 2.6 Standard Edition
  • Microsoft FoxPro 2.6a Standard Edition
Palavras-chave: 
kbnosurvey kbarchive kbmt kbfont kbhowto KB137556 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 137556

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com