Page 1 of 2

TOutLook2003 con Folderex y Arrays no me funcionan bien HELP

Posted: Sat Jan 09, 2016 7:14 pm
by AIDA
AL CAMBIAR DE REGISTRO EN UN XBROSE SE ENCIMAN LOS DATOS

Lo raro es que si quito el BRUSH de fondo si refresca bien
algo pasa cuando tengo una imagen de fondo

Image

Image

Image

Code: Select all

ON CLICK (oApp:GETNOM:=ALLTRIM(AUTOS->NOMBRE) +" "+ ALLTRIM(AUTOS->APELLIDO_P) +" "+ ALLTRIM(AUTOS->APELLIDO_M),oApp:OGETN:Refresh()

@ 28.450,40.90 FOLDEREX oFldd PROMPTS "&Datos del cliente", "&Poliza","&Primas pagadas","&Graficas primas pagadas " OF   oApp:oWnd SIZE 752, 272 ANIMATE SPEED 50 ;
                     BITMAPS "ima\16x16\cliente.bmp","ima\16x16\poliza.bmp" ,"ima\16x16\dinero.bmp"  ,"ima\16x16\barras.bmp"

DEFINE BRUSH oBrush1 FILE "fondos\tapiz5.bmp"

oApp:osay := array(6)

@ 2,1  SAY oApp:osay[1] PROMPT "NOMBRE :"              OF oFldd:aDialogs[ 1 ]  TRANSPARENT   //  COLOR CLR_WHITE, nRGB(0,0,0)  //FONT oTextFont//Transparent //COLOR nRgb(253,253,253 ),nRgb( 132, 112, 255)

@ 2,12 say oApp:OGETN var oApp:GETNOM                  OF oFldd:aDialogs[ 1 ] UPDATE size 350,18 BORDER COLOR nRgb(0,0,0  ),nRgb( 253,253,253) //SHADOW //FONT oFont

@ 2,73 SAY oApp:osay[2] PROMPT "TELEFONOS :"           OF oFldd:aDialogs[ 1 ]  TRANSPARENT  //COLOR CLR_WHITE, nRGB(0,0,0)
@ 2,87 say oApp:oGETT  var oApp:gett                   OF oFldd:aDialogs[ 1 ] size 100,18 BORDER COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255) //SHADOW
@ 2,107 say oApp:oGETT2 var oApp:GETT2                 OF oFldd:aDialogs[ 1 ] size 100,18 BORDER COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255) //SHADOW

@ 5,01 SAY oApp:osay[3] PROMPT "DIRECCION :"           OF oFldd:aDialogs[ 1 ]  TRANSPARENT //COLOR CLR_WHITE, nRGB(0,0,0)
@ 5,12 say oApp:oGETDIREC var oApp:GETDIREC            OF oFldd:aDialogs[ 1 ] size 442,18 BORDER COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255)


@ 5,89 SAY oApp:osay[4] PROMPT "CIUDAD :"              OF oFldd:aDialogs[ 1 ]  TRANSPARENT //COLOR CLR_WHITE, nRGB(0,0,0)
@ 5,98 say oApp:oGETCIU var oApp:gETCIU                OF oFldd:aDialogs[ 1 ] size 156,18 BORDER COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255)

@ 8,01 SAY oApp:osay[5] PROMPT "CORREO ELECTRONICO :"  OF oFldd:aDialogs[ 1 ]  TRANSPARENT //COLOR CLR_WHITE, nRGB(0,0,0)
@ 8,25 say oApp:aEmail var oApp:cEmail                 OF oFldd:aDialogs[ 1 ] size 256,18 BORDER COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255)

@ 10,01 SAY oApp:osay[6] PROMPT "PAGINA INTERNET :"    OF oFldd:aDialogs[ 1 ]  TRANSPARENT //COLOR CLR_WHITE, nRGB(0,0,0)
@ 10,25 say oApp:aPagina var oApp:cPagina              OF oFldd:aDialogs[ 1 ] size 256,18 BORDER COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255)

oFldd:aDialogs[ 1 ]:SetBrush( oBrush1 )
 AEVAL( oApp:osay, {|o| o:setbrush( oBrush1 )} )
 
Espero me puedan ayuda

Saluditos :wink:

Re: En FOLDEREX no me refresca los datos HELP

Posted: Mon Jan 11, 2016 8:19 am
by Antonio Linares

Re: En FOLDEREX no me refresca los datos HELP

Posted: Mon Jan 18, 2016 2:33 am
by AIDA
GRACIAS ! :mrgreen:


Saluditos :wink:

Re: En FOLDEREX no me refresca los datos HELP

Posted: Tue Jan 19, 2016 8:54 am
by Antonio Linares
Aida,

Aqui tienes un ejemplo.

Haz click en Mail y luego en Calendar y veras como se muestra un folder distinto

Code: Select all

#include "FiveWin.ch"
#include "OutLook.ch"

//----------------------------------------------------------------------------//

function Main()

   local oWnd, oOutLook2003, oStatusBar

   DEFINE WINDOW oWnd TITLE "FWH new Class TOutLook2003"

   DEFINE OUTLOOK2003 oOutLook2003 OF oWnd ;
      PROMPTS "Mail", "Calendar", "Contacts", "" ;
      BITMAPS "..\bitmaps\mail.bmp", "..\bitmaps\calendar.bmp", "..\bitmaps\notes.bmp" ;
      ON CHANGE ShowFolder( oOutLook2003 )
      
   oWnd:oLeft = oOutLook2003
   
   DEFINE STATUSBAR oStatusBar PROMPT "  FWH Class TOutLook2003" OF oWnd
   
   ACTIVATE WINDOW oWnd 

return nil

//----------------------------------------------------------------------------//

function ShowFolder( oOutlook )

   static aFolders
   
   if aFolders == nil
      aFolders = Array( 2 )
      @ 0, oOutLook:nWidth + 2 FOLDER aFolders[ 1 ] PROMPTS "One", "Two", "Three" PIXEL ;
         OF oOutLook:oWnd SIZE oOutLook:oWnd:nWidth - oOutLook:nWidth, oOutLook:oWnd:nHeight
      
      @ 0, oOutLook:nWidth + 2 FOLDER aFolders[ 2 ] PROMPTS "Four", "Five", "Six" PIXEL ;
         OF oOutlook:oWnd SIZE oOutLook:oWnd:nWidth - oOutLook:nWidth, oOutLook:oWnd:nHeight
   endif
   
   do case
      case oOutlook:nOption == 1
           aFolders[ 2 ]:Hide()
           aFolders[ 1 ]:Show()
           
      case oOutlook:nOption == 2
           aFolders[ 1 ]:Hide()
           aFolders[ 2 ]:Show()
   endcase
   
return nil  

Re: En FOLDEREX no me refresca los datos HELP

Posted: Wed Jan 20, 2016 1:38 am
by AIDA
Muchas gracias ! :mrgreen:

Sigues siendo mi :D

http://www.mightygeek.com/wp-content/up ... Series.jpg
Image

Saluditos :wink:

Re: En FOLDEREX no me refresca los datos HELP

Posted: Wed Jan 20, 2016 6:09 am
by AIDA
Hola

Estuve probando con tu ejemplo pero no me queda

no sale error pero solo sale el folderex vacio no sale el xbrowse y el otro folderex con datos
soy muy burra con los Array :(


así lo tengo, que me falta :?:

Saluditos :wink:

Code: Select all

function ShowFolder( oOutlook )

   static aFolders,fl2,cfile,aselgrad,arowgrad,nrecsel,cimage
   local oBrush,oBrush1
   
   
   
   if aFolders == nil
      aFolders = Array( 4 )
    
     
     @ 0, oOutlook:nWidth + 2 FOLDER aFolders[ 1 ] PROMPTS "" PIXEL ;
         of oOutlook:oWnd SIZE oOutlook:oWnd:nWidth - oOutlook:nWidth, oOutlook:oWnd:nHeight
     
         
     @ 75,oOutlook:nWidth + 0 FOLDEREX aFolders[ 2 ]  PROMPT ".                       ." PIXEL of oApp:oWnd SIZE 755, 697 ANIMATE SPEED 50;
     BITMAPS "ima\16x16\car.bmp" 
    
    
     @ 76,00 XBROWSE oApp:oBrwX01 OF aFolders[ 1 ] ALIAS "AUTOS"  ;
            HEADERS "Folio", "Nombre", "Poliza", "Inciso", "Compañia", "Folio Empresa","Estatus";
            FIELDS   AUTOS->folio,;
            ALLTRIM(AUTOS->APELLIDO_P) +" "+ ALLTRIM(AUTOS->APELLIDO_M) +" "+  ALLTRIM(AUTOS->NOMBRE) ,;
                            ALLTRIM(AUTOS->POLIZA)  ,;
                              AUTOS->INCISO  ,;
                            AUTOS->comp,;
                                                    AUTOS->folio_e,;
                                                    AUTOS->CANCELADA;
                                                   COLSIZES 50,210 , 160 , 50 , 150,100  SIZE 749,319;
                                                    JUSTIFY AL_LEFT,AL_CENTER,AL_CENTER,AL_RIGHT,AL_CENTER;
                                                PICTURES "@!","@!","@!","@!","@!","@!";
  ON CLICK (oApp:GETNOM:=ALLTRIM(AUTOS->NOMBRE) +" "+ ALLTRIM(AUTOS->APELLIDO_P) +" "+ ALLTRIM(AUTOS->APELLIDO_M),oApp:OGETN:Refresh(),;
  oApp:GETT:=AUTOS->TEL1,oApp:oGETT:Refresh(),oApp:gett2:=AUTOS->TEL2,oApp:oGETT2:Refresh(),oApp:GETDIREC:=ALLTRIM(AUTOS->DIRECCION) +" Col. " + ALLTRIM(AUTOS->COLONIA) +" Cp. " +;
  ALLTRIM(AUTOS->cod_postal), oApp:oGETDIREC:Refresh(),oApp:cEmail:=AUTOS->email,oApp:aEmail:Refresh(),oApp:cPagina:=AUTOS->pagina,oApp:aPagina:Refresh(),oApp:gETCIU:=AUTOS->poblacion,;
  oApp:oGETCIU:Refresh(),oApp:MeMiTo:=AUTOS->comentario,oApp:mCOmmENtS:Refresh(),oApp:gETPOL:=AUTOS->Poliza,;
  oApp:oGETPOL:Refresh(),oApp:gETINC:=AUTOS->inciso,oApp:oGETINC:Refresh(),oApp:RAMO:="AUTOS",oApp:oRAMOS:Refresh(),oApp:rFICHA:=AUTOS->ficha,oApp:oFICHA:Refresh(),oApp:cTpago:=AUTOS->cobertura,oApp:oTpago:Refresh(),;
  oApp:cFichero:=AUTOS->PDF,IIF(AUTOS->CANCELADA="S", playfile("data\cancelada.mp3"),playfile(cfile) ),oApp:pEsTA:=alltrim(AUTOS->POLIZA),saltopaago(oApp:pEsTA,oApp:novoz),oApp:oBrwX01:Refresh())
  oApp:oBrwX01:cTooltip :={ "POLIZAS DE AUTOS (C)Copyright 2010 - Por Aida Sistemas S.A.", "POLIZARIUM",1,CLR_WHITE,CLR_HBLUE }

     
     oApp:oBrwX01:nMarqueeStyle := MARQSTYLE_HIGHLWIN7
    
   oApp:oBrwX01:nFreeze := 2
     oApp:oBrwX01:l2007 := (.t.)

 
 oApp:oBrwX01:bClrStd:= { || If( ( (oApp:oBrwX01:cAlias)->(OrdKeyNo()) % 2 ) == 0, { CLR_BLACK, RGB( 224, 236, 255 ) }, { CLR_BLACK, RGB( 189, 211, 253 ) } ) }

      
      oApp:oBrwX01:bRClicked := { | nRow, nCol | ShowPopup( nRow, nCol, oApp:oBrwX01 ) }

      oApp:oBrwX01:lFastEdit     := .f.

        oApp:oBrwX01:aCols[ 1 ]:nDataStrAlign:= AL_LEFT
        oApp:oBrwX01:aCols[ 2 ]:nDataStrAlign:= AL_LEFT
        oApp:oBrwX01:aCols[ 3 ]:nDataStrAlign:= AL_LEFT
        oApp:oBrwX01:aCols[ 5 ]:nDataStrAlign:= AL_LEFT

      XbrStyles( oApp:oBrwX01 )


     oApp:oBrwX01:bClrHeader := {|| { nRGB(140, 0, 0), nRGB( 231, 242, 255 ), } }

     oApp:oBrwX01:lFooter  := .T.


     oApp:oBrwX01:aCols[ 2 ]:bFooter       := { || "Registro->"+""+ tran(autos->(OrdKeyNo()),'@E 999,999')+" / "+tran(autos->(OrdKeyCount()),'@E 999,999')  }


     oApp:oBrwX01:aCols[ 3 ]:bFooter       :={ ||"Total de primas pagadas--->" }


    * oApp:oBrwX01:aCols[ 5 ]:bFooter       := { || TRANSFORM(oApp:AUTOSVALOR,"$9,999,999,999.99")  }

      oApp:oBrwX01:aCols[1]:bLClickHeader := {|r,c,f,o| (MiAccion1(),oApp:oBrwX01:refresh())}
      oApp:oBrwX01:aCols[2]:bLClickHeader := {|r,c,f,o| (MiAccion2(),oApp:oBrwX01:refresh())}
      oApp:oBrwX01:aCols[3]:bLClickHeader := {|r,c,f,o| (MiAccion3(),oApp:oBrwX01:refresh())}
      oApp:oBrwX01:aCols[5]:bLClickHeader := {|r,c,f,o| (MiAccion5(),oApp:oBrwX01:refresh())}

     oApp:oBrwX01:nStretchCol = STRETCHCOL_LAST

     oApp:oBrwX01:SetRDD()

            WITH OBJECT oApp:oBrwX01:Estatus
        : AddBitmap( 'ima\16x16\set.bmp' ) // non-alpha bitmap
        : AddBitmap( 'ima\16x16\close.bmp' ) // non-alpha bitmap
              : bBmpData   := { || if(autos->cancelada == "S" , 2, 1) }


         END

             WITH OBJECT oApp:oBrwX01:poliza
             : AddBitmap( 'ima\16x16\key_f.bmp' )
             : AddBitmap( 'ima\16x16\key_inc.bmp' )
             : AddBitmap( 'ima\16x16\key_i.bmp' ) // non-alpha bitmap

             : bBmpData   := { || if(autos->flotilla == "SI" , 1, if(autos->flotilla == "NO" ,2, 3)) }

          END

   
     WITH OBJECT  oApp:oBrwX01
        :nStretchCol   := 1
    :nMarqueeStyle := MARQSTYLE_HIGHLROW
 
      :bClrSelFocus  := { || { CLR_HBLUE, aselgrad } }
      :bClrRowFocus  := { || { CLR_BLUE, arowgrad } }

            :bClrGrad := { | lInvert | If( lInvert, ;
      { { 1/3, nRGB( 255, 253, 222 ), nRGB( 255, 231, 151 ) }, ;
        { 2/3, nRGB( 255, 215,  84 ), nRGB( 255, 233, 162 ) }  ;
      }, ;
      { { 1/3, nRGB( 219, 230, 244 ), nRGB( 207, 221, 239 ) }, ;
        { 2/3, nRGB( 201, 217, 237 ), nRGB( 231, 242, 255 ) }  ;
      } ) }
   END

oApp:oBrwX01:Setcolor( RGB( 30,144,255 ), RGB( 16, 78, 139 ) )


AEval( oApp:oBrwX01:aCols, { |oCol| ;
      oCol:bPaintText := { |oCol, hDC, cData, aRect | ;
                           PaintCol2( oCol, hDC, cData, aRect, nrecsel ) } ;
      } )


  
    oApp:oBrwX01:SetBackGround(  cimage )

   
         oApp:oBrwX01:CreateFromCode()
             oApp:oBrwX01:oclient := oApp:oWnd

  DEFINE BRUSH oBrush FILE "fondos\red2.bmp"
      DEFINE BRUSH oBrush1 FILE "fondos\tapiz5.bmp"



@ 28.450,40.50 FOLDEREX aFolders[ 2 ] PROMPTS "&Datos del cliente         ", "&Poliza                                ","&Primas pagadas             ","&Datos del Vehiculo                                          " OF   oApp:oWnd SIZE 753, 305 ANIMATE SPEED 50 ;
                     BITMAPS "ima\16x16\id_card2.bmp","ima\16x16\poliza.bmp" ,"ima\16x16\dinero.bmp" , "ima\16x16\sportscar.bmp"

oApp:osay := array(6)

@ 1.07,1  SAY oApp:osay[1] PROMPT "NOMBRE :"   OF aFolders[ 1 ]  TRANSPARENT    //COLOR CLR_WHITE, nRGB(0,0,0)  //FONT oTextFont//Transparent //COLOR nRgb(253,253,253 ),nRgb( 132, 112, 255)

 //-----------------------------------------------------------------------------


    

        

         
         
      
      @ 0, oOutlook:nWidth + 2 FOLDER aFolders[ 3 ] PROMPTS "Four", "Five", "Six" PIXEL ;
         of oOutlook:oWnd SIZE oOutlook:oWnd:nWidth - oOutlook:nWidth, oOutlook:oWnd:nHeight
         
      @ 0, oOutlook:nWidth + 2 FOLDER aFolders[ 4 ] PROMPTS "7", "8", "9" PIXEL ;
         of oOutlook:oWnd SIZE oOutlook:oWnd:nWidth - oOutlook:nWidth, oOutlook:oWnd:nHeight
   endif
   
   do case
case oOutlook:nOption == 1
           aFolders[ 1 ]:Show()
           aFolders[ 3 ]:Hide() 
           aFolders[ 2 ]:Hide()
           aFolders[ 1 ]:Show()
           
      case oOutlook:nOption == 2
           aFolders[ 3 ]:Hide()
           aFolders[ 1 ]:Hide()
           aFolders[ 2 ]:Show()
           
      case oOutlook:nOption == 3
           aFolders[ 2 ]:Hide()
           aFolders[ 1 ]:Hide()
           aFolders[ 3 ]:Show()
           
           case oOutlook:nOption == 4
           aFolders[ 2 ]:Hide()
           aFolders[ 1 ]:Hide()
           aFolders[ 4 ]:Show()
   endcase
   
return nil  

Re: En FOLDEREX no me refresca los datos HELP

Posted: Wed Jan 20, 2016 8:10 am
by Antonio Linares
Si vas a mostrar distintos folders y browses entonces necesitas un array de folders y otro de browses y hacer basicamente
lo mismo: mostrar uno y ocultar los otros.

Re: En FOLDEREX no me refresca los datos HELP

Posted: Wed Jan 20, 2016 9:20 am
by cnavarro
Aida,

El Folder o el FolderEx se crea con uno o varios dialogs dependiendo de la instruccion que utilices en:

Code: Select all


     @ 0, oOutlook:nWidth + 2 FOLDER aFolders[ 1 ] PROMPTS "" PIXEL ;       //PROMPTS "UNO", "DOS", etc
         of oOutlook:oWnd SIZE oOutlook:oWnd:nWidth - oOutlook:nWidth, oOutlook:oWnd:nHeight
 
Por lo tanto cualquier control ha de hacer referencia a su dialog contenedor y no al Folder, es decir

Code: Select all


     @ 76,00 XBROWSE oApp:oBrwX01 OF aFolders[ 1 ]:aDialogs[ 1 ] ALIAS "AUTOS"  ;     // Aqui, no es aFolders[1] 
    .../...
 

Re: En FOLDEREX no me refresca los datos HELP

Posted: Wed Jan 20, 2016 5:13 pm
by AIDA
HOLA

GRACIAS...

Ya se pintan pero no funciona ningún control de la izquierda y tampoco el xbrowse están fijos como foto :shock:

Saluditos :wink:

Image

Code: Select all

function ShowFolder( oOutlook )

   static aFolders,fl2,cfile,aselgrad,arowgrad,nrecsel,cimage
   local oBrush,oBrush1



   if aFolders == nil
      aFolders = Array( 4 )
    *  @ 0, oOutlook:nWidth + 2 FOLDER aFolders[ 1 ] PROMPTS "One", "Two", "Three" PIXEL ;
     *    OF oOutlook:oWnd SIZE oOutlook:oWnd:nWidth - oOutlook:nWidth, oOutlook:oWnd:nHeight

     @ 0, oOutlook:nWidth + 2 FOLDER aFolders[ 1 ] PROMPTS "POLIZARIO " PIXEL ;
         of oOutlook:oWnd SIZE oOutlook:oWnd:nWidth - oOutlook:nWidth, oOutlook:oWnd:nHeight


     @ 75,oOutlook:nWidth + 0 FOLDEREX aFolders[ 2 ]  PROMPT ".                       ." PIXEL of oApp:oWnd SIZE 755, 697 ANIMATE SPEED 50;
     BITMAPS "ima\16x16\car.bmp"


     @ 00,00 XBROWSE oApp:oBrwX01 OF aFolders[ 2 ]:aDialogs[ 1 ] ALIAS "AUTOS"  ;
            HEADERS "Folio", "Nombre", "Poliza", "Inciso", "Compañia", "Folio Empresa","Estatus";
            FIELDS   AUTOS->folio,;
            ALLTRIM(AUTOS->APELLIDO_P) +" "+ ALLTRIM(AUTOS->APELLIDO_M) +" "+  ALLTRIM(AUTOS->NOMBRE) ,;
                            ALLTRIM(AUTOS->POLIZA)  ,;
                              AUTOS->INCISO  ,;
                            AUTOS->comp,;
                                                    AUTOS->folio_e,;
                                                    AUTOS->CANCELADA;
                                                   COLSIZES 50,210 , 160 , 50 , 150,100  SIZE 749,319;
                                                    JUSTIFY AL_LEFT,AL_CENTER,AL_CENTER,AL_RIGHT,AL_CENTER;
                                                PICTURES "@!","@!","@!","@!","@!","@!";
  ON CLICK (oApp:GETNOM:=ALLTRIM(AUTOS->NOMBRE) +" "+ ALLTRIM(AUTOS->APELLIDO_P) +" "+ ALLTRIM(AUTOS->APELLIDO_M),oApp:OGETN:Refresh(),;
  oApp:GETT:=AUTOS->TEL1,oApp:oGETT:Refresh(),oApp:gett2:=AUTOS->TEL2,oApp:oGETT2:Refresh(),oApp:GETDIREC:=ALLTRIM(AUTOS->DIRECCION) +" Col. " + ALLTRIM(AUTOS->COLONIA) +" Cp. " +;
  ALLTRIM(AUTOS->cod_postal), oApp:oGETDIREC:Refresh(),oApp:cEmail:=AUTOS->email,oApp:aEmail:Refresh(),oApp:cPagina:=AUTOS->pagina,oApp:aPagina:Refresh(),oApp:gETCIU:=AUTOS->poblacion,;
  oApp:oGETCIU:Refresh(),oApp:MeMiTo:=AUTOS->comentario,oApp:mCOmmENtS:Refresh(),oApp:gETPOL:=AUTOS->Poliza,;
  oApp:oGETPOL:Refresh(),oApp:gETINC:=AUTOS->inciso,oApp:oGETINC:Refresh(),oApp:RAMO:="AUTOS",oApp:oRAMOS:Refresh(),oApp:rFICHA:=AUTOS->ficha,oApp:oFICHA:Refresh(),oApp:cTpago:=AUTOS->cobertura,oApp:oTpago:Refresh(),;
  oApp:cFichero:=AUTOS->PDF,IIF(AUTOS->CANCELADA="S", playfile("data\cancelada.mp3"),playfile(cfile) ),oApp:pEsTA:=alltrim(AUTOS->POLIZA),saltopaago(oApp:pEsTA,oApp:novoz),oApp:oBrwX01:Refresh())
  oApp:oBrwX01:cTooltip :={ "POLIZAS DE AUTOS (C)Copyright 2010 - Por Aida Sistemas S.A.", "POLIZARIUM",1,CLR_WHITE,CLR_HBLUE }

    
     oApp:oBrwX01:nMarqueeStyle := MARQSTYLE_HIGHLWIN7
    
   oApp:oBrwX01:nFreeze := 2
     oApp:oBrwX01:l2007 := (.t.)


 oApp:oBrwX01:bClrStd:= { || If( ( (oApp:oBrwX01:cAlias)->(OrdKeyNo()) % 2 ) == 0, { CLR_BLACK, RGB( 224, 236, 255 ) }, { CLR_BLACK, RGB( 189, 211, 253 ) } ) }


      oApp:oBrwX01:bRClicked := { | nRow, nCol | ShowPopup( nRow, nCol, oApp:oBrwX01 ) }

      oApp:oBrwX01:lFastEdit     := .f.

        oApp:oBrwX01:aCols[ 1 ]:nDataStrAlign:= AL_LEFT
        oApp:oBrwX01:aCols[ 2 ]:nDataStrAlign:= AL_LEFT
        oApp:oBrwX01:aCols[ 3 ]:nDataStrAlign:= AL_LEFT
        oApp:oBrwX01:aCols[ 5 ]:nDataStrAlign:= AL_LEFT

      XbrStyles( oApp:oBrwX01 )


     oApp:oBrwX01:bClrHeader := {|| { nRGB(140, 0, 0), nRGB( 231, 242, 255 ), } }

     oApp:oBrwX01:lFooter  := .T.


     oApp:oBrwX01:aCols[ 2 ]:bFooter       := { || "Registro->"+""+ tran(autos->(OrdKeyNo()),'@E 999,999')+" / "+tran(autos->(OrdKeyCount()),'@E 999,999')  }


     oApp:oBrwX01:aCols[ 3 ]:bFooter       :={ ||"Total de primas pagadas--->" }


    * oApp:oBrwX01:aCols[ 5 ]:bFooter       := { || TRANSFORM(oApp:AUTOSVALOR,"$9,999,999,999.99")  }

      oApp:oBrwX01:aCols[1]:bLClickHeader := {|r,c,f,o| (MiAccion1(),oApp:oBrwX01:refresh())}
      oApp:oBrwX01:aCols[2]:bLClickHeader := {|r,c,f,o| (MiAccion2(),oApp:oBrwX01:refresh())}
      oApp:oBrwX01:aCols[3]:bLClickHeader := {|r,c,f,o| (MiAccion3(),oApp:oBrwX01:refresh())}
      oApp:oBrwX01:aCols[5]:bLClickHeader := {|r,c,f,o| (MiAccion5(),oApp:oBrwX01:refresh())}

     oApp:oBrwX01:nStretchCol = STRETCHCOL_LAST

     oApp:oBrwX01:SetRDD()

            WITH OBJECT oApp:oBrwX01:Estatus
        : AddBitmap( 'ima\16x16\set.bmp' ) // non-alpha bitmap
        : AddBitmap( 'ima\16x16\close.bmp' ) // non-alpha bitmap
              : bBmpData   := { || if(autos->cancelada == "S" , 2, 1) }


         END

             WITH OBJECT oApp:oBrwX01:poliza
             : AddBitmap( 'ima\16x16\key_f.bmp' )
             : AddBitmap( 'ima\16x16\key_inc.bmp' )
             : AddBitmap( 'ima\16x16\key_i.bmp' ) // non-alpha bitmap

             : bBmpData   := { || if(autos->flotilla == "SI" , 1, if(autos->flotilla == "NO" ,2, 3)) }

          END


     WITH OBJECT  oApp:oBrwX01
        :nStretchCol   := 1
    :nMarqueeStyle := MARQSTYLE_HIGHLROW

      :bClrSelFocus  := { || { CLR_HBLUE, aselgrad } }
      :bClrRowFocus  := { || { CLR_BLUE, arowgrad } }

            :bClrGrad := { | lInvert | If( lInvert, ;
      { { 1/3, nRGB( 255, 253, 222 ), nRGB( 255, 231, 151 ) }, ;
        { 2/3, nRGB( 255, 215,  84 ), nRGB( 255, 233, 162 ) }  ;
      }, ;
      { { 1/3, nRGB( 219, 230, 244 ), nRGB( 207, 221, 239 ) }, ;
        { 2/3, nRGB( 201, 217, 237 ), nRGB( 231, 242, 255 ) }  ;
      } ) }
   END

oApp:oBrwX01:Setcolor( RGB( 30,144,255 ), RGB( 16, 78, 139 ) )


AEval( oApp:oBrwX01:aCols, { |oCol| ;
      oCol:bPaintText := { |oCol, hDC, cData, aRect | ;
                           PaintCol2( oCol, hDC, cData, aRect, nrecsel ) } ;
      } )



    oApp:oBrwX01:SetBackGround(  cimage )


         oApp:oBrwX01:CreateFromCode()
             oApp:oBrwX01:oclient := oApp:oWnd

  DEFINE BRUSH oBrush FILE "fondos\red2.bmp"
      DEFINE BRUSH oBrush1 FILE "fondos\tapiz5.bmp"



@ 28.450,40.50 FOLDEREX aFolders[ 2 ] PROMPTS "&Datos del cliente         ", "&Poliza                                ","&Primas pagadas             ","&Datos del Vehiculo                                          " OF   oApp:oWnd SIZE 753, 305 ANIMATE SPEED 50 ;
                     BITMAPS "ima\16x16\id_card2.bmp","ima\16x16\poliza.bmp" ,"ima\16x16\dinero.bmp" , "ima\16x16\sportscar.bmp"

oApp:osay := array(6)

@ 1.07,1  SAY oApp:osay[1] PROMPT "NOMBRE :"   OF aFolders[ 2 ]:aDialogs[ 1 ]    TRANSPARENT    //COLOR CLR_WHITE, nRGB(0,0,0)  //FONT oTextFont//Transparent //COLOR nRgb(253,253,253 ),nRgb( 132, 112, 255)


 *AEVAL( oApp:osay, {|o| o:setbrush( oBrush1 )} )

 //-----------------------------------------------------------------------------
 
      @ 0, oOutlook:nWidth + 2 FOLDER aFolders[ 3 ] PROMPTS "Four", "Five", "Six" PIXEL ;
         of oOutlook:oWnd SIZE oOutlook:oWnd:nWidth - oOutlook:nWidth, oOutlook:oWnd:nHeight

      @ 0, oOutlook:nWidth + 2 FOLDER aFolders[ 4 ] PROMPTS "7", "8", "9" PIXEL ;
         of oOutlook:oWnd SIZE oOutlook:oWnd:nWidth - oOutlook:nWidth, oOutlook:oWnd:nHeight
   endif

   do case
case oOutlook:nOption == 1
          
           aFolders[ 3 ]:Hide()
           aFolders[ 2 ]:Hide()
           aFolders[ 1 ]:Show()

      case oOutlook:nOption == 2
           aFolders[ 3 ]:Hide()
           aFolders[ 1 ]:Hide()
           aFolders[ 2 ]:Show()
           
           
      case oOutlook:nOption == 3
           aFolders[ 2 ]:Hide()
           aFolders[ 1 ]:Hide()
           aFolders[ 3 ]:Show()

           case oOutlook:nOption == 4
           aFolders[ 2 ]:Hide()
           aFolders[ 1 ]:Hide()
           aFolders[ 4 ]:Show()
   endcase

return nil

Re: En FOLDEREX no me refresca los datos HELP

Posted: Wed Jan 20, 2016 6:16 pm
by cnavarro
Aida, creo que:

Code: Select all

oApp:oBrwX01:oclient := oApp:oWnd
 
en todo caso, deberia ser:

Code: Select all

oApp:oWnd:oclient := oApp:oBrwX01
 
aunque si el browse va dentro del aFolders[ n ]:aDialogs[ m ], no tendría mucho sentido hacerlo
Quizás

Code: Select all

oApp:oWnd:oClient := aFolders[ 1 ]
 
pero hay que tener en cuenta que vamos a ir poniendo distintos aFolders[ n ] según la opcion seleccionada

Re: En FOLDEREX no me refresca los datos HELP

Posted: Wed Jan 20, 2016 10:51 pm
by AIDA
cnavarro wrote:Aida, creo que:

Code: Select all

oApp:oBrwX01:oclient := oApp:oWnd
 
en todo caso, deberia ser:

Code: Select all

oApp:oWnd:oclient := oApp:oBrwX01
 
aunque si el browse va dentro del aFolders[ n ]:aDialogs[ m ], no tendría mucho sentido hacerlo
Quizás

Code: Select all

oApp:oWnd:oClient := aFolders[ 1 ]
 
pero hay que tener en cuenta que vamos a ir poniendo distintos aFolders[ n ] según la opcion seleccionada

Lo aplique pero sigue igual fijo como foto

Code: Select all

@ 00,00 XBROWSE oApp:oBrwX01 OF oApp:oWnd:oClient:=aFolders[ 2 ]:aDialogs[ 1 ] ALIAS "AUTOS"

Re: En FOLDEREX no me refresca los datos HELP

Posted: Wed Jan 20, 2016 11:41 pm
by AIDA
Aquí esta todo mi codiguito OUTLOOK2003

Agregue un segundo XBROWSE pero cuando se ejecuta el programa y le doy click en AUTOS se pinta el segundo XBROWSE que es de VIDA en lugar de AUTOS :shock:
y sigue todo atorado como foto :o


creo que ya me confundí toda :(


Saluditos :wink:

Image


Code: Select all

 DEFINE OUTLOOK2003 oOutLook2003 OF oApp:oWnd ;
      PROMPTS "POLIZARIUM","Autos", "Vida", "Daños", "Gastos Medicos", "Accidentes","" ;
        BITMAPS  "ima\newwin.bmp","ima\16x16\car.bmp","ima\16x16\vida.bmp", "ima\16x16\danos.bmp","ima\16x16\gmm.bmp", "ima\16x16\a21_.bmp";
        ON CHANGE ShowFolder( oOutLook2003 )


   oApp:oWnd:oLeft =oOutLook2003//nil // Because the splitter is going to control the resize

  oExBar := TExplorerBar():New(oOutLook2003:aDialogs[ 1 ])

    oExBar:lAnimate := !oExBar:lAnimate
              *  oExBar:CollapseAll()

DEFINE TASKPANEL oExBar
TASKGROUP   "Datos usuario"  SPECIAL WATERMARK "ima\Image28.bmp"  
ENDTASKGROUP
ENDTASKPANEL

         *oExBar:SetTheme( "XPGreen.dll" )
         oExBar:AnchorLeft()
         oExBar:AnchorRight()

  oExBar := TExplorerBar():New(oOutLook2003:aDialogs[ 2 ])


        bClick := {|| msgbeep() }


        DEFINE TASKPANEL oExBar
        TASKGROUP   "ALTAS AUTOS" BITMAP "ima\auto.bmp" SPECIAL WATERMARK "ima\Image28.bmp"    COLLAPSED
        TASKITEM "Alta solicitud"          BITMAP "ima\16x16\new2.bmp"     TOOLTIP "Registre la solicitud individual o de flotilla"           action  ALTAFOL_I_F()
        TASKITEM "Alta de Folio Solicitud" BITMAP "ima\16x16\mget.bmp"     TOOLTIP "Registre el folio de recepcion de la compañia de seguros" action  BUSCASOL1()
        TASKITEM "Alta poliza"             BITMAP "ima\16x16\inspect.bmp"  TOOLTIP "Registre los datos de poliza individual o de flotilla"    action  BUSCAPOL1()
          TASKITEM "Alta incisos"            BITMAP "ima\16x16\inspect.bmp"  TOOLTIP "Registre el numero de inciso dado por la compañia"        action  BUSCASOLINC()
        TASKITEM "Modificaciones"          BITMAP "ima\16x16\source.bmp"   TOOLTIP "Modulo de modificaciones de datos de solicitud"           action  MODIFICAPOLIZA()
          TASKITEM "Pagos"                   BITMAP "ima\16x16\Image1.bmp"   TOOLTIP "Modulo de ingresos a la compañia"                         action  PAGOSAUTOS()
         ENDTASKGROUP

         TASKGROUP "BAJAS AUTOS"  BITMAP "ima\auto2_.bmp" SPECIAL WATERMARK "ima\cancelar.bmp"  COLLAPSED  //COLLAPSABLE
        TASKITEM "Cancelaciones"           BITMAP "ima\16x16\stop.bmp"      action   CACELA()
        TASKITEM "Rehabilitaciónes"        BITMAP "ima\16x16\favorite.bmp"  action   EXCACELA()
        TASKITEM "Baja Total Poliza"       BITMAP "ima\16x16\delete.bmp"    action   BUSCABORRAS()
          TASKITEM "Baja Total Solicitud"    BITMAP "ima\16x16\delete.bmp"    action   BUSCABORRASF()
            ENDTASKGROUP

            TASKGROUP  "CONSULTAS"  BITMAP "ima\16x16\find2.bmp"  SPECIAL WATERMARK "ima\Image15.bmp"  COLLAPSED
        TASKITEM "No. de poliza"           BITMAP "ima\16x16\find3.bmp"     action   BUSCAPOLIZA1()
        TASKITEM "Nombre"                  BITMAP "ima\16x16\find3.bmp"     action    Lista_clientes() //ShowPopup()
         ENDTASKGROUP
         *TASKGROUP  "Detalles" NO COLLAPSABLE
         *   TASKITEM "<b>TTaskPanel()</b>" + ;
         *            "<p>Clase para la creacion de paneles de tareas</p>"+;
                     *            "<p><b>Autor</b></p>" +;
         *            "<p>Andres Reyes Hernandez</p>" INFO
         *ENDTASKGROUP
            oExBar:lAnimate := !oExBar:lAnimate
              *  oExBar:CollapseAll()
      ENDTASKPANEL




         *oExBar:SetTheme( "XPGreen.dll" )
         oExBar:AnchorLeft()
         oExBar:AnchorRight()
              *oPanel:AddLink("Mis sitios de red",bClick,"sitiosred")



     oExBar := TExplorerBar():New(oOutLook2003:aDialogs[ 3 ])
     * oExBar := TExplorerBar():New( 0, 600, 200, 800, oOutLook2003:aDialogs[ 2 ])

    * @ 0, 0 EXPLORERBAR oExBar OF oOutLook2003:aDialogs[ 2 ] ;
    *  SIZE oOutLook2003:aDialogs[ 2 ]:nWidth, oOutLook2003:aDialogs[ 2 ]:nHeight

        * oOutLook2003:aDialogs[2]: setcolor( CLR_WHITE, CLR_BLUE )
         oOutLook2003:aDialogs[2]:Disable()

       oPanel = oExBar:AddPanel("G.M.M." )
      oPanel:lSpecial = .T.
      oPanel:AddLink("Alta solicitud",         bClick   ,"ima\16x16\new2.bmp")
        oPanel:AddLink("Alta de Folio Solicitud",bClick   ,"ima\16x16\mget.bmp")
      oPanel:AddLink("Alta poliza",            bClick   ,"ima\16x16\inspect.bmp")
      oPanel:AddLink("Modificaciones",         bClick   ,"ima\16x16\source.bmp")
      oPanel:AddLink("Pagos",                  bClick   ,"ima\16x16\Image1.bmp")

      oPanel = oExBar:AddPanel("BAJAS VIDA" )
      oPanel:AddLink("Cancelaciones"   ,bClick,"ima\16x16\stop.bmp")
        oPanel:AddLink("Rehabilitaciónes",bClick,"ima\16x16\favorite.bmp")
        oPanel:AddLink("Baja Total"      ,bClick,"ima\16x16\delete.bmp")

       oPanel = oExBar:AddPanel("CONSULTAS" )
       oPanel:AddLink("No. de poliza",bClick,"ima\16x16\find3.bmp")
      oPanel:AddLink("Nombre"       ,bClick,"ima\16x16\find3.bmp")


        oExBar:AnchorLeft()
        

        oExBar := TExplorerBar():New(oOutLook2003:aDialogs[4])

        *oExBar := TExplorerBar():New( 0, 600, 200, 800, oOutLook2003:aDialogs[ 3 ])

        oOutLook2003:aDialogs[3]:setcolor( CLR_WHITE, CLR_BLUE )
        oOutLook2003:aDialogs[3]:Disable()



    #ifndef __CLIPPER__
 *     DEFINE STATUSBAR oStatusBar PROMPT "Polozarium  2010" OF oApp:oWnd
    #else
 *     DEFINE MESSAGE oStatusBar PROMPT "Polozarium  2010" OF oApp:oWnd
    #endif



   oApp:oWnd:oClient = nil




                DIITA := DAY(DATE())
                oApp:dfecha:= CMONTH(DATE())
              ANITO := YEAR(DATE())

              DIITA:=STR(DIITA)
              ANITO:=STR(ANITO)


              MESITO:=tmes(oApp:dfecha)


               SET MESSAGE OF oApp:oWnd TO "Polizarium 2016" CENTERED CLOCK KEYBOARD 2007



         *  BLA:="\Spd=120\Este es el control de polizas POLIZARIUM tienes 30 dias para activar tu copia!! "      MAXIMIZED
         *  BLA:="HOLA"
          WndCenter( oApp:oWnd:hWnd )


          *playfile("data\archeryrange.mp3")


//                       oAgent := TMsAgent():New( "MsAgent",.T.)
BLA:="HOLA"

    ACTIVATE WINDOW oApp:oWnd ;
   ON INIT(oAgent:Show(), oAgent:Move( 100,100 ),oAgent:Say("\Spd=120\Hoy es"+DIITA+" "+"de"+" "+MESITO+" "+"del"+" "+ANITO+BLA),oAgent:Stop() ) ;
   ON PAINT DrawBitmap( hDC, oBmpx:hBitmap,0,0, oApp:oWnd:oWndClient:nWidth(), oApp:oWnd:oWndClient:nHeight() )
                
//ON PAINT DrawBitmap( hDC, oBmpx:hBitmap,0,0, oApp:oWnd:oWndClient:nWidth(), oApp:oWnd:oWndClient:nHeight() )  ;
  oAgent:Hide()
  oAgent:End() // End the agent
  oBrush:End()
  oBmpx:End()

     // ON INIT ( oAgent:Show(), oAgent:Move( 600,400 ) ) ;
       //
 oRBar:End()

DeleteObject( hBitmap )
oFont:End()

SET RESOURCES TO
DBCLOSEALL()
resallfree() //por si quedan recursos en memoria....
memory(-1)
PostQuitMessage( 0 )
return nil

//----------------------------------------------------------------------------//


//----------------------------------------------------------------------------//

function ShowFolder( oOutLook2003 )

   static aFolders,fl2,cfile,aselgrad,arowgrad,nrecsel,cimage
   local oBrush,oBrush1,oBtn,oBrush2,oBrush3

   //-------------------------------------------------------------------------------------
     DEFINE BRUSH oBrush RESOURCE "BLANCOS"
     DEFINE BRUSH oBrush1 FILENAME "sea2.bmp"
     DEFINE BRUSH oBrush2 RESOURCE "ECHO1"
     DEFINE BRUSH oBrush3 RESOURCE "GRAD"

     dbselectarea( "autos" )
     autos->(DbSetIndex( "DATA\AUTOS.CDX" ))
     autos->(ORDSETFOCUS( "POLIZA_I" ))

     *set index to POLIZA_A

 *  Set relation to autos->poliza into pagos
     oApp:AUTOSVALOR:=10000

     dbgotop()
     oApp:AUTOSPOLIZA:=lastrec()
     sum AUTOS->pagos_a to  oApp:AUTOSVALOR
     dbgotop()


         oApp:OGETN :=space(60)


   arowgrad := { { .5, RGB( 232, 241, 252 ), RGB(  232, 241, 252 ) }, ;
                 { .5, RGB( 210, 225, 244 ), RGB(  235, 243, 253 ) } }

   aselgrad := { { .5, RGB( 255, 255, 251 ), RGB( 255, 237, 178 ) }, ;
                 { .5, RGB( 255, 218, 103 ), RGB( 255, 233, 162 ) } }




       XbrNumFormat( 'E', .t. )

oApp:novoz:="si"


   if aFolders == nil
      aFolders = Array( 4 )
    

     @ 0, oOutLook2003:nWidth + 2 FOLDER oApp:oWnd:oClient :=aFolders[ 1 ] PROMPTS "POLIZARIO " PIXEL ;
         of oOutLook2003:oWnd SIZE oOutLook2003:oWnd:nWidth - oOutLook2003:nWidth, oOutLook2003:oWnd:nHeight


     @ 75,oOutLook2003:nWidth + 0 FOLDEREX aFolders[ 2 ]  PROMPT "A  U  T  O  S" PIXEL of oApp:oWnd SIZE 755, 697 ANIMATE SPEED 50;
     BITMAPS "ima\16x16\car.bmp"




     @ 00,00 XBROWSE  oApp:oBrwX01 OF oApp:oWnd:oClient := aFolders[ 2 ]:aDialogs[ 1 ] ALIAS "AUTOS"  ;
            HEADERS "Folio", "Nombre", "Poliza", "Inciso", "Compañia", "Folio Empresa","Estatus";
            FIELDS   AUTOS->folio,;
            ALLTRIM(AUTOS->APELLIDO_P) +" "+ ALLTRIM(AUTOS->APELLIDO_M) +" "+  ALLTRIM(AUTOS->NOMBRE) ,;
                            ALLTRIM(AUTOS->POLIZA)  ,;
                              AUTOS->INCISO  ,;
                            AUTOS->comp,;
                                    AUTOS->folio_e,;
                                    AUTOS->CANCELADA;
                                       COLSIZES 50,210 , 160 , 50 , 150,100  SIZE 749,319;
                                            JUSTIFY AL_LEFT,AL_CENTER,AL_CENTER,AL_RIGHT,AL_CENTER;
                                                PICTURES "@!","@!","@!","@!","@!","@!";
  ON CLICK (oApp:GETNOM:=ALLTRIM(AUTOS->NOMBRE) +" "+ ALLTRIM(AUTOS->APELLIDO_P) +" "+ ALLTRIM(AUTOS->APELLIDO_M),oApp:OGETN:Refresh(),;
  oApp:GETT:=AUTOS->TEL1,oApp:oGETT:Refresh(),oApp:gett2:=AUTOS->TEL2,oApp:oGETT2:Refresh(),oApp:GETDIREC:=ALLTRIM(AUTOS->DIRECCION) +" Col. " + ALLTRIM(AUTOS->COLONIA) +" Cp. " +;
  ALLTRIM(AUTOS->cod_postal), oApp:oGETDIREC:Refresh(),oApp:cEmail:=AUTOS->email,oApp:aEmail:Refresh(),oApp:cPagina:=AUTOS->pagina,oApp:aPagina:Refresh(),oApp:gETCIU:=AUTOS->poblacion,;
  oApp:oGETCIU:Refresh(),oApp:MeMiTo:=AUTOS->comentario,oApp:mCOmmENtS:Refresh(),oApp:gETPOL:=AUTOS->Poliza,;
  oApp:oGETPOL:Refresh(),oApp:gETINC:=AUTOS->inciso,oApp:oGETINC:Refresh(),oApp:RAMO:="AUTOS",oApp:oRAMOS:Refresh(),oApp:rFICHA:=AUTOS->ficha,oApp:oFICHA:Refresh(),oApp:cTpago:=AUTOS->cobertura,oApp:oTpago:Refresh(),;
  oApp:cFichero:=AUTOS->PDF,IIF(AUTOS->CANCELADA="S", playfile("data\cancelada.mp3"),playfile(cfile) ),oApp:pEsTA:=alltrim(AUTOS->POLIZA),saltopaago(oApp:pEsTA,oApp:novoz),oApp:oBrwX01:Refresh())
  oApp:oBrwX01:cTooltip :={ "POLIZAS DE AUTOS (C)Copyright 2010 - Por Aida Sistemas S.A.", "POLIZARIUM",1,CLR_WHITE,CLR_HBLUE }

    
     oApp:oBrwX01:nMarqueeStyle := MARQSTYLE_HIGHLWIN7
    
   oApp:oBrwX01:nFreeze := 2
     oApp:oBrwX01:l2007 := (.t.)


 oApp:oBrwX01:bClrStd:= { || If( ( (oApp:oBrwX01:cAlias)->(OrdKeyNo()) % 2 ) == 0, { CLR_BLACK, RGB( 224, 236, 255 ) }, { CLR_BLACK, RGB( 189, 211, 253 ) } ) }


      oApp:oBrwX01:bRClicked := { | nRow, nCol | ShowPopup( nRow, nCol, oApp:oBrwX01 ) }

      oApp:oBrwX01:lFastEdit     := .f.

        oApp:oBrwX01:aCols[ 1 ]:nDataStrAlign:= AL_LEFT
        oApp:oBrwX01:aCols[ 2 ]:nDataStrAlign:= AL_LEFT
        oApp:oBrwX01:aCols[ 3 ]:nDataStrAlign:= AL_LEFT
        oApp:oBrwX01:aCols[ 5 ]:nDataStrAlign:= AL_LEFT

      XbrStyles( oApp:oBrwX01 )


     oApp:oBrwX01:bClrHeader := {|| { nRGB(140, 0, 0), nRGB( 231, 242, 255 ), } }

     oApp:oBrwX01:lFooter  := .T.


     oApp:oBrwX01:aCols[ 2 ]:bFooter       := { || "Registro->"+""+ tran(autos->(OrdKeyNo()),'@E 999,999')+" / "+tran(autos->(OrdKeyCount()),'@E 999,999')  }


     oApp:oBrwX01:aCols[ 3 ]:bFooter       :={ ||"Total de primas pagadas--->" }


     oApp:oBrwX01:aCols[ 5 ]:bFooter       := { || TRANSFORM(oApp:AUTOSVALOR,"$9,999,999,999.99")  }

      oApp:oBrwX01:aCols[1]:bLClickHeader := {|r,c,f,o| (MiAccion1(),oApp:oBrwX01:refresh())}
      oApp:oBrwX01:aCols[2]:bLClickHeader := {|r,c,f,o| (MiAccion2(),oApp:oBrwX01:refresh())}
      oApp:oBrwX01:aCols[3]:bLClickHeader := {|r,c,f,o| (MiAccion3(),oApp:oBrwX01:refresh())}
      oApp:oBrwX01:aCols[5]:bLClickHeader := {|r,c,f,o| (MiAccion5(),oApp:oBrwX01:refresh())}

     oApp:oBrwX01:nStretchCol = STRETCHCOL_LAST

     oApp:oBrwX01:SetRDD()

            WITH OBJECT oApp:oBrwX01:Estatus
        : AddBitmap( 'ima\16x16\set.bmp' ) // non-alpha bitmap
        : AddBitmap( 'ima\16x16\close.bmp' ) // non-alpha bitmap
              : bBmpData   := { || if(autos->cancelada == "S" , 2, 1) }


         END

             WITH OBJECT oApp:oBrwX01:poliza
             : AddBitmap( 'ima\16x16\key_f.bmp' )
             : AddBitmap( 'ima\16x16\key_inc.bmp' )
             : AddBitmap( 'ima\16x16\key_i.bmp' ) // non-alpha bitmap

             : bBmpData   := { || if(autos->flotilla == "SI" , 1, if(autos->flotilla == "NO" ,2, 3)) }

          END


     WITH OBJECT  oApp:oBrwX01
        :nStretchCol   := 1
    :nMarqueeStyle := MARQSTYLE_HIGHLROW

      :bClrSelFocus  := { || { CLR_HBLUE, aselgrad } }
      :bClrRowFocus  := { || { CLR_BLUE, arowgrad } }

            :bClrGrad := { | lInvert | If( lInvert, ;
      { { 1/3, nRGB( 255, 253, 222 ), nRGB( 255, 231, 151 ) }, ;
        { 2/3, nRGB( 255, 215,  84 ), nRGB( 255, 233, 162 ) }  ;
      }, ;
      { { 1/3, nRGB( 219, 230, 244 ), nRGB( 207, 221, 239 ) }, ;
        { 2/3, nRGB( 201, 217, 237 ), nRGB( 231, 242, 255 ) }  ;
      } ) }
   END

oApp:oBrwX01:Setcolor( RGB( 30,144,255 ), RGB( 16, 78, 139 ) )


AEval( oApp:oBrwX01:aCols, { |oCol| ;
      oCol:bPaintText := { |oCol, hDC, cData, aRect | ;
                           PaintCol2( oCol, hDC, cData, aRect, nrecsel ) } ;
      } )



    oApp:oBrwX01:SetBackGround(  cimage )
                *oApp:oWnd:oClient := aFolders[ 2 ]:aDialogs[ 1 ]

         oApp:oBrwX01:CreateFromCode()
             oApp:oBrwX01:oclient := oApp:oWnd
          
          
  DEFINE BRUSH oBrush FILE "fondos\red2.bmp"
      DEFINE BRUSH oBrush1 FILE "fondos\tapiz5.bmp"



@ 28.450, 40.50 FOLDEREX oApp:oWnd:oClient :=aFolders[ 2 ]  PROMPTS "&Datos del cliente         ", "&Poliza                                ","&Primas pagadas             ","&Datos del Vehiculo                                          " OF   oApp:oWnd SIZE 753, 305 ANIMATE SPEED 50 ;
                     BITMAPS "ima\16x16\id_card2.bmp","ima\16x16\poliza.bmp" ,"ima\16x16\dinero.bmp" , "ima\16x16\sportscar.bmp"

oApp:osay := array(6)

@ 1.07,1  SAY oApp:osay[1] PROMPT "NOMBRE :"              OF aFolders[ 2 ]:aDialogs[ 1 ]  TRANSPARENT    //COLOR CLR_WHITE, nRGB(0,0,0)  //FONT oTextFont//Transparent //COLOR nRgb(253,253,253 ),nRgb( 132, 112, 255)
@ 1.07,10 get oApp:OGETN var oApp:GETNOM  size 350,18     OF aFolders[ 2 ]:aDialogs[ 1 ]   COLOR nRgb(0, 0, 0  ),nRgb( 240, 250, 255)
@ 1.07,73 SAY oApp:osay[2] PROMPT "TELEFONOS :"           OF aFolders[ 2 ]:aDialogs[ 1 ]  TRANSPARENT  //COLOR CLR_WHITE, nRGB(0,0,0)
@ 1.07,65  get oApp:oGETT  var oApp:gett  size 100,18     OF aFolders[ 2 ]:aDialogs[ 1 ]   COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255) //SHADOW
@ 1.07,80.1 get oApp:oGETT2 var oApp:GETT2 size 100,18    OF aFolders[ 2 ]:aDialogs[ 1 ]  COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255) //SHADOW

@ 3.7,1 SAY oApp:osay[3] PROMPT "DIRECCION :"             OF aFolders[ 2 ]:aDialogs[ 1 ]  TRANSPARENT //COLOR CLR_WHITE, nRGB(0,0,0)
@ 4,10 get oApp:oGETDIREC var oApp:GETDIREC size 442,18   OF aFolders[ 2 ]:aDialogs[ 1 ]  COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255)


@ 3.7,88 SAY oApp:osay[4] PROMPT "CIUDAD :"               OF aFolders[ 2 ]:aDialogs[ 1 ]  TRANSPARENT //COLOR CLR_WHITE, nRGB(0,0,0)
@ 4,73get oApp:oGETCIU var oApp:gETCIU size 156,18        OF aFolders[ 2 ]:aDialogs[ 1 ]  COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255)

@ 6.5,01 SAY oApp:osay[5] PROMPT "CORREO ELECTRONICO :"   OF aFolders[ 2 ]:aDialogs[ 1 ]  TRANSPARENT //COLOR CLR_WHITE, nRGB(0,0,0)
@ 7,18 get oApp:aEmail var oApp:cEmail size 256,18        OF aFolders[ 2 ]:aDialogs[ 1 ]  COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255)

@ 8.7,01 SAY oApp:osay[6] PROMPT "PAGINA INTERNET :"      OF aFolders[ 2 ]:aDialogs[ 1 ]  TRANSPARENT //COLOR CLR_WHITE, nRGB(0,0,0)
@ 10,18 get oApp:aPagina var oApp:cPagina size 256,18     OF aFolders[ 2 ]:aDialogs[ 1 ]  COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255)

*aFolders[ 2 ]:aDialogs[ 1 ]:SetBrush( oBrush1 )
 **AEVAL( oApp:osay, {|o| o:setbrush( oBrush1 )} )


  oApp:osay := array(5)
@ 1,1  SAY oApp:osay[1] PROMPT "POLIZA :"                 OF aFolders[ 2 ]:aDialogs[ 2 ]  TRANSPARENT //COLOR CLR_WHITE, nRGB(0,0,0)
@ 1,7  get oApp:oGETPOL var oApp:gETPOL size 150,18       OF aFolders[ 2 ]:aDialogs[ 2 ]  COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255)
@ 1,36 SAY oApp:osay[2] PROMPT "INCISO :"                 OF aFolders[ 2 ]:aDialogs[ 2 ]  TRANSPARENT //COLOR CLR_WHITE, nRGB(0,0,0)
@ 1,34 get oApp:oGETINC var oApp:gETINC size 40,18        OF aFolders[ 2 ]:aDialogs[ 2 ]  COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255)
@ 2.7,01 SAY oApp:osay[3] PROMPT "RAMO :  "               OF aFolders[ 2 ]:aDialogs[ 2 ]  TRANSPARENT //COLOR CLR_WHITE, nRGB(0,0,0)
@ 3,7 get oApp:oRAMOS var oApp:RAMO  size 52,18           OF aFolders[ 2 ]:aDialogs[ 2 ]  COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255)
@ 2.7,19 say oApp:osay[4] PROMPT "TIPO DE PAGO :"         OF aFolders[ 2 ]:aDialogs[ 2 ]  TRANSPARENT  //COLOR CLR_WHITE, nRGB(0,0,0)
@ 3,25 get oApp:oTpago var oApp:cTpago size 113,18        OF aFolders[ 2 ]:aDialogs[ 2 ]  COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255)
@ 4.7,01 SAY oApp:osay[5] PROMPT " FICHA :"               OF aFolders[ 2 ]:aDialogs[ 2 ]  TRANSPARENT  //COLOR CLR_WHITE, nRGB(0,0,0)
@ 5,7 get oApp:oFICHA var oApp:rFICHA size 64,18          OF aFolders[ 2 ]:aDialogs[ 2 ]  COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255)

@ 200,25 BTNBMP oBtn PROMPT "Solicitud PDF"               OF aFolders[ 2 ]:aDialogs[ 2 ]   SIZE 110, 30 FILE "ima\16x16\pdf.bmp" 2007  LEFT ACTION VerPDF (oApp:cFichero:=str(AUTOS->FOLIO))
oBtn:lEllipse = .T.
@ 200,200 BTNBMP oBtn PROMPT "Poliza PDF"                 OF aFolders[ 2 ]:aDialogs[ 2 ]   SIZE 110, 30 FILE "ima\16x16\pdf.bmp" 2007  LEFT ACTION VerPDFF(oApp:cFichero:=AUTOS->poliza)

//ShowPDF()
@ 1.20,40 GET oApp:mCOmmENtS var oApp:MeMiTo  size 400,200 OF aFolders[ 2 ]:aDialogs[ 2 ] MEMO MULTILINE COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255)

  * aFolders[ 2 ]:aDialogs[ 2 ]:SetBrush( oBrush1 )
   *AEVAL( oApp:osay, {|o| o:setbrush( oBrush1 )} )
**************************************************************************************************************************************************



 *AEVAL( oApp:osay, {|o| o:setbrush( oBrush1 )} )

 //-----------------------------------------------------------------------------
 
 @ 75,oOutLook2003:nWidth + 0 FOLDEREX  oApp:oWnd:oClient :=aFolders[ 3 ]  PROMPT "V  I  D  A" PIXEL of oApp:oWnd SIZE 755, 697 ANIMATE SPEED 50;
     BITMAPS "ima\16x16\favorite.bmp"
    
    
 dbselectarea( "vida" )
        dbgotop()
     oApp:vIDAPOLIZA:=lastrec()
        sum vida->pagado to oApp:vIDAVALOR
        dbgotop()

              @ 00,00 XBROWSE oApp:oBrwX2 OF  oApp:oWnd:oClient :=aFolders[ 3 ]:aDialogs[1] ALIAS "VIDA";
           HEADERS  "        Nombre               ", "    Poliza VIDA   ", "      Inciso      ","Pagado ", "Compañia";
           FIELDS ALLTRIM(vida->NOMBRE) +" "+ ALLTRIM(vida->APELLIDO_P) +" "+ ALLTRIM(vida->APELLIDO_M),;
                                                 vida->R_POLIZA  ,;
                                                    vida->POLIZA   ,;
                                                  vida->pagado  ,;
                                                  vida->comp;
                                                COLSIZES 250 , 100 , 100 , 100,200  SIZE 749,319;
                                                JUSTIFY AL_LEFT,AL_CENTER,AL_CENTER,AL_LEFT,AL_CENTER;
                                                PICTURES "@!","@!","@!", "999,999,999","@!";
                                                ON CLICK(Sndplaysound("beep1.wav"),oApp:GETNOM:=ALLTRIM(vida->NOMBRE) +" "+ ALLTRIM(vida->APELLIDO_P) +" "+ ALLTRIM(vida->APELLIDO_M),oApp:OGETN:Refresh(),;
        oApp:gett:=vida->TEL1,oApp:oGETT:Refresh(),oApp:GETT2:=vida->TEL2,oApp:oGETT2:Refresh(),oApp:GETDIREC:=ALLTRIM(vida->DIRECCION) +" Col. " + ALLTRIM(vida->COLONIA),;
        oApp:oGETDIREC:Refresh(),oApp:gETCIU:=vida->poblacion,oApp:oGETCIU:Refresh(),oApp:MeMiTo:=vida->comentario,oApp:mCOmmENtS:Refresh(),oApp:gETPOL:=vida->Poliza,;
        oApp:oGETPOL:Refresh(),oApp:gETINC:=vida->inciso,oApp:oGETINC:Refresh(),oApp:RAMO:="VIDA",oApp:oRAMOS:Refresh(),oApp:rFICHA:=vida->ficha,oApp:oFICHA:Refresh(),oApp:cFichero:=vida->pdf)

       oApp:oBrwX2:cTooltip :={ "POLIZAS DE VIDA (C)Copyright 2008 - Por Aida Sistemas S.A.", "POLIZARIUM",1,CLR_WHITE,CLR_GREEN }


          oApp:oBrwX2:l2007 := (.t.)

          oApp:oBrwX2:bClrStd:= {|| { IIF(vida->CANCELADA="S",Rgb(255,0,0),CLR_BLACK) , IIF(OrdKeyNo()%2=0,Rgb(193,221,255),Rgb(221,245,255))  } }

         oApp:oBrwX2:bClrRowFocus    := { || { CLR_BLACK, RGB(185,220,255) } }
       oApp:oBrwX2:nMarqueeStyle   := MARQSTYLE_HIGHLROWMS

      XbrStyles( oApp:oBrwX2 )

        
            oApp:oBrwX2:bClrRowFocus := { || { CLR_BLACK, RGB(185,220,255) } }
            oApp:oBrwX2:lFooter  := .T.
         
         oApp:oBrwX2:aCols[ 1 ]:nDataStrAlign:= AL_LEFT
            oApp:oBrwX2:aCols[ 1 ]:bFooter       :={ ||"Total de primas pagadas--->" }


         
            oApp:oBrwX2:aCols[ 4 ]:bFooter       := { || oApp:vIDAVALOR  }
            


*:= { |o,u,n| IF( n==13,( nStock := nStock - capitan->horas,capitan->horas := Val(u),nStock := nStock + capitan->horas, oApp:oBrwX:Refresh() ),NIL ) }

            oApp:oBrwX2:lFastEdit     := .F.
            oApp:oBrwX2:SetRDD()




        oApp:oBrwX2:lTransparent := .t.
            *oApp:oBrwX:oBrw := oBrush

             cImage="ima\01.jpg"

            oApp:oBrwX2:SetBackGround( cImage)

             oApp:oBrwX2:CreateFromCode()
             oApp:oBrwX2:oclient := oApp:oWnd

 
 @ 28.450,40.50 FOLDEREX oApp:oWnd:oClient :=aFolders[ 3 ] PROMPTS "&Datos del cliente         ", "&Poliza                                ","&Primas pagadas             " OF   oApp:oWnd SIZE 753, 305 ANIMATE SPEED 50 ;
                     BITMAPS "ima\16x16\id_card2.bmp","ima\16x16\poliza.bmp" ,"ima\16x16\dinero.bmp" 

      *@ 0, oOutLook2003:nWidth + 2 FOLDER aFolders[ 3 ] PROMPTS "Four", "Five", "Six" PIXEL ;
       *  of oOutLook2003:oWnd SIZE oOutLook2003:oWnd:nWidth - oOutLook2003:nWidth, oOutLook2003:oWnd:nHeight

      @ 0, oOutLook2003:nWidth + 2 FOLDER aFolders[ 4 ] PROMPTS "7", "8", "9" PIXEL ;
         of oOutLook2003:oWnd SIZE oOutLook2003:oWnd:nWidth - oOutLook2003:nWidth, oOutLook2003:oWnd:nHeight
   endif

   do case
case oOutLook2003:nOption == 1
           aFolders[ 1 ]:Show()
           aFolders[ 2 ]:aDialogs[ 1 ]:Hide()
           aFolders[ 3 ]:Hide()
           aFolders[ 2 ]:Hide()
           

   case oOutLook2003:nOption == 2
           aFolders[ 4 ]:Hide()
           oApp:oWnd:oClient :=aFolders[ 3 ]:aDialogs[1]:Hide()
           aFolders[ 3 ]:aDialogs[ 1 ]:Hide()
           aFolders[ 3 ]:Hide()
           aFolders[ 1 ]:Hide()
           oApp:oWnd:oClient := aFolders[ 2 ]:aDialogs[ 1 ]:Show()
           aFolders[ 2 ]:aDialogs[ 1 ]:Show()
           aFolders[ 2 ]:Show()


   case oOutLook2003:nOption == 3
           aFolders[ 2 ]:aDialogs[ 1 ]:Hide()
           *aFolders[ 2 ]:aDialogs[ 2 ]:Hide()
           aFolders[ 2 ]:Hide()
           aFolders[ 1 ]:Hide()
           aFolders[ 3 ]:aDialogs[ 1 ]:Show()
           aFolders[ 3 ]:Show()

           case oOutLook2003:nOption == 4
           aFolders[ 2 ]:Hide()
           aFolders[ 1 ]:Hide()
           aFolders[ 4 ]:Show()
   endcase

