Comment faire pour déterminer le paramètre de taille de police

IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d’articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d’avoir accès, dans votre propre langue, à l’ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s’exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s’efforce aussi continuellement de faire évoluer son système de traduction automatique.

137556
Cet article a été archivé. Il est proposé « en l'état » et ne sera plus mis à jour.
Résumé
Le code dans cet article montre comment utiliser les commandes de la bibliothèque foxtools.fll pour appeler des fonctions (API) pour déterminer si la session en cours de Windows est à l'aide de petites ou grandes polices interface de programmation d'application Microsoft Windows. Les fonctions API suivantes sont utilisées :
GetDC()GetDeviceCaps()ReleaseDC()				
Plus d'informations
Le programme charge tout d'abord la bibliothèque de foxtools.fll est fourni avec FoxPro for Windows. Puis il initialise certaines variables et récupère le handle pour le périphérique d'affichage. Ensuite, il appelle la fonction GetDeviceCaps demandant le nombre de pixels par pouce logique le long de la largeur d'affichage et la hauteur. Si le nombre de pixels est égal à 96, Windows est en cours d'exécution avec des petites polices. Si le nombre de pixels est égal à 120, Windows est en cours d'exécution avec grandes polices. Le programme puis libère le handle vers le périphérique d'affichage et la bibliothèque.
SET LIBRARY TO SYS(2004) + "FOXTOOLS.FLL" ADDITIVE* create variables to pass index to GetDeviceCaps()* this value cane be found in the WINGDI.H fileLOGPIXELSX = 88LOGPIXELSY = 90* get the handle to the device contextlnGetDC = RegFN("GetDC","I","I")lnHDC = CallFN(lnGetDC,0)* get the number of pixels per logical inchlnGetLogPix = 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 120IF 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 contextlnRelease = RegFN("ReleaseDC","II","I")= CallFN(lnRelease,0,lnHDC)* release the FOXTOOLS.FLL libraryRELEASE LIBRARY SYS(2004) + "FOXTOOLS.FLL"				
Références
Kit de développement logiciel Microsoft Windows, «de référence Guide du programmeur, volume 2: fonctions, "pages 350-354, 785.

Foxtools.wri situé dans le répertoire C:\Fpw26\Goodies\Foxtools.

Wingdi.h situé dans le répertoire de C:\C700\Include
2,50 2.60 FoxWin

Avertissement : Cet article a été traduit de manière automatique

Propriétés

ID d'article : 137556 - Dernière mise à jour : 02/22/2014 01:47:52 - Révision : 2.2

  • Microsoft FoxPro 2.5b
  • Microsoft FoxPro 2.5a
  • Microsoft FoxPro 2.5b
  • Microsoft FoxPro 2.6 Édition standard
  • Microsoft FoxPro 2.6a Édition standard
  • kbnosurvey kbarchive kbmt kbfont kbhowto KB137556 KbMtfr
Commentaires