Page 1 of 1

Pequeña aportacion TBarBRW()

PostPosted: Sun Nov 21, 2010 2:28 am
by jll-fwh
Hola a todos:

Normalmente por intentar hacer las aplicaciones lo mas rapido posible, copiamos de programas viejos codigo fuente lo modificamos y lo acoplamos al nuevo modulo, sabiendo que tenemos duplicadas funciones que al fin y al cabo hacen lo mismo, al menos a mi me pasa, como por ejemplo: procedimientos que manejan Browses y tengo una funcion que ircorpora una barra de botones para manejar dicho Browse. Pues en el caso, de tener 15 procedimientos, pues tengo, 15 funciones que al final hacen lo mismo. MAL, pero asi lo tengo.

Pues estoy creando nuevas clases para intentar ahorrar el maximo posible de codigo fuente y a su vez que sea lo mas claro y conciso posible.

La clase TBarBRW no es una clase nueva, ni nada en especial, pero para mi es muy util, ya que embebe una barra de botones automaticamente en los Browse con tal solo una linea de codigo.

Ademas de las propiedades nativas, le podemos indicar la situacion donde queremos que se cree ya sea, arriba, abajo, izquierda, derecha, estilo office 2007, 3D, Groups, menu popup, etc ( leer la pequeña ayuda que esta en el fuente del programa ). No he creado ningun ejemplo, porque simplemente tenemos que crear el objeto y automaticamente se creara con dichas propiedades. Abajo he dejado unas imagenes de como queda en funcion de los parametros que le damos cuando la creamos.

Para crear el objeto por ejemplo podemos hacerlo asi: ( esto crearia lo que vemos en la imagen-1): En el fuente teneis algunos detalles de uso mas concretos, como por ejemplo, uso de la propiedad Toogle(), menu popus, etc.

El crearla es simple y llanamente porque para mi es de mucha utilidad, que con esta linea de codigo fuente, he incrustado una barra de botones y me olvido totalmente de ella, si por ejemplo, modifico el recurso y subo o bajo el Browse, no tengo que tocar nada, cuando ejecuto la clase, ella ya localizara las posiciones del Browse y incrustara la barra donde debe.

Aqui os dejo el fuente de la clase:
http://www.proyectos-meliana.es/basura/tBarBRW.zip

Code: Select all  Expand view

    oBar := TBarBRW():New( oDlg                             ,; // Objeto Dialog/Window
                           oGrid                            ,; // Objeto xBrowse
                           "TOP"                            ,; // Situacion de la barra
                           { "vMenu_Nuevo"                  ,; // BMP para el 1 boton
                             "vMenu_Modificar"              ,; // BMP para el 2 boton
                             "vMenu_Consultar"              ,; // BMP para el 3 boton
                             "vMenu_Anular"                 ,; // BMP para el 4 boton
                             "vMenu_Excel"                  ,; // BMP para el 5 boton
                             "vMenu_Imprimir"}              ,; // BMP para el 6 boton
                           { "Nuevo"                        ,; // ToolTip para el 1 boton
                             "Modificar"                    ,; // ToolTip para el 2 boton
                             "Consultar"                    ,; // ToolTip para el 3 boton
                             "Anular"                       ,; // ToolTip para el 4 boton
                             "Excel"                        ,; // ToolTip para el 5 boton
                             "Imprimir"                    },; // ToolTip para el 6 boton
                           { { |  MsgInfo( "Nuevo")        },; // ACTION para el 1 boton
                             { || MsgInfo( "Modificar")    },; // ACTION para el 2 boton
                             { || MsgInfo( "Consultar")    },; // ACTION para el 3 boton
                             { || MsgInfo( "Anular")       },; // ACTION para el 4 boton
                             { || MsgInfo( "Excel")        },; // ACTION para el 5 boton
                             { || MsgInfo( "Imprimir")    }},; // ACTION para el 6 boton
                           { .F., .F., .F., .F., .F., .F.  },; // GROUP para cada Boton
                           .F.,;                               // Si crea la barra en 2007
                           .T. )                               // Si crea la en 3D
 


Barra de botones en la parte superior.
Image

Barra de botones en la parte inferior.
Image

Barra de botones en la parte izquierda.
Image

Barra de botones en la parte derecha.
Image

Barra de botones en la parte superior con GROUPs
Image

