Modules |
5.82 Determinare la risoluzione del monitor senza usare le API |
Dario Attard |
Nel database di esempio allegato a questa FAQ è mostrato come sia possibile determinare la risoluzione del monitor senza bisogno di far ricorso alle API di Windows. Qui di seguito si riporta il codice VBA della funzione che serve a realizzare quanto qui sopra scritto: '========================================================================================== 'Calcolo della risoluzione dello schermo senza uso di API e conversioni in pixel '========================================================================================== 'KE COSA E'?: Questa semplicissima funzione offre un modo diverso per calcolare la risoluzione ' dello schermo senza far ricorso a chiamate alle API o conversioni da twip a pixel ' o viceversa. ' Misura le dimensioni di una finestra test ingrandita all'apertura, identificando ' quindi una delle possibili risoluzioni in twip a cui corrispondono i valori in ' pixel. 'BUG : Non ne conosco. Ma vi prego di farmeli sapere cosicchè si possa cercare di ' correggerli. 'USO: : Chiama la funzione e tanti saluti........... 'NOTE : E' chiaro ke affinchè tutto funzioni bisogna trovare nel select una delle varie ' risoluzioni. '========================================================================================== 'AUTORE : Dario Attard (picciotto siculo) ' Milazzo (ME) ' cheyenne2001@inwind.it '=========================================================================================== 'Per favore lascia i commenti sopra e se vuoi migliorare o modificare la function sotto fallo 'pure. '=========================================================================================== Public Function testa_ris() Dim winh As String, winw As String 'sono string e non long per fare nel select un Dim ris As String 'confronto di stringhe DoCmd.OpenForm "frm_test" DoCmd.Maximize winw = Forms("frm_test").InsideWidth winh = Forms("frm_test").InsideHeight Select Case winw & "x" & winh Case "9600x7200" ris = "640x480" Case "12000x9000" ris = "800x600" Case "15360x11520" ris = "1024x768" Case "17280x12960" ris = "1152x864" Case "19200x11520" ris = "1280x768" Case "19200x14400" ris = "1280x960" Case "19200x15360" ris = "1280x1024" Case Else ris = "sconosciuta" End Select DoCmd.Close acForm, "frm_test" testa_ris = "La risoluzione dello schermo è: " & ris End Function Download: |