"Bilder" & XbpDialog

Grafische Primitive, XbaseParts und Darstellungsfragen allgemein.

Moderator: Moderatoren

Antworten
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12913
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 46 Mal

"Bilder" & XbpDialog

Beitrag von AUGE_OHR »

hi,

Es gibt ja 2 Möglichkeiten um ein "Bild" in einem XbpDialog (drawingArea)
anzuzeigen :

Code: Alles auswählen

      oBMP := XbpBitmap():new():create()         // create Bitmap Object
      IF oBMP:load( , nRes )
         aoChild[CH_BMP] := oBMP                    // "store" into my Array
...
1.) oStatic             := XbpStatic():new(oDlg:drawingArea ....)
     oStatic:type      := XBPSTATIC_TYPE_BITMAP
     oStatic:autoSize := .F.               // extra NICHT autosize (unschön)
     oStatic:caption  := Bmp2BMP( aoChild[CH_BMP] ,aSize)
...
2.) oDlg := XbpDialog():new( ... )
     oDlg:drawingArea:bitmap := Bmp2BMP( aoChild[CH_BMP] ,aSize)
wobei Bmp2Bmp() lediglich das aoChild[CH_BMP] Object auf eine
definierte Grösse bringt (aSize := drawinghArea:currentSize() )

beides funktioniert solange man nicht ":resize" benutzt ...

bei "oDlg:resize" gibt es ja "nur" 2 Parameter die generiert werden :
( OldSize, NewSize ) ergo werden weitere Parameter so "übernommen"
wie zum Zeitpunkt von create() ... (Ja/Nein) ?!

Code: Alles auswählen

oDlg:Resize := {|aOld,aNew| DlgMainResize(aOld, aNew, oDlg, aoChild} 
während sich "oDlg" zur Laufzeit wohl nicht verändert wird, ist das sehr
wohl in meinem Array mit "aoChild[CH_BMP]" möglich (Skin wechsel).

beides bekomme ich zwar "einzeln" in Griff, aber nicht "beides" zusammen
so das ich mich nun für die "richtige" Methode entscheiden muss ...

welche "Version" verwendet Ihr und was spricht (noch) dafür/dagegen

gruss by OHR
Jimmy
Benutzeravatar
Rolf Ramacher
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1931
Registriert: Do, 09. Nov 2006 10:33
Wohnort: Bergheim
Danksagung erhalten: 3 Mal
Kontaktdaten:

Beitrag von Rolf Ramacher »

Hi Jimny

schau mal bitte nach bei programmierung allgemein. Thema
xbpBitmap Dialog - Load().

hier habe ich dokumentiert wie ich dieses bei mir gelöst habe.
Funktíoniert einwandfrei.
Gruß Rolf

Mitglied der Gruppe XUG-Cologne
www.xug-cologne.de
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12913
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 46 Mal

Beitrag von AUGE_OHR »

hi,

Es funktionieren ja beide Versionen nur beim ":resize" und weiteren
Varianten verhalten die beiden Versionen sich unterschiedlich.

Ich hab mich jetzt doch für die "classische" Version mit einem XbpStatic
auf der oDlg:drawingArea entschieden da ich dort die "Hintergrund Farbe"
besser "ändern" kann ( o:setColorBG(XBPSYSCLR_TRANSPARENT) ) als
wenn ich die "Presentation Parameter" der drawingArea verändere zur
Laufzeit.

gruss by OHR
Jimmy
Antworten