FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour ribbon+oPanel+Xbrowse+TASKPANEL
Posts: 537
Joined: Mon Jan 16, 2006 03:42 PM
ribbon+oPanel+Xbrowse+TASKPANEL
Posted: Mon Dec 01, 2014 01:27 PM

Amigo estoy usando este codigo pero al mostrar el xbrowse se queda pegado
no hace nada:

FUNCTION WINGES01()

LOCAL oBrow
LOCAL oDlg, oLbx
LOCAL oFnt
LOCAL nW, nH

LOCAL cPersonalca:=Space(60)
LOCAL oGet
LOCAL cVar, oCbx, cHelp,oCbx1
LOCAL oBar, oPop, oIcon, cTit
LOCAL oBtn, aX[6], aIdx:={},oCol
Local oWnd,oPanel

aIdx:={"por Codigo","por Nombre"}
cTit:="Datos de las Personales"

oPanel := TPanel():New( 0, 0, 0, 0, oVentPrinc)
oPanel:Hide()

if oVentPrinc:oClient <> NIL
    oVentPrinc:oClient:Hide()
    oVentPrinc:oClient := nil
endif

oVentPrinc:oClient := oPanel

cPersonal:=XServer:Query("SELECT * FROM personal ORDER BY cod_personal")
cPersonal:GoTop()

@ 0, 0 XBROWSE oLbx FIELDS cPersonal:Cod_personal,cPersonal:Nom_Personal,cPersonal:Rut_Personal,cPersonal:Dir_Personal,cPersonal:Ciu_Personal,cPersonal:Car_Personal,cPersonal:Com_Personal;
HEADERS "Codigo","Nombre","R.U.T.","Direccion","Ciudad","Cargo","Comision" ;
FIELDSIZES 80,250,90,200,150,150,50;
OF oPanel //WChld

SetDolphin( oLbx, cPersonal,.f. )

oLbx:bLDblClick          := { |nRow,nCol,nKeyFlags|(GetPersonal(.F.,oLbx),oLbx:Refresh())}
oLbx:nMarqueeStyle       := MARQSTYLE_HIGHLROW
oLbx:nColDividerStyle    := LINESTYLE_RAISED
oLbx:nRowDividerStyle    := LINESTYLE_RAISED
oLbx:bClrSelFocus        := {|| { CLR_WHITE, RGB(24, 116, 205) } }
oLbx:lColDividerComplete := .t.
oLbx:nHeaderLines        := 1
oLbx:lRecordSelector     := .t.
oLbx:lAllowRowSizing     := .F.
oLbx:l2007 := .T.
oLbx:CreateFromCode()
oLbx:nRowHeight          := 19

*/

    oVentPrinc:Resize()
oPanel:Resize()
oPanel:Show()

RETURN .t.

Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Re: ribbon+oPanel+Xbrowse
Posted: Tue Dec 02, 2014 07:17 AM

Tienes un ribbonbar arriba, y abajo un panel y encima del panel un xbrowse.

Es eso todo lo que hay en la pantalla ?

Para que necesitas el panel ahi ?

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 537
Joined: Mon Jan 16, 2006 03:42 PM
Re: ribbon+oPanel+Xbrowse
Posted: Wed Dec 03, 2014 01:47 PM

Gracias antonio por responderme, resulta q no puse todo el codigo aca va:
cPersonal:=XServer:Query("SELECT * FROM personal ORDER BY cod_personal")
cPersonal:GoTop()

@ 0, 0 XBROWSE oLbx FIELDS cPersonal:Cod_personal,cPersonal:Nom_Personal,cPersonal:Rut_Personal,cPersonal:Dir_Personal,cPersonal:Ciu_Personal,cPersonal:Car_Personal,cPersonal:Com_Personal;
HEADERS "Codigo","Nombre","R.U.T.","Direccion","Ciudad","Cargo","Comision" ;
FIELDSIZES 80,250,90,200,150,150,50;
OF oPanel //WChld

