wenn ich z.B. folgendes hab :
Code: Alles auswählen
oDlg := XbpDialog():new( AppDesktop(),, aPos, aSize, , .F.)
...
oDlg:Resize := {|aOld,aNew| DlgMainResize(aOld, aNew, oDlg, aoChild)
oDlg:create()
...
oBMP := XbpBitmap():new():create()
IF FILE("LOGO.BMP")
oBMP:LoadFile("LOGO.BMP")
ELSE
oBMP:load( , 4000 )
ENDIF
...
oLogo := XbpStatic():new(oDlg:drawingArea ,,aPos,aSize)
oLogo:type := XBPSTATIC_TYPE_BITMAP
oLogo:caption := BMP2BMP(oBMP,aSize)
oLogo:create()
...
AADD(aoChild,oStatbar) // add Childs to Array
AADD(aoChild,oPB) // add Childs to Array
AADD(aoChild,oBMP) // add Childs to Array
AADD(aoChild,oLogo) // add Childs to Array
AADD(aoChild,oAnzeig) // add Childs to Array
AADD(aoChild,oWMP) // add Childs to Array
AADD(aoChild,oStep) // add Childs to Array
AADD(aoChild,oSlow) // add Childs to Array
AADD(aoChild,oBar) // add Childs to Array
AADD(aoChild,oSpin) // add Childs to Array
...
Laufzeit das Bitmap wechseln.
Code: Alles auswählen
FUNCTION NewBitMap(oObj,aoChild, ...)
LOCAL oBMP, aSize
...
oBMP := XbpBitmap():new():create() // create Logo
IF oBMP:load( , nRes )
aoChild[CH_BMP] := oBMP
aSize := oObj:currentSize()
oObj:Setcaption( BMP2BMP(aoChild[CH_BMP],aSize) )
kommt bei :
Code: Alles auswählen
PROCEDURE DlgMainResize( aOldSize, aNewSize, oMainDlg ,aoChild)
...
aoChild[CH_LOGO]:Setcaption( BMP2BMP(aoChild[CH_BMP],aNewSize) )
Das passiert nicht wenn ich am Anfang ein Bitmap lade und es NICHT
zur Laufzeit ändere.
Wie bekomme ich Xbase++ dazu das er zur Laufzeit das "geänderte"
Bitmap beim ":resize" übernimmt ?
gruss by OHR
Jimmy