Difference between revisions of "MultiDoc/es"

From Free Pascal wiki
Jump to navigationJump to search
Line 24: Line 24:
 
   
 
   
 
===Descarga===
 
===Descarga===
El componente, en su versión 0.1 y 0.2, y un programa de demostración lo puede encontrar en [http://sourceforge.net/project/showfiles.php?group_id=92177&package_id=176905 Lazarus-CCR sourceforge site].
+
El componente, en su versión 0.1 y 0.2, y un programa de demostración lo puede encontrar en [http://sourceforge.net/project/showfiles.php?group_id=92177&package_id=176905 Lazarus-CCR sourceforge].
  
 
El componente en su versión 0.3 y 0.3.1 puede encontrarlo en [http://br.geocities.com/hipernetjr/lmdi/index.html aquí].
 
El componente en su versión 0.3 y 0.3.1 puede encontrarlo en [http://br.geocities.com/hipernetjr/lmdi/index.html aquí].

Revision as of 19:59, 5 February 2009

Deutsch (de) English (en) español (es) português (pt)

Acerca de...

MultiDoc es un componente de Lazarus que sustituye al habitual interfaz MDI.

Este componente permite escribir aplicaciones pseudo-MDI con Lazarus. No es una verdadera implementación del interfaz MDI, pero dará a su aplicación la capacidad de utilizar varios formularios hijos redimensionables.

Hay dos componentes:

  • TMultiDoc : la zona de acople del formulario principal.
  • TChildDoc : el contenedor hijo con borde y botón redimensionables.

Fueron creados pensando en un software gráfico, pero probablemente sean útiles para una amplia gama de aplicaciones.

Captura de pantalla

Multidoc demo.png

Autor

Patrick Chevalley

Licencia

LGPL

Descarga

El componente, en su versión 0.1 y 0.2, y un programa de demostración lo puede encontrar en Lazarus-CCR sourceforge.

El componente en su versión 0.3 y 0.3.1 puede encontrarlo en aquí.

Próximamente uniré los paquetes MultiDoc y LMDI y estarán disponibles en SourceForge.net

Cambios habidos

  • Versión 0.1 2006/01/20 Primer lanzamiento beta.

Dependencias / Requerimientos del sistema

Este componente deriva exclusivamente de un componente habitual de alto nivel (TPanel, TCustomSplitter, TSpeedButton). Puede funcionar en todas las plataformas de Lazarus sin realizar cambios.

Probado en Linux y Windows.

Notas

No está limitado a mostrar la zona de acople en todo el formulario principal. Puede situar TMultiDoc donde quiera o ¡usar uno múltiple!. Una combinación con un TNotebook puede producir algo parecido a un escritorio múltiple.

Instalación

  • Compile e instale multidocpackage.lpk
  • Abra el ejemplo demo/demomultidoc.lpi

Este ejemplo lo puede utilizar como base para una nueva aplicación.

Utilización

En tiempo de diseño:

  • Sitúe un TMultiDoc en el formulario principal de la aplicación.
  • Cree un formulario hijo con un TPanel principal.
  • Ponga todos los objetos que quiera para el formulario hijo en el panel, escriba eventos, etc...
  • No cuente con algún evento de TForm, pues este formulario no se mostrará nunca.

En tiempo de ejecución:

  • Cree un nuevo formulario hijo de TMultiDoc.NewChild
  • Cree un formulario hijo con el nuevo documento hijo como propietario.
  • Asigne el panel principal a la propiedad Dockedpanel.


Convertir una aplicación MDI de Delphi

La conversión de una aplicación MDI se ha simplificado con la disponibilidad del mismo componente para Delphi y Kylix.

Convierta primero su aplicación a MultiDoc en Delphi, después conviértala a Lazarus. Esto necesita algún esfuerzo pero evita el antiéstetico borde de XP alrededor de los formularios hijos.

Sustituya la función habitual MDI de la siguiente forma:

  MDIChildCount   -> MultiDoc1.ChildCount
  ActiveMdiChild  -> MultiDoc1.ActiveObject
                  o MultiDoc1.ActiveChild
  MDIChildren[i]  -> MultiDoc1.Childs[i].DockedObject
                  o MultiDoc1.Childs[i]

El componente de Delphi está incluido en el paquete. Descomprima multidoc-delphi.zip e instale MultiDocD6.dpk o MultiDocK3.dpk.