Pequeña aportacion TBarBRW()

Post Reply
User avatar
jll-fwh
Posts: 385
Joined: Fri Jan 29, 2010 8:14 pm
Location: Meliana - Valencia
Contact:

Pequeña aportacion TBarBRW()

Post 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

    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
Libreria: FWH/FWH1109 + Harbour 3.1.1 + Borland C++ 5.8.2
Editor de Recursos: PellecC
ADA + OURXDBU -
S.O: XP / Win 7
Blog: http://javierlloris.blogspot.com.es/
e-mail: jllorispersonal@gmail.com
Ruben Fernandez
Posts: 366
Joined: Wed Aug 30, 2006 5:25 pm
Location: Uruguay

Re: Pequeña aportacion TBarBRW()

Post by Ruben Fernandez »

JLL: muy buenas las 2 . Excelentes.

Saludos
Ruben Fernandez
Gracias y Saludos
Ruben Fernandez - Uruguay
FWH 11.06, Harbour, Borland 5.82
User avatar
jllinas
Posts: 189
Joined: Fri Oct 14, 2005 12:33 am
Location: Santo Domingo, Dominican Republic
Contact:

Re: Pequeña aportacion TBarBRW()

Post by jllinas »

JLL,

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

Abrazos,
Julio Llinás
Visita mi Blog en http://mangucybernetico.blogspot.com/
xHarbour 1.1.0 + FWH810 + Borland 5.5.1
User avatar
QAZWSX2K
Posts: 359
Joined: Tue Oct 25, 2005 7:06 pm
Location: Bogota - Caracas

Re: Pequeña aportacion TBarBRW()

Post 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
Software especializado para oficinas contables con grandes volumenes de Informacion
Impresion de todos los formularios del Seniat, Dian

alex_patino74@hotmail.com
whatsapp 57+3214777217
User avatar
jll-fwh
Posts: 385
Joined: Fri Jan 29, 2010 8:14 pm
Location: Meliana - Valencia
Contact:

Re: Pequeña aportacion TBarBRW()

Post 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
Libreria: FWH/FWH1109 + Harbour 3.1.1 + Borland C++ 5.8.2
Editor de Recursos: PellecC
ADA + OURXDBU -
S.O: XP / Win 7
Blog: http://javierlloris.blogspot.com.es/
e-mail: jllorispersonal@gmail.com
joseluispalma
Posts: 93
Joined: Mon Apr 30, 2012 9:10 am

Re: Pequeña aportacion TBarBRW()

Post by joseluispalma »

Hola:

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

No consigo hacerla funcionar.

Saludos
Post Reply