FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Entorno MDI y ExplBar
Posts: 174
Joined: Wed Nov 29, 2017 11:42 AM

Entorno MDI y ExplBar

Posted: Sun Dec 24, 2017 04:24 PM
Resulta que empezando la aplicación, usando entorno MDI, me atranco con un problema, y no pequeño.

Defino la WINDOW principal como MDI y las demás MDICHILD... hasta ahí correcto.
El tema que me deja atorado, es que en la ventana principal, si tengo algun control como por jemplo una ExplBar, esa no está "habilitada" no se puede utilizar, es como si se dehabilitaran los controles (también los Buttons y no he probado, pero igual los GETs/EDITs) al estar en MDI.
No así las BUTTONBAR... esas si estan "operativas"

Y... otra cosa añadida, si se crea una ventana hija y se arrastra por la ventana, el contenido en ella es "eliminado" - "borrado", como si pasaras una goma por donde se pasea la ventana hija. (arrastrar la ventana por encima de la ExplBar y vereis que la va borrando por donde se situa la ventana hija)

Alguna razón???
Algo que se me pase y deba de corregir???

Gracias, y Felices Fiestas.

aquí el código.
Code (fw): Select all Collapse
#include "FiveWin.ch"

static oWnd

function Main()

   local oBar

   DEFINE WINDOW oWnd MDI

   DEFINE BUTTONBAR oBar OF oWnd 2007 SIZE 50, 50 

   DEFINE BUTTON OF oBar ACTION VentanaHija()

   DEFINE MSGBAR OF oWnd PROMPT "Ejemplo MDI" 2007

   WITH OBJECT TExplorerBar():New( oBar:nHeight, 0, 325, oWnd:nHeight -70, oWnd )
   :AddPanel( "PANEL 1 'primero'" )
   :AddPanel( "PANEL 2 'segundo'" )
   END WITH


   ACTIVATE WINDOW oWnd

return nil

function VentanaHija()

   local oWndChild, oFolder

   DEFINE WINDOW oWndChild MDICHILD OF oWnd FROM 0, 50 TO 20, 40

   @ 0, 0 FOLDER oFolder OF oWndChild

   oWndChild:oClient = oFolder

   ACTIVATE WINDOW oWndChild

return nil
Un Saludo,

Xevi.



Aprendiz de la vida!!!
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM

Re: Entorno MDI y ExplBar

Posted: Tue Dec 26, 2017 10:33 AM
Xevi,

Code (fw): Select all Collapse
#include "FiveWin.ch"

static oWnd

function Main()

   local oBar, oExplBar

   DEFINE WINDOW oWnd MDI

   DEFINE BUTTONBAR oBar OF oWnd 2007 SIZE 50, 50 

   DEFINE BUTTON OF oBar ACTION VentanaHija()

   DEFINE MSGBAR OF oWnd PROMPT "Ejemplo MDI" 2007

   WITH OBJECT oExplBar := TExplorerBar():New( 0, 0, 250, oWnd:oWndClient:nHeight, oWnd )
      :AddPanel( "PANEL 1 'primero'" )
      :AddPanel( "PANEL 2 'segundo'" )
   END WITH

   oWnd:oLeft = oExplBar

   ACTIVATE WINDOW oWnd

return nil

function VentanaHija()

   local oWndChild, oFolder

   DEFINE WINDOW oWndChild MDICHILD OF oWnd FROM 0, 50 TO 20, 40

   @ 0, 0 FOLDER oFolder OF oWndChild

   oWndChild:oClient = oFolder

   ACTIVATE WINDOW oWndChild

return nil


regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 174
Joined: Wed Nov 29, 2017 11:42 AM

Re: Entorno MDI y ExplBar

Posted: Tue Dec 26, 2017 05:30 PM

Antonio, entiendo pues que se debe "anclar" la ExplBar para que forme parte "fija" de la ventana principal.

Entonces, para poner algun botón o demás control, debo crear un panel, por ejemplo y anclarlo a la ventana y en ese panel, colocar los controles que desee ver e interauctuar en esa ventana.

Un Saludo,

Xevi.



Aprendiz de la vida!!!
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM

Re: Entorno MDI y ExplBar

Posted: Tue Dec 26, 2017 06:15 PM

Si, así es :-)

Revisa también los ejemplos FWH\samples\layout...prg que es otra forma más poderosa aún de reorganización de los controles dentro de las ventanas

regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion