PDA

Vollständige Version anzeigen : Formular in Controler-Objekt einbinden


nightwatcher1981
27.03.2006, 14:43
Hi Leutz,

habe aus dem Buch "Das Access-VBA Codebook" den Quelltext für eine Bildvorschau (S. 579) missbraucht. Ziel war es statt Bilder Formulare zu laden.

Ich habe fast alles; jedoch kann ich die Formulare nicht hineinladen. Der Original-Code lautet:

----------------------------------------------------------------

Private Function ShowPictures()

Dim arrFiles() As tpFileAttributes
Dim lngFileCount As Long
Dim l As Integer

'Abrufen der Dateien
Call EnumFilesInFolder(Me.txtFolder, arrFiles, _
lngFileCount, "bmp;ico;jpg;gif")

'Für jedes Control im Unterformular,
For l = 0 To lngFileCount - 1

'Setzen des Dateinamens in die Picture-Eigenschaft
Me.frmsubThumbnailViewer.Form _
.Controls("pic" & l).Picture = _
Me.txtFolder & "\" & arrFiles(l).strName

Me.frmsubThumbnailViewer.Form.Repaint

Next l

End Function

----------------------------------------------------------------

Es wird demzufolge ein Bild nach dem anderem aus einem best. Ornder eingefügt.

Nun will ich aber keine Bilder, sondern ein Formular implementieren und die Datensätze sollen (ID; ID+1; ID+2,...) angezeigt werden.

Wer kann mir helfen????

Locutus
27.03.2006, 15:00
Hallo,
Der Thumbnail-Viewer aus dem Codebook zeigt Miniaturansichten von GRAFIKEN mit Hilfe der PictureBox an. Du kannst auf diesem Weg also lediglich Screenshots von Formularen anzeigen, aber nicht die Formulare selbst in die Picture-Box hinein verfrachten.
Gruß
Jörn

nightwatcher1981
27.03.2006, 21:08
Das mit der Picture-Box ist mir klar.

Me.frmsubThumbnailViewer.Form _
.Controls("pic" & l).Picture = _
Me.txtFolder & "\" & arrFiles(l).strName

Habe auch daraus

Me.SubForm.Form_
.Controls(l).Form = _ ...

gemacht.

nightwatcher1981
28.03.2006, 07:36
Habe das Problem mit dem Implementieren des Formulars gelöst, jedoch will ich bei jedem Durchlauf den nächsten Datensatz anzeigen lassen. Wie stelle ich das an????

--------------------------------------------------------------------
Private Function ShowSubForm()

Dim lngengineCount As Long
Dim l As Integer


'Abrufen der im Ordner enthaltenen Dateien
lngengineCount = [n]

'Abrufen der Dateien
'Call EnumFilesInFolder(Me.txtFolder, arrFiles, _
lngFileCount, "bmp;ico;jpg;gif")

'Für jedes Control im Unterformular,
For l = 0 To lngengineCount - 1

'Setzen des Dateinamens in die Picture-Eigenschaft
Me.f_subAuswertung.Form.Controls(l).SourceObject = "f_001"


Me.f_subAuswertung.Form.Repaint

Next l

End Function