Newsgroup: it.comp.lang.visual-basic
Titolo: proprieta' FontTransparent

Copiato pari pari da MSDN Library.
Ha l'aria di una presa per i fondelli. Qualcuno può spiegarmi gentilmente
che significa?
---------
Proprieta' FontTransparent
Restituisce o imposta un valore che determina la visualizzazione del testo o
delle immagini grafiche di sfondo nell'area intorno ai caratteri in un
oggetto Form o Printer o un controllo PictureBox.
Sintassi
oggetto.FontTransparent [= booleano]
La sintassi della proprietà FontTransparent è composta dalle seguenti parti:
Parte      Descrizione
oggetto    Espressione oggetto che definisce un oggetto dell'elenco
           "Si applica a".
booleano   Espressione booleana che specifica lo stato del testo o
           delle immagini grafiche di sfondo, come indicato nella
           sezione "Impostazioni".
Impostazioni
Le possibili impostazioni di booleano sono:
Impostazione        Descrizione
True (Predefinita)  Consente la visualizzazione del testo e delle
                    immagini grafiche di sfondo nell'area intorno
                    ai caratteri di un tipo di carattere.
False               Nasconde il testo e le immagini grafiche di
                    sfondo esistenti nell'area intorno ai caratteri
                    di un tipo di carattere.
Osservazioni
Impostare la proprietà FontTransparent infase di progettazione utilizzando
la finestra Proprietà oppure infase di esecuzione utilizzando il codice. La
modifica della proprietà FontTransparent in fase di esecuzione non avrà
nessun effetto sul testo o sulle immagini grafiche presenti in Form, Printer
o PictureBox.
-------------
A che azz serve questa proprieta'?

A che azz serve questa proprieta'?
Prendi un form e mettici dentro un array di picturebox di 2 elementi.
Copia questo codice nel form:
Private Sub Picture1_Paint(Index As Integer)
    Picture1(Index).Line (0, 0)-(Picture1(Index).ScaleWidth, Picture1(Index).ScaleHeight), vbRed, BF
    With Picture1(Index)
      .CurrentX = 50
      .CurrentY = 50
      .Font.Size = 16
    End With
    Picture1(Index).Print "Questa e' una prova"
End Sub
Premi F5
Ciao
Aldo

ed ho parlato turco.
LOL :)
Be', allora ti sei imbattuto in uno dei tanti bug distribuiti da m$. :-(
Questi sono gli articoli che ho trovato:
BUG: Setting FontTransparent Has No Effect on Windows 95/98 
ID: Q145726 
http://support.microsoft.com/support/kb/articles/Q145/7/26.asp
BUG: Setting Orientation Changes Background Mix Mode for Printer 
ID: Q183163 
http://support.microsoft.com/support/kb/articles/Q183/1/63.ASP
In pratica suggerisce di usare la funzione SetBKMode dell' api, 
fornendo l' esempio che riassumo di seguito, per chi non avesse 
voglia di andare a leggere i suddetti articoli:
// nella sezione dichiarazioni di un modulo scrivere:
Private Declare Function SetBkMode Lib "gdi32"  _
      (ByVal hdc As Long, ByVal nBkMode As Long) As Long
Private iBKMode as Long
Private Const TRANSPARENT = 1&
Private Const OPAQUE = 2&
// scrivere una funzione di test:
Public Function Test() As Long
       Printer.Print ""
       Printer.Line (0,0)-(10000, 2000), &HC0C0C0, BF
       Printer.CurrentX = 0
       Printer.CurrentY = 0
       Printer.FontTransparent = True
       'Correctly sets the background mix mode to transparent
       iBKMode = SetBKMode(Printer.Hdc, TRANSPARENT)
       Printer.Print "Printer.FontTransparent = " & Printer.FontTransparent
       Printer.FontTransparent = False
       'Correctly sets the background mix mode to opaque
       iBKMode = SetBKMode(Printer.Hdc, OPAQUE)
       Printer.Print "Printer.FontTransparent = " & Printer.FontTransparent
       Printer.EndDoc
End Function
Non l' ho provato perche' a quest' ora non posso acccendere
la stampante, fammi sapere :)
 
Ciao
Aldo

 Aldo
Ti ringrazio. Per il momemto ho accantonato il problema, ma mi sono stampato
la tua risposta. Quando lo riprendo ti faccio sapere.
Ciao
papà