Dialog Bildeigenschaften ändern

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

DITA
***
Beiträge: 85
Registriert: Fr, 16.11.2012 16:23

Dialog Bildeigenschaften ändern

Beitrag von DITA »

Hallo Leute,

hoffe euch gehts gesundheitlich noch allen gut.
Brauche nochmals einen Schubs, xray, mri und diverse Websites bringen mich nach tagelanger Recherche nicht wirklich weiter.

Versuche ein Bild auf/in ein Dialog einzubauen. Größe und Position ist nicht das Problem, aber wie kriege ich den 3D Rahmen weg,
Da meine Dialogseite 1 weiss ist, das Dialogfeld aber auf anderen Seiten auch dargestellt werden soll (step 0) muss ich wahrscheinlich auch den Hintergrund des Imagefeldes umtüddeln.

Da ich xray nur mit Fehlern starten kann, liegt vielleicht da der Grund das mir xray nicht helfen kann, versuchte durch mauellen Tausch andere Werte irgendwo zu finden, leider ohne nennenswerten Erfolg.
Bislang habe ich mir den Dialog grob "vorgebaut", und die Position und Größen der einzelnen Buttons, Textfeldern, Labels und Co. per basic-Code positioniert, cool wäre wenn ich eben dieses Bild auch per Code erstellen könnte.

Kann mir jemand bitte einen Tipp geben - danke schon mal.

Gruss Dirk

Toxitom
********
Beiträge: 3676
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Re: Dialog Bildeigenschaften ändern

Beitrag von Toxitom »

Hey Dirk,
.. aber wie kriege ich den 3D Rahmen weg...

Code: Alles auswählen

oDialog.getControl("DeinNameFuerImageControl").model.border = 0
Aber wenn Du den Dialog doch eh vorbastelst - einfach doort beim "Rahmen" keinen einstellen.

Oder ist Deine Frage anders zu verstehen?

VG
Tom
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic

DITA
***
Beiträge: 85
Registriert: Fr, 16.11.2012 16:23

Re: Dialog Bildeigenschaften ändern

Beitrag von DITA »

Hallo Tom,

erstmal danke das Du Dich meinem Problem annimmst.

Im Prinzip habe ich das so wie Du - ok, zwei Zeilen, aber leider führt das nicht zum gewünschten Erfolg.

o_Bild = MyDlg.getControl ("ImageControl1")
o_Bild.model.Border = 0

wenn ich es manuell umstelle und mit mri und xray teste verändert sich der Wert auch nicht, jedenfalls bei mir (wie erwähnt gibt xray beim Start diverse Fehler aus)

die Frage hattest Du schon richtig verstanden, versteckt war noch eine (wie mache ich das ohne einen Dialog vor zu basteln), das will ich zumindest mal hin.

Nochmals danke für die Hilfe, hast Du noch einen Vorschlag????

Gruss Dirk

Toxitom
********
Beiträge: 3676
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Re: Dialog Bildeigenschaften ändern

Beitrag von Toxitom »

Hey Dirk,

grad mal getestet ... hast recht, geht nicht.

Wenn man es im Dialogeditor umstellt, zeigt xray die korrekten Werte an - siehe auch API Dokumentation:
border.jpg
border.jpg (41.33 KiB) 3938 mal betrachtet
Dann ist das wohl ein Bug... gibt so einige in Verbindung mit Grafiken/Dialogen etc.

Andere Ideen?? - ne, sorry, hab ich leider nicht.

VG
Tom
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic

F3K Total
********
Beiträge: 3466
Registriert: Mo, 28.02.2011 17:49

Re: Dialog Bildeigenschaften ändern

Beitrag von F3K Total »

Moin,
gerade mit AOO 4.1.7 W10 getestet:
DLG.png
DLG.png (108.58 KiB) 3926 mal betrachtet
Kein Problem. Mit LO 6.3.5 und LO 6.4.2 bekomme ich überhaupt kein Bild dargestellt :shock:

DITA
***
Beiträge: 85
Registriert: Fr, 16.11.2012 16:23

Re: Dialog Bildeigenschaften ändern

Beitrag von DITA »

Hallo Tom,

Danke nochmal, dann muss ich wohl doch bei dem Dialog "vorbasteln" bleiben und es von Hand einstellen.

Gruss Dirk

und bleib gesund!!!!

DITA
***
Beiträge: 85
Registriert: Fr, 16.11.2012 16:23

Re: Dialog Bildeigenschaften ändern

Beitrag von DITA »

Hallo R, F3K Total,

auch Dir erst mal danke

vermute mal das Du es getestet hast, oder hast Du es manuell eingestellt - dann klappt es bei mir auch. Wie bist Du dabei vorgegangen???

Möchte es eigentlich mal erreichen das ich via Basic ein Image samt Bild auf / in ein Dialog einbinde.

benutze
AOO417m1(Build:9800) - Rev. 46059c9192
Win 10

Gruss Dirk

F3K Total
********
Beiträge: 3466
Registriert: Mo, 28.02.2011 17:49

Re: Dialog Bildeigenschaften ändern

Beitrag von F3K Total »

Moin Dita,
ich kann sagen dass es möglich ist, weil ich es schon gemacht habe, allerdings habe ich gerade keine Zeit in den Tiefen meiner Dokumente nach den Makros zu suchen. Aber vielleicht in den kommenden Tagen mal.

