Buenas noches.
Necesito modificar el archivo .bmp en un BTNBMP
Como se puede realizar?
Gracias
Buenas noches.
Necesito modificar el archivo .bmp en un BTNBMP
Como se puede realizar?
Gracias
#include "FiveWin.ch"
STATIC nImgSelect
FUNCTION Main()
Local oDlg, oBmp, oBot, aImg := {"..\bitmaps\cara1.jpg","..\bitmaps\cara2.jpg","..\bitmaps\cara3.jpg"}
nImgSelect := 1
DEFINE DIALOG oDlg TITLE "Cambiar Imagen" FROM 05,15 TO 40,70
@ 20,05 BTNBMP oBmp FILE aImg[nImgSelect] OF oDlg SIZE 190,225 ADJUST NOBORDER PIXEL
@ 05,60 BUTTON oBot PROMPT "Cambiar" SIZE 30,12 OF oDlg PIXEL ACTION Cambiar(oBmp,aImg)
ACTIVATE DIALOG oDlg CENTERED
RETURN nil
STATIC FUNCTION Cambiar(oBmp,aImg)
nImgSelect := nImgSelect + 1
IF nImgSelect > 3
nImgSelect := 1
ENDIF
oBmp:SetImages(aImg[nImgSelect])
RETURN nilHola Cesar!!!
Gracias por responder.
por mi version de FWH (12.6) me da inexistente SETIMAGE...
Te comento rapido. estoy modificando el msgdate para hacerlo un poco mas grande y que muestre los feriados y ahora tambien si cada dia tiene tareas para realizar.
El mes inicial lo muestra correctamente en todo sentido.
muestra los domingos con texto en rojo y fondo color rojo claro, los feriados los muestra con el color de texto cambiado y los dias que tienen tareas los muestra con botones de color Verde Claro.
Hasta aca todo bien pero cuando muevo el mes o año muestra todo bien MENOS los dias que tienen TAREAS, sigue mostrando los del mes inicial aun cuando los dias numericos han cambiado, me explico.
lo tengo definido asi:
@ nLin, nColu BTNBMP ;
PROMPT Str( Day( dWork ), 2 ) SIZE 20, 20 FONT oFont4 ; //size 12,12 NOBORDER
FILENAME if(nColu=15,"RojoClaro20.Bmp",if(Tareas->(Dbseek(dWork,.f.)),"VerdeAgua20.BMP","AmarilloClaro20.BMP"));
ADJUST ;
ACTION ( oDlg:Cargo := ::Cargo, oDlg:End( IDOK ) )
y en el MOVECALENDAR esta asi:
for n := nFirstButton TO nLastButton
oDlg:aControls[ n ]:SetText( Str( Day( dWork ), 2 ) )
oDlg:aControls[ n ]:Cargo = dWork
oDlg:aControls[ n ]:nClrText = if( n=13 .or. n=20 .or. n=27 .or. n=34 .or. n=41 .or. n=48,CLR_HRED,;
If( dWork == Date(), CLR_BROWN,;
If( dWork == dSelect, CLR_HBLUE, If( Month( dWork ) == nMonth,;
CLR_BLACK , CLR_CYAN ) ) ) )
armofecha := dWork
if Feriados->(Dbseek(armofecha,.f.))
oDlg:aControls[ n ]:nClrText = CLR_MAGENTA
oDlg:aControls[ n ]:cToolTip = Feriados->Mensaje
else
oDlg:aControls[ n ]:cToolTip = DToC(dWork)
endif
* ACA ES DONDE CREO TENER QUE REDEFINIR EL FONDO DEL BOTON y no se como hacerlo
if Tareas->(Dbseek(armofecha,.f.))
oDlg:aControls[ n ]: = "VerdeClaro20.bmp"
else
oDlg:aControls[ n ]: = "AmarilloClaro20.bmp"
endif
//oDlg:aControls[ n ]:cToolTip = DToC(dWork)
if dWork == dSelect
oDlg:aControls[ n ]:lPressed = .T.
oDlg:aControls[ n ]:cToolTip = "Selecciono"
endif
dWork++
next n
Si puedes hecharme una mano te agradezco, solo esto me falta para finalizarlo sino no hay problemas.
MUCHAS GRACIAS
LoadBitmap()oBmp:Reload( GetResources(), "Reservada" ) // etcHola Joao!!!
Gracias por interesarte.
aca se para que es cada cosa
oDlg:aControls[ n ]:nClrText = CLR_MAGENTA
oDlg:aControls[ n ]:cToolTip = Feriados->Mensaje
lo que no se es definir la sentencia para hacer referencia al nombre del BMP
el bmp no es un recurso, es un archivo
oDlg:aControls[ n ]: ???????? = " archivo.bmp"
me explico?
Gracias Joao
José: Use DTPICKER, mucho mas profesional.
Gracias.
Regards, saludos.
if Tareas->(Dbseek(armofecha,.f.))
oDlg:aControls[ n ]:SetFile("VerdeClaro20.bmp")
else
oDlg:aControls[ n ]:SetFile("AmarilloClaro20.bmp")
endifCesar.
Tu sugerencia funciona de maravillas.
MUCHAS GRACIAS !!!!