Printer-Objekt als Parameter

22/02/2010 - 23:53 von Lothar Geyer | Report spam
Ich möchte einer Klasse, die in einer DLL liegt, den aktuellen Printer
verwenden. Eine Anweisung wie

Printer.CurrentX = eStartX * 56.7

bringt aber eine Fehlermeldung "Ungültige Verwendung einer Eigenschaft".

Was mache ich falsch bzw. wie macht man das richtig?

Lothar Geyer
 

Lesen sie die antworten

#1 Peter Götz
23/02/2010 - 09:06 | Warnen spam
Hallo Lothar,

Ich möchte einer Klasse, die in einer DLL liegt, den aktuellen Printer
verwenden. Eine Anweisung wie

Printer.CurrentX = eStartX * 56.7

bringt aber eine Fehlermeldung "Ungültige Verwendung einer Eigenschaft".

Was mache ich falsch bzw. wie macht man das richtig?



Ohne genauere Infos zu Deinem konkreten Code kann
da nur spekulieren.

Hier mal ein Beispiel, das vielleicht einen Denkanstoss
bringt:

' Klassenmodul 'Class1'
Option Explicit

Private mPrinterObj As Printer

Public Property Get PrinterObj() As Printer
Set PrinterObj = mPrinterObj
End Property

Public Property Set PrinterObj(Value As Printer)
Set mPrinterObj = Value
End Property
' Ende Class1_____________________________

' Formmodul 'Form1'
Option Explicit

Public mC1 As Class1

Private Sub Form_Load()
Set mC1 = New Class1
Set mC1.PrinterObj = Printer
End Sub

Private Sub Form_Click()

mC1.PrinterObj.CurrentX = 20
mC1.PrinterObj.CurrentY = 25

Dim Msg As String

With Printer
Msg = .DeviceName & vbCrLf
Msg = Msg & "CurrentX: " & CStr(.CurrentX)
Msg = Msg & vbCrLf
Msg = Msg & "CurrentY: " & CStr(.CurrentY)
End With
MsgBox Msg, vbInformation

End Sub
' Ende Form1_____________________________


Gruß aus St.Georgen
Peter Götz
www.gssg.de (mit VB-Tipps u. Beispielprogrammen)

Ähnliche fragen