Al momento sei offline in attesa che la connessione Internet venga ristabilita

Come calcolare l'unità base di finestra di dialogo con carattere del non basati su sistema

Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell’utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell’utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.

Clicca qui per visualizzare la versione originale in inglese dell’articolo: 125681
Sommario
In questo articolo viene illustrato come calcolare l'unità di base di finestra di dialogo per la finestra di dialogo utilizzando un tipo di carattere diverso dal carattere di sistema in Windows 95. È possibile utilizzare questo calcolo per creare modelli di finestra di finestre di dialogo in memoria o calcolare le dimensioni di finestra di dialogo casella.
Informazioni
Ogni modello di finestra di dialogo casella contiene le misure che specificano la posizione, larghezza e altezza della finestra di dialogo e i controlli che contiene. Queste misure sono indipendenti dal dispositivo, un'applicazione che consente un unico modello di creare la stessa finestra di dialogo per tutti i tipi di periferiche di visualizzazione. Questo assicura che una finestra di dialogo le stesse proporzioni e l'aspetto su schermi di tutti i nonostante diverse risoluzioni e proporzioni tra le schermate.

Inoltre, le misure di casella finestra di dialogo vengono fornite in unità di base di finestra di dialogo. Un'unità di base orizzontale è uguale a un quarto della larghezza del carattere medio per il tipo di carattere del sistema. Un'unità di base verticale è uguale a un ottavo dell'altezza media del carattere per il tipo di carattere del sistema. Un'applicazione può recuperare il numero di pixel per unità di base per la visualizzazione corrente utilizzando la funzione GetDialogBaseUnits. La parola di ordine inferiore del valore restituito dalla funzione GetDialogBaseUnits, contiene le unità di base orizzontale e il word significativa del valore restituito dalla funzione GetDialogBaseUnits, contiene le unità di base verticale.

Utilizzando queste informazioni, è possibile calcolare le unità di base di finestra di dialogo per una finestra di dialogo utilizza tipo di carattere diverso dal tipo di carattere di sistema:
horz pixels == 2 * horz dialog units * (average char width  of dialog font                        / average char width of system font)vert pixels == 2 * vert dialog units * (average char height of dialog font                        / average char height of system font)				
come il tipo di carattere di una finestra di dialogo casella Cambia, la dimensione effettiva e la posizione di un controllo modificato anche.

Una unità di base casella finestra di dialogo è equivalente al numero di pixel per unità casella della finestra di dialogo nel modo seguente:
1 horz dialog base unit == (2 * average char width  dialog font /                                 average char width  system font) pixels1 vert dialog base unit == (2 * average char height dialog font /                                 average char height system font) pixels				
larghezza di carattere Media e l'altezza di un tipo di carattere può essere calcolati come segue:
hFontOld = SelectObject(hdc,hFont);GetTextMetrics(hdc,&tm);GetTextExtentPoint32(hdc,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrst"            "uvwxyz",52,&size);avgWidth = (size.cx/26+1)/2;avgHeight = (WORD)tm.tmHeight;				
il campo tmAveCharWidth della struttura TEXTMETRIC solo un'approssimazione la larghezza del carattere medio effettivo (in genere consente la larghezza della lettera "x") e pertanto deve essere calcolata la larghezza del carattere medio true affinché corrisponda al valore utilizzato dal sistema.

È possibile utilizzare la funzione MapDialogRect per convertire la finestra di dialogo casella unità di misura in pixel, ma vi è alcuna funzione che convertirà pixel in unità della casella finestra di dialogo. È possibile utilizzare le formule illustrate di seguito per eseguire questa conversione.
Riferimenti
Per ulteriori informazioni su questo argomento, vedere il seguente articolo della Microsoft Knowledge Base riportato di seguito:
145994Come calcolare l'unità della finestra di dialogo quando non si utilizza il carattere di sistema

Avviso: questo articolo è stato tradotto automaticamente

Proprietà

ID articolo: 125681 - Ultima revisione: 07/11/2005 19:29:53 - Revisione: 2.3

Microsoft Platform Software Development Kit-edizione gennaio 2000

  • kbmt kbdlg kbhowto KB125681 KbMtit
Feedback