von F3K Total » Mi, 18.01.2012 18:15
Hallo,
DPunch hat geschrieben:Es gibt einerseits den Stream-Zugriff, wenn die Datei z.B. nur einfach dem Archiv hinzugefügt wurde, grundsätzliches dazu
Hier
mit Hilfe des Links ist es mir gelungen dem .zip Archiv der .odb einfach einen Ordner
Bilder zuzufügen, in dem ich ein eigenes Bild
image.jpg liegen habe. Dieses Bild kann ich nun mit folgendem Code in einem grafischen Kontrollfeld
img1 meines Dioaloges
Dialog1 anzeigen lassen. Es ist somit in die .odb eingebettet.
Code: Alles auswählen
sub s_show_dialog
DialogLibraries.loadLibrary( "Standard" )
oForm = DialogLibraries.Standard.Dialog1
oDlg = CreateUnoDialog( oForm )
opic = oDlg.getControl("img1")
opic.model.Graphic = f_find_image
opic.model.ScaleMode = 0'->Originalgrösse, 1->Seitenverhältnis, 2->angepasst
odlg.execute
end sub
function f_find_image
oFolder = thisdatabasedocument.getDocumentSubStorage("Bilder",1)
oimage = oFolder.getbyname("image.jpg")
oGraphicProvider = createUnoService("com.sun.star.graphic.GraphicProvider")
Dim args(1)as new com.sun.star.beans.PropertyValue
args(0).Name = "InputStream"
args(0).Value = oImage.InputStream
f_find_image = oGraphicProvider.queryGraphic(args)
oImage.InputStream.closeInput
end function
Danke an DPunch und Gruß R
Hallo,
[quote="DPunch"]Es gibt einerseits den Stream-Zugriff, wenn die Datei z.B. nur einfach dem Archiv hinzugefügt wurde, grundsätzliches dazu
Hier[/quote] mit Hilfe des Links ist es mir gelungen dem .zip Archiv der .odb einfach einen Ordner [color=#0040FF]Bilder[/color] zuzufügen, in dem ich ein eigenes Bild [color=#0040FF]image.jpg[/color] liegen habe. Dieses Bild kann ich nun mit folgendem Code in einem grafischen Kontrollfeld [color=#0040FF]img1[/color] meines Dioaloges [color=#0040FF]Dialog1[/color] anzeigen lassen. Es ist somit in die .odb eingebettet.
[code]sub s_show_dialog
DialogLibraries.loadLibrary( "Standard" )
oForm = DialogLibraries.Standard.Dialog1
oDlg = CreateUnoDialog( oForm )
opic = oDlg.getControl("img1")
opic.model.Graphic = f_find_image
opic.model.ScaleMode = 0'->Originalgrösse, 1->Seitenverhältnis, 2->angepasst
odlg.execute
end sub
function f_find_image
oFolder = thisdatabasedocument.getDocumentSubStorage("Bilder",1)
oimage = oFolder.getbyname("image.jpg")
oGraphicProvider = createUnoService("com.sun.star.graphic.GraphicProvider")
Dim args(1)as new com.sun.star.beans.PropertyValue
args(0).Name = "InputStream"
args(0).Value = oImage.InputStream
f_find_image = oGraphicProvider.queryGraphic(args)
oImage.InputStream.closeInput
end function[/code]
Danke an DPunch und Gruß R