Barra de botones en la parte superior con propiedad Toggle()
Image

Barra de botones en la parte superior con menu popup.
Image

Barra de botones en la parte superior estilo Office 2007
Image

P.D Esta tarde despues de crear esta clase, he modificado la clase TPreview(), ya que no encontrado nada al respecto sobre nuevas modificaciones de esta clase. De momento he modificado/añadido lo siguiente:

- Mayor tamaño en los botones.
- ComboBox en la barra de botones para poder seleccionar las impresoras que se disponen en el sistema.
- Get ( ir a: ) en la barra de botones para poder indicarle a que pagina queremos ir.
- Un nuevo boton para la creacion de PDF, usando la DLL ImagePDF.
- Modificacion de Say que indica el numero de paginas/pagina actual que en ocasiones no se visualizaba.
- Modificacion del cursor Lupa.

A ver si tengo tiempo y le añado un monton de cosas que tengo pensadas que creo que seria interesante y si ha alguien le interesan estas modificaciones, publicare los fuentes tambien.

Imagen de las moficiaciones:
Image

Espero que os sea de utilidad.

Un saludo
JLL

Re: Pequeña aportacion TBarBRW()

PostPosted: Sun Nov 21, 2010 11:39 am
by Ruben Fernandez
JLL: muy buenas las 2 . Excelentes.

Saludos
Ruben Fernandez

Re: Pequeña aportacion TBarBRW()

PostPosted: Sun Nov 21, 2010 2:14 pm
by jllinas
JLL,

Muy buenos ambos. Me interesan los fuentes de ese Preview. Se ve bien.

Abrazos,

Re: Pequeña aportacion TBarBRW()

PostPosted: Sun Nov 21, 2010 7:26 pm
by QAZWSX2K
SENCILLAMENTE EXCELENTE, me pasa los mismo, copy y pega los mismo en varios prg, etc, hoy mismo la pruebo, pero no ve donde bajar el preview

Re: Pequeña aportacion TBarBRW()

PostPosted: Sun Nov 21, 2010 8:10 pm
by jll-fwh
Gracias a todos.

Si pensais que se puede aplicar algo mas en la clase TBarBRW() hacermelo saber.

Sobre las modificaciones de la clase TPreview(), dejarme unos dias que acabe un trabajo y la subire, ya que quiero darle algunas vueltas a ver que mas se puede añadir a esta clase que nos sea practico.

Si teneis algo pensado, hacermelo saber y lo aplicare.

Un saludo
JLL

Re: Pequeña aportacion TBarBRW()

PostPosted: Mon Jun 03, 2013 11:24 am
by joseluispalma
Hola:

Por favor, ¿tienes un ejemplo completo de ella?.

No consigo hacerla funcionar.

Saludos

Re: Pequeña aportacion TBarBRW()

PostPosted: Fri Oct 27, 2023 5:34 pm
by karinha
+1

No consigo hacerla funcionar

Regards, saludos.

Re: Pequeña aportacion TBarBRW()

PostPosted: Fri Oct 27, 2023 5:51 pm
by Antonio Linares
Muchas gracias por compartirlo

Las imágenes del primer mensaje no se ven, podrias revisar el mensaje ? gracias

Re: Pequeña aportacion TBarBRW()

PostPosted: Fri Oct 27, 2023 7:59 pm
by sysctrl2
Suena bien,
pero podrías colocar las images?
no se ven,
un test para compilar y probar
saludos

Re: Pequeña aportacion TBarBRW()

PostPosted: Sun Oct 29, 2023 8:00 pm
by jvtecheto
Antonio Linares wrote:Muchas gracias por compartirlo

Las imágenes del primer mensaje no se ven, podrias revisar el mensaje ? gracias
Hola tengo el móvil de Javier Lloris(es Valenciano como yo [emoji846]) , el creador de la lib, voy a decirle si las puede poner, ya que veo que no se conecta a los foros últimamente.

Jose

Enviado desde mi Lenovo TB-J606F mediante Tapatalk

Re: Pequeña aportacion TBarBRW()

PostPosted: Sat Nov 04, 2023 2:17 pm
by jvtecheto
Me ha contestado Javier Lloris y en breve, cuando pueda volverá al foro.

Saludos

Jose.

Enviado desde mi POCOPHONE F1 mediante Tapatalk