Die Community zu .NET und Classic VB.
Menü

VB 5/6-Tipp 0496: Text und Bilder deaktiviert zeichnen

 von 

Beschreibung 

Dieses Beispiel zeigt, wie man Text und Bilder deaktiviert zeichnen kann, d.h. sie werden wie deaktivierte Controls (also grau) gezeichnet.

Schwierigkeitsgrad:

Schwierigkeitsgrad 2

Verwendete API-Aufrufe:

DrawStateA (DrawState)

Download:

Download des Beispielprojektes [3,82 KB]

'Dieser Quellcode stammt von http://www.activevb.de
'und kann frei verwendet werden. Für eventuelle Schäden
'wird nicht gehaftet.

'Um Fehler oder Fragen zu klären, nutzen Sie bitte unser Forum.
'Ansonsten viel Spaß und Erfolg mit diesem Source!

'------ Anfang Projektdatei prjDeaktiviertTextBild.vbp ------
'--- Anfang Formular "frmDeaktiviertTextBild" alias frmDeaktiviertTextBild.frm  ---
' Steuerelement: Kontrollkästchen-Steuerelement "chkPraefix"
' Steuerelement: Textfeld "txtText"
' Steuerelement: Bildfeld-Steuerelement "picAusgabe"
' Steuerelement: Schaltfläche "cmdLeeren"
' Steuerelement: Schaltfläche "cmdBild"
' Steuerelement: Schaltfläche "cmdText"
' Steuerelement: Anzeige-Steuerelement "imgBild"
Option Explicit

Private Declare Function DrawState Lib "user32.dll" _
                         Alias "DrawStateA" ( _
                         ByVal hDC As Long, _
                         ByVal hbr As Long, _
                         ByVal lpOutputFunc As Long, _
                         ByVal lData As Any, _
                         ByVal wData As Long, _
                         ByVal x As Long, _
                         ByVal y As Long, _
                         ByVal cx As Long, _
                         ByVal cy As Long, _
                         ByVal fuFlags As Long) As Long
                         
Private Const DST_TEXT As Long = &H1
Private Const DST_PREFIXTEXT As Long = &H2
Private Const DST_BITMAP As Long = &H4
Private Const DSS_DISABLED As Long = &H20

Private Sub cmdBild_Click()
    DrawState Me.picAusgabe.hDC, 0, 0, Me.imgBild.Picture.Handle, 0, 0, 0, 0, 0, _
        DST_BITMAP Or DSS_DISABLED
        
    Me.picAusgabe.Refresh
End Sub

Private Sub cmdLeeren_Click()
    Me.picAusgabe.Cls
End Sub

Private Sub cmdText_Click()
    DrawState Me.picAusgabe.hDC, 0, 0, Me.txtText.Text, 0, 0, 0, 0, 0, ( _
        Me.chkPraefix.Value + 1) Or DSS_DISABLED
        
    Me.picAusgabe.Refresh
End Sub
'--- Ende Formular "frmDeaktiviertTextBild" alias frmDeaktiviertTextBild.frm  ---
'------- Ende Projektdatei prjDeaktiviertTextBild.vbp -------

Tipp-Kompatibilität:

Windows/VB-VersionWin32sWin95Win98WinMEWinNT4Win2000WinXP
VB4
VB5
VB6

Hat dieser Tipp auf Ihrem Betriebsystem und mit Ihrer VB-Version funktioniert?

Ja, funktioniert!

Nein, funktioniert nicht bei mir!

VB-Version:

Windows-Version:

Ihre Meinung  

Falls Sie Fragen zu diesem Artikel haben oder Ihre Erfahrung mit anderen Nutzern austauschen möchten, dann teilen Sie uns diese bitte in einem der unten vorhandenen Themen oder über einen neuen Beitrag mit. Hierzu können sie einfach einen Beitrag in einem zum Thema passenden Forum anlegen, welcher automatisch mit dieser Seite verknüpft wird.

Archivierte Nutzerkommentare 

Klicken Sie diesen Text an, wenn Sie die 1 archivierten Kommentare ansehen möchten.
Diese stammen noch von der Zeit, als es noch keine direkte Forenunterstützung für Fragen und Kommentare zu einzelnen Artikeln gab.
Aus Gründen der Vollständigkeit können Sie sich die ausgeblendeten Kommentare zu diesem Artikel aber gerne weiterhin ansehen.

Kommentar von Jazz am 13.08.2002 um 00:18

Ich kann keine Files Downloaden, würde gerne dies haben. http://www.activevb-archiv.de/cgi-bin/VBtips/VBtipZip.pl?ID=0496