SetDolphin( oLbx, cPersonal,.f. )

oLbx:bLDblClick          := { |nRow,nCol,nKeyFlags|(GetPersonal(.F.,oLbx),oLbx:Refresh())}
oLbx:nMarqueeStyle       := MARQSTYLE_HIGHLROW
oLbx:nColDividerStyle    := LINESTYLE_RAISED
oLbx:nRowDividerStyle    := LINESTYLE_RAISED
oLbx:bClrSelFocus        := {|| { CLR_WHITE, RGB(24, 116, 205) } }
oLbx:lColDividerComplete := .t.
oLbx:nHeaderLines        := 1
oLbx:lRecordSelector     := .t.
oLbx:lAllowRowSizing     := .F.
oLbx:l2007 := .T.
oLbx:CreateFromCode()
oLbx:nRowHeight          := 19


oPanel:oClient := oLbx

if oVentPrinc:oClient <> NIL
    oVentPrinc:oClient:Hide()
    oVentPrinc:oClient := nil
endif

oVentPrinc:oClient := oPanel

DEFINE TASKPANEL oBar OF oPanel ANCHOR LEFT;
THEME "#CUSTOM";
HEADER "LOGO"
TASKGROUP "Personal" BITMAP "personal" SPECIAL WATERMARK "WATERMARK"
TASKITEM "Nuevo Personal" BITMAP "BAR_NEW" ACTION GetPersonal(.T.,oLbx) TOOLTIP "Insertar Nuevo Personal"
TASKITEM "Modificar Personal" BITMAP "BAR_MOD" ACTION GetPersonal(.f.,oLbx) TOOLTIP "Modificar Personal"
TASKITEM "Eliminar Personal" BITMAP "BAR_DEL" ACTION DelPersonal(oLbx ) TOOLTIP "Eliminar Personal"
TASKITEM "Salir" BITMAP "cancelar" ACTION ( cPersonal:End(),oWChld:End() ) //NIL )

     ENDTASKGROUP
   TASKGROUP  "Detalles" NO COLLAPSABLE
        TASKITEM "<b>SOFTCONTROL</b>" + ;
                 "<p>Software de Control y Gestion</p>"+;
                 "<p><b>Autor</b></p>" +;
                 "<p>Jose Briceño Tapia</p>" INFO
     ENDTASKGROUP

    ENDTASKPANEL



    oVentPrinc:Resize()
oPanel:Resize()
oPanel:Show()

RETURN .T.

quiero que la TASKPANEL se vaya a la izquierda y el browse a la derecha, esto me muestra todo bien pero se queda pegado.

saludos

Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Re: ribbon+oPanel+Xbrowse+TASKPANEL
Posted: Wed Dec 03, 2014 04:22 PM
Jose,

En FWH\samples\re.prg tienes un ejemplo de cómo hacerlo. Aqui te muestro una imagen:



la forma de construirlo la encuentras en la función OpenRCFile. Basicamente lo que se hace es usar un splitter, por lo que no tienes que usar un oPanel para nada.

Se crea el control de la izquierda. En re.prg:

oTree = TTreeView():New( 2, 0, oWndRC )

Se crea el control de la derecha:

@ 0, 25.7 GET oMemo VAR cItemText MEMO OF oWndRC SIZE 300, 100

Y finalmente el splitter que controlará a ambos y se le envia el mensaje de ajustar el area de ambos controles:

Code (fw): Select all Collapse
   @ 0, 200 SPLITTER oSplit ;
      VERTICAL _3DLOOK ;
      PREVIOUS CONTROLS oTree ;
      HINDS CONTROLS oMemo ; 
      SIZE 4, 200 PIXEL ;
      OF oWndRC
      
   oSplit:AdjClient()


Esto es importante:
Code (fw): Select all Collapse
   ACTIVATE WINDOW oWndRC ;
      ON RESIZE oSplit:AdjClient()
regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion