Jump to content
Fivewin Brasil

Exemplo do XBROWSE com uso :lSeekBar true


Jmsilva

Recommended Posts

oBrw:lSeekBar         := .t.
oBrw:bClrEdits        := {|| {CLR_HRED,CLR_YELLOW}}

Olá, alguém já se aventurou a testar o "lseekbar", pesquisa da coluna. No meu teste ele ativa mas não permitea digitação no get e nem ativa o cursor!

Se alguém tiver algum exemplo bacana e puder compartilhar!

 

 

Link to comment
Share on other sites

Mira se és esto que deseas.

// \SAMPLES\REMTEC.PRG - Modificado en: 30/01/2020 - kapiabafwh@gmail.com
	#include "FiveWin.ch"
#include "xbrowse.ch"
	ANNOUNCE RDDSYS
REQUEST DBFCDX, DBFFPT
	FUNCTION Medicos()
	   RDDSETDEFAULT( "DBFCDX" )
	   SET CENTURY ON
   SET DATE BRITISH
   SET TIME FORMAT TO "HH:MM:SS"
   SET EPOCH TO YEAR( DATE() ) - 30
   SET SOFTSEEK OFF
   SET WRAP ON
   SETCANCEL( .F. )
   SET CONFIRM OFF
   SET DELETED ON
   SET ESCAPE OFF
   SET EXACT ON
   SET EXCLUSIVE OFF
   SET MULTIPLE OFF
	   Activa_Profe() // crea los indices en memoria ram, super rapido.
	RETURN NIL
	FUNCTION Activa_Profe()
	   LOCAL oDlg1, oBrw, oFont, oFont1, oFont2, oFont3, oFont7, oTitu1, oTitu2, ;
         aStruc, oSay1, oSay2, oGet1, oTitu3
   LOCAL nPro := 1,  aEstado := {}, Estado1 := ""
	   AADD( aEstado, { "TODOS        " } )
   AADD( aEstado, { "SOLO VIGENTES" } )
   AADD( aEstado, { "DESACTIVADOS " } )
   AADD( aEstado, { "SOLO AGENDA  " } )
	   USE PROFESIO NEW SHARED ALIAS PROFE
   GO TOP
	   DEFINE FONT oFont  NAME "TAHOMA" SIZE 0, - 14
   DEFINE FONT oFont1 NAME 'TAHOMA' SIZE 0,   24 BOLD
   DEFINE FONT oFont2 NAME "TAHOMA" SIZE 0, - 12 BOLD
   DEFINE FONT oFont3 NAME 'TAHOMA' SIZE 0,   18 BOLD
   DEFINE FONT oFont7 NAME "TAHOMA" SIZE 0, - 14 BOLD
	   DEFINE DIALOG oDlg1 SIZE 570, 570 PIXEL FONT oFont3                       ;
          STYLE nOr( WS_POPUP, WS_VISIBLE, WS_DLGFRAME )
	   @ 00, 35  SAY otitu1 PROMPT " MAESTRO DE PROFESIONALES " PIXEL OF oDlg1   ;
      COLORS RGB( 12, 135, 27 )   FONT oFont1
	   @ 016, 103 SAY "Seleccione" SIZE 80, 10 PIXEL OF oDlg1 RIGHT FONT oFont1
	   @ 016, 190 ComboBox oGet1 Var nPro Items ArrTranspose( aEstado )[1]       ;
      SIZE 70, 200 PIXEL OF oDlg1  FONT oFont2 ;
      ON CHANGE ( ( Estado1 := ArrTranspose(aEstado )[1][oGet1:nAt] ),       ;
         IF( !Filtra_Pro(@nPro,oBrw ),(MsgStop("TODO BIEN" ),                ;
            oBrw:Setfocus(), .F. ), (oBrw:Refresh(),oBrw:Setfocus(), .T. ) ) )
	   @ 30, 10 XBROWSE oBrw SIZE 300, - 35 PIXEL OF oDlg1 DATASOURCE "Profe"    ;
      HEADERS 'Nombre del Profesional', 'Especialidad', 'Vigencia', 'Agenda' ;
      COLUMNS 'Nom_Pro', 'Tip_Esp', 'Est_Pro', 'Ate_Hor'                     ;
      PICTURES "@!", "@!" , "!", "!"                                         ;
      COLSIZES 180, 150, 120, 70                                             ;
      CELL LINES AUTOSORT NOBORDER
	   WITH OBJECT oBrw
      :nMarqueeStyle  := MARQSTYLE_HIGHLROW
      :bClrHeader     := {|| { nRGB( 140, 0, 0 ), nRGB( 231, 242, 255 ), } }
      :nHeaderHeight  := 35
      :nFreeze        := 2
      :lSeekBar       := .T.
      :lIncrFilter    := .F.
      :lSeekWild      := .T.
      :lFooter  := .F.
      :lHScroll := .F.
	      :nOpacity       := 230
      :SetStyle( 2018 )
      :nColorPen      := CLR_RED
	      :aCols[1]:oDataFont     := oFont7
      :aCols[1]:bClrHeader    := { || { CLR_HRED,CLR_WHITE } } // Aplico Color a Una Columna
      :aCols[1]:oHeaderFont   :=  oFont7                       // Aplico Font a una Columna
      :aCols[3]:nDataStrAlign := AL_CENTER
      :aCols[4]:nDataStrAlign := AL_CENTER
	      :CreateFromCode()
   END
	   @ 253, 90 BTNBMP SIZE 30, 30 PROMPT "SALIR"  OF oDlg1 PIXEL 2007  ;
      FONT oFont7 ToolTip  "SALIR DEL SISTEMA" ACTION oDlg1:End()
	   ACTIVATE DIALOG oDlg1 CENTERED  ON INIT ( oBrw:SetFocus() )
	   RELEASE FONT oFont, oFont1, oFont2, oFont3, oFont7
	   CLOSE
	RETURN nil
	//-> Para Cambiar Filtro del Combobox.
FUNCTION Filtra_Pro( nP, oBrw )
	   SELE Profe // USANDO COMANDO MEMORY/TEMPORARY - MUI BUENO E FACIL.
	   DO CASE
   CASE nP >= 1 .AND. nP <= 3
	      DO CASE
      CASE nP == 1     // TODOS
	         INDEX ON FIELD->Nom_Pro TAG MED2 TO ARCHTEMP MEMORY
	      CASE nP == 2     // SOLO VIGENTES
	         INDEX ON FIELD->Est_Pro + FIELD->Nom_Pro TAG Med3 TO ARCHTEMP ;
            FOR FIELD->Est_Pro = "S" MEMORY
	      CASE nP == 3     // DESACTIVADOS
	         INDEX ON FIELD->Ate_Hor + FIELD->Nom_Pro TAG Med4 TO ARCHTEMP ;
            FOR FIELD->Ate_Hor = "N" MEMORY
	      ENDCASE
	      OTHERWISE        // SOLO AGENDA
	      INDEX ON FIELD->Ate_Hor + FIELD->Nom_Pro TAG Med5 TO ARCHTEMP    ;
         FOR FIELD->Ate_Hor = "S" MEMORY
	   ENDCASE
	   GO TOP
	   oBrw:Refresh()
	RETURN  .T.
// FIN

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...