return nil

Re: TOutLook2003 con Folderex y Arrays no me funcionan bien HELP

Posted: Thu Jan 21, 2016 10:45 pm
by RenOmaS
Buenas

Un consejo :

Simplifica el codigo, es decir experimenta con una o dos opciones por control, si haces un prg separado sería mucho mejor., creo que ahi deberias utilizar un TPanel como contenedor de todos los objetos de la derecha y ese seria el :oClient de la ventana principal.
y mira este post http://forums.fivetechsupport.com/viewt ... b9#p100707
donde tu misma hablas de la function SetParent()

;)

Re: TOutLook2003 con Folderex y Arrays no me funcionan bien HELP

Posted: Fri Jan 22, 2016 12:15 am
by cnavarro
Intenta seguir este ejemplo a ver si te sirve ( situalo en la carpeta samples )

Code: Select all


#include "FiveWin.ch"
#include "OutLook.ch"

Static oStatusBar
Static aExBar
Static aFolders
Static aSubFolders
Static aBrws         := {}

REQUEST DBFCDX
//----------------------------------------------------------------------------//

function Main()

   local oWnd
   local oOutLook
   local oExBar
   local x
   local nH

   DEFINE WINDOW oWnd TITLE "FWH new Class TOutLook2003/2010"

   DEFINE OUTLOOK2010 oOutLook OF oWnd ;
      PROMPTS "Mail", "Calendar", "Contacts", "" ;
      BITMAPS "..\bitmaps\mail.bmp", "..\bitmaps\calendar.bmp", "..\bitmaps\notes.bmp" ;
      ON CHANGE ShowFolder( oOutLook ) NOBORDER
   
   oOutLook:nWidth  := 250
   oOutLook:nOption := 1
   oWnd:oLeft       := oOutLook
   aExBar           := Array( Len( oOutLook:aDialogs ) - 1 )
   
   For x = 1 to Len( aExBar )
      nH  := oOutLook:aDialogs[ x ]:nHeight * 3.5 + 12
      aExBar[ x ] := TExplorerBar():New( ,,, nH, oOutLook:aDialogs[ x ] )
      aExBar[ x ]:AddPanel( StrZero( x, 4 ), "..\bitmaps\32x32\people.bmp" )
   Next x
   
   DEFINE STATUSBAR oStatusBar PROMPT "  FWH Class TOutLook2003" OF oWnd
   
   ACTIVATE WINDOW oWnd MAXIMIZED ;
      ON INIT ( ShowFolder( oOutLook ), ShowSubFolders( oOutLook ) )

  DbCloseAll()
  
return nil

//----------------------------------------------------------------------------//

Function ShowFolder( oOutLook )

   local x

   if aFolders == nil
      aFolders = Array( Len( oOutLook:aDialogs ) - 1 )
      @ 0, oOutLook:nWidth + 2 FOLDEREX aFolders[ 1 ] ;
         PROMPTS "One", "Two", "Three" PIXEL ;
         OF oOutLook:oWnd SIZE oOutLook:oWnd:nWidth - oOutLook:nWidth - 18, ;
            oOutLook:oWnd:nHeight - oStatusBar:nHeight - 40
      
      @ 0, oOutLook:nWidth + 2 FOLDEREX aFolders[ 2 ] ;
         PROMPTS "Four", "Five", "Six" PIXEL ;
         OF oOutlook:oWnd SIZE oOutLook:oWnd:nWidth - oOutLook:nWidth - 18 , ;
            oOutLook:oWnd:nHeight  - oStatusBar:nHeight - 40
   
      @ 0, oOutLook:nWidth + 2 FOLDEREX aFolders[ 3 ] ;
         PROMPTS "Seven", "Eight", "Nine" PIXEL ;
         OF oOutlook:oWnd SIZE oOutLook:oWnd:nWidth - oOutLook:nWidth - 18 , ;
            oOutLook:oWnd:nHeight  - oStatusBar:nHeight - 40
   
   endif
   
   For x = 1 to Len( oOutLook:aDialogs ) - 1
       if x = oOutLook:nOption
          aFolders[ x ]:Show()
       else
          aFolders[ x ]:Hide()
       endif
   Next x
   
return nil  

//----------------------------------------------------------------------------//

Function ShowSubFolders( oOutLook )

   if Empty( aSubFolders )

      DbUseArea( .T., "DBFCDX", "CUSTOMER.DBF", "CUSTOMER", .T., .F.)
      AAdd( aBrws, nil )
      dbselectarea( "CUSTOMER" )     
      @ 1, 1 XBROWSE aBrws[ 1 ] OF aFolders[ 1 ]:aDialogs[ 1 ] ;
         DATASOURCE Alias() ;
         SIZE   aFolders[ 1 ]:aDialogs[ 1 ]:nWidth - 2, ;
              ( aFolders[ 1 ]:aDialogs[ 1 ]:nHeight / 2 ) + 20 PIXEL ;
         AUTOCOLS AUTOSORT CELL LINES NOBORDER
      aBrws[ 1 ]:CreateFromCode()
      
      aSubFolders := Array( Len( aFolders[ 1 ]:aDialogs ) )
      @ oOutLook:oWnd:nHeight/2, 4 FOLDEREX aSubFolders[ 1 ] ;
         PROMPTS "One-1", "Two-1", "Three-1" PIXEL ;
         OF aFolders[ 1 ]:aDialogs[ 1 ] ;
         SIZE oOutLook:oWnd:nWidth - oOutLook:nWidth - 30, ;
              oOutLook:oWnd:nHeight/2 - oStatusBar:nHeight - 70
              
     // 
      DbUseArea( .T., "DBFCDX", "FIVEDEMO.DBF", "FIVEDEMO", .T., .F.)
      AAdd( aBrws, nil )
      dbselectarea( "FIVEDEMO" )     
      @ 1, 1 XBROWSE aBrws[ 2 ] OF aSubFolders[ 1 ]:aDialogs[ 1 ] ;
         DATASOURCE Alias() ;
         SIZE   aSubFolders[ 1 ]:aDialogs[ 1 ]:nWidth - 2, ;
              ( aSubFolders[ 1 ]:aDialogs[ 1 ]:nHeight  ) - 10 PIXEL ;
         AUTOCOLS AUTOSORT CELL LINES NOBORDER
      aBrws[ 2 ]:CreateFromCode()     
   endif
   
Return nil

//----------------------------------------------------------------------------//

 

Re: TOutLook2003 con Folderex y Arrays no me funcionan bien HELP

Posted: Fri Jan 22, 2016 8:37 am
by AIDA
Hola

Como se llama el archivo del ejemplo?


Saluditos :wink: