Estoy ahora tratando de hacer una función en la que se inscriban acuerdo de empresas en libros de inscripciones. Muchos de vosotros ya conoceréis lo que es un tomo de libro inscripciones del Registro de la Propiedad, por ejemplo, pero en este caso se trata de empresas en la que se inscriben acuerdos (no es el Registro Mercantil).
Pues estoy trantado de hacer con un splitter y un otree ver la forma de cómo hacerlo. Veréis, cada tomo contiene 200 folios (tamaño un poco menor que un A3), por anverso y reverso, y de lo que se trata es de digitalizar lo que hay en papel y continuar con el pdf generado de los libro sy a partir de ahí hacer las inscripciones con el acrobat profesional. El otree más o menos lo tengo claro, pero me gustaría que se vería en la ventana de la derecha el pdf.
Aquí tenéis una composición de la de lo que sería la idea:
El código con el que he empezado el tema es este:
- Code: Select all Expand view
- #include "FiveWin.ch"
#include "Splitter.ch"
//----------------------------------------------------------------------------//
function Main()
local oWnd, oBar, oTree, oItem1, oItem2, oBmp1, oBmp2, oImageList, oSplit
DEFINE WINDOW oWnd FROM 3, 6 TO 20, 70 ;
TITLE "Libro de registro de empresas"
DEFINE BUTTONBAR oBar OF oWnd _3D
DEFINE BUTTON RESOURCE "open" OF oBar ACTION oTree:aItems[ 1 ]:Expand() ;
TOOLTIP "Expand" NOBORDER
DEFINE BUTTON RESOURCE "close" OF oBar ACTION oTree:aItems[ 1 ]:Collapse() ;
TOOLTIP "Colapse" NOBORDER
DEFINE BUTTON RESOURCE "open" OF oBar ACTION oTree:ExpandAll() ;
TOOLTIP "Expand all items" NOBORDER
DEFINE BUTTON RESOURCE "close" OF oBar ACTION oTree:ColapseAll() ;
TOOLTIP "Colapse all items" NOBORDER
DEFINE BUTTON RESOURCE "close" OF oBar ACTION oTree:GetSelected():SetText( Time() ) ;
TOOLTIP "Change Text" NOBORDER
oImageList = TImageList():New()
oBmp1 = TBitmap():Define( "folder",, oWnd )
oBmp2 = TBitmap():Define( "fldMask",, oWnd )
oImageList:Add( oBmp1, oBmp2 )
oTree = TTreeView():New( 2, 0, oWnd )
oTree:bChanged = { || oWnd:SetText( If( oTree:GetSelected():GetParent() != nil,;
oTree:GetSelected():GetParent():cPrompt + " + ", "" ) + ;
oTree:GetSelText() ) }
oTree:SetImageList( oImageList )
oItem1 = oTree:Add( "Tomo 1" )
oItem2 = oItem1:Add( "Folio 1" )
oItem2:Add( "Anverso" )
oItem2:Add( "Reverso" )
oItem2 = oTree:Add( "Tomo 2" )
oItem2 = oItem2:Add( "Folio 2" )
oItem2:Add( "Anverso" )
oItem2:Add( "Reverso" )
@ 29, 200 SPLITTER oSplit ;
VERTICAL _3DLOOK ;
PREVIOUS CONTROLS oTree ;
SIZE 4, 200 PIXEL ;
OF oWnd
ACTIVATE WINDOW oWnd ;
ON RESIZE oSplit:AdjClient()
oImageList:End()
oBmp1:End()
oBmp2:End()
return nil
//----------------------------------------------------------------------------//
procedure AppSys // Xbase++ requirement
return
//----------------------------------------------------------------------------//