Gruß R

F3K Total
********
Beiträge: 3466
Registriert: Mo, 28.02.2011 17:49

Re: Dialog Bildeigenschaften ändern

Beitrag von F3K Total »

Hallo DITA,
hier ist nun ein Dialog mit Bild, nur per Makro:

Code: Alles auswählen

Global odlg as object

Sub S_Create_Dialog_with_Imagecontrol_and_picture
       
    Dim oWindow As Object
    Dim oMod As Object
    
    REM ***** Initialisierung der Eigenschaften des Dialogs
    odlgModel = CreateUnoService("com.sun.star.awt.UnoControlDialogModel")
    
    With odlgModel
       .setPropertyValue("PositionX", 320)
       .setPropertyValue("PositionY", 111 )
       .setPropertyValue("FontName", "Arial")
       .setPropertyValue("Width", 200)
       .setPropertyValue("Height", 280)
       .setPropertyValue("Title", "Ein Bild")
       .setPropertyValue("Name", "DLG_Picture")
       '.setPropertyValue("DesktopAsParent", True )
    End With
           
    odlg = CreateUnoService("com.sun.star.awt.UnoControlDialog")
           
    REM ********** Imagecontroll erzeugen
    oMod = odlgModel.createInstance("com.sun.star.awt.UnoControlImageControlModel")
    'xray oMOD 'hier bekommst du die Eigenschaften des ImageControls
    With oMod
       .setPropertyValue("Name", "img1")
       .setPropertyValue("PositionX", 2)
       .setPropertyValue("PositionY", 11)
       .setPropertyValue("Height",266)
       .setPropertyValue("Width",196)
       .setPropertyValue("ScaleMode",1)
       .setPropertyValue("ImageURL",converttoUrl("C:\Users\<USER>\Pictures\Blender\Hammer.png"))'<- hier den Pfad zum Bild eintragen
       .setPropertyValue("Border",0)'0 = kein Rand
       .setPropertyValue("BackgroundColor",32768)'-1 = empty/ungesetzt, 16711935 = fieses Pink, 32768 Grün
    End With
    odlgModel.insertByName("img1", oMod)
    
    odlg.setModel(odlgModel)
         
         
    REM ********** Mittels des Modells den Dialog anzeigen
    oWindow = CreateUnoService("com.sun.star.awt.Toolkit")
    odlg.createPeer(oWindow, null)
    Dim oWindowsListener as Object
    oTopWindowsListener = CreateUnoListener( "Top_Win_", "com.sun.star.awt.XTopWindowListener" )
    odlg.addTopWindowListener(oTopWindowsListener)
    odlg.setVisible(True)

End Sub

'Diese Routinen werden von dem XTopWindowListener benötigt
Sub Top_Win_windowClosing( oEvent ) 'Dialog schließen
  odlg.setVisible(False)
  odlg.dispose
End Sub

Sub Top_Win_disposing( )
End Sub
Sub Top_Win_windowOpened   ( oEvent )
End sub
Sub Top_Win_windowClosed   ( oEvent )
End sub 
Sub Top_Win_windowMinimized   ( oEvent )
End sub
Sub Top_Win_windowNormalized   ( oEvent )
End sub
Sub Top_Win_windowActivated   ( oEvent )
    Top_Win_windowDeactivated = false
End sub
function Top_Win_windowDeactivated ( oEvent ) as boolean
    Top_Win_windowDeactivated = true
End function
Sieht so aus:
dlg_dita.png
dlg_dita.png (183.67 KiB) 3690 mal betrachtet
Gruß R

DITA
***
Beiträge: 85
Registriert: Fr, 16.11.2012 16:23

Re: Dialog Bildeigenschaften ändern

Beitrag von DITA »

Hallo R, F3K Total,

ja, sag mal ist denn schon Weihnachten und Ostern zusammen ? Geburtstag hab ich doch erst nächste Woche ;-)

da sind ja "alle" Wünsche wo ich mal landen möchte gleich eingebaut, soweit ich das in so kurzer Zeit ersehen kann.

Vielen Dank dafür.

Beim kurz testen ( .setPropertyValue("Border",0)) in 1 bzw. 2 kam jetzt nur der normale Rahmen
(bitte jetzt nicht falsch verstehen, es ist genau wie ich es haben möchte, wollte damit nur sagen, das da irgendwie wohl auch nen Haken ist).

Jetzt muss ich Deinen Code erst einmal richtig unter die Lupe nehmen und verstehen, vielen Dank nochmal dafür.
(Vermute mal, Du hast es für mich programmiert, da darin ja all meine Wünsche enthalten sind, oder hattest Du das wirklich in petto????)

Wenn ich noch Fragen hab , melde ich mich nochmal.

Danke bis demnächst

Gruss Dirk

F3K Total
********
Beiträge: 3466
Registriert: Mo, 28.02.2011 17:49

Re: Dialog Bildeigenschaften ändern

Beitrag von F3K Total »

Moin,
DITA hat geschrieben:
Mi, 01.04.2020 20:16
Vermute mal, Du hast es für mich programmiert, da darin ja all meine Wünsche enthalten sind, oder hattest Du das wirklich in petto????
Ich habe so eine Fundus an Makros, aus dem ich das relativ schnell zusammenbauen könnte ... also nicht neu erforscht, nur gepuzzelt.
Gruß R

Antworten