Sign in Join
Wiki copytemporary

MultiDoc/es: what changed

Revision 2 to 3. Removed lines have a minus sign; added lines have a plus sign.

OldNewLine
11### Acerca de...
22
33MultiDoc es un componente de Lazarus que sustituye al habitual interfaz MDI.
44
55Este 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.
66
77Hay dos componentes:
88
99- TMultiDoc : la zona de acople del formulario principal.
1010- TChildDoc : el contenedor hijo con borde y botón redimensionables.
1111
1212Fueron creados pensando en un [software gráfico](/wiki-images/3/3c/Media%3AMultidoc_skychart.jpg), pero probablemente sean útiles para una amplia gama de aplicaciones.
1313
1414### Captura de pantalla
1515
1616![](/wiki-images/b/b6/Multidoc_demo.png)
1717
1818### Autor
1919
2020Patrick Chevalley
2121
2222### Licencia
2323
2424LGPL modificada, vea el fichero readme.txt
2525
2626### Descarga
2727
2828El componente, en su versión 0.1 y 0.2, y un programa de demostración lo puede encontrar en [Lazarus-CCR sourceforge](http://sourceforge.net/project/showfiles.php?group_id=92177&package_id=176905).
2929
3030El componente en su versión 0.3 y 0.3.1 puede encontrarlo en [aquí](http://br.geocities.com/hipernetjr/lmdi/index.html).
3131
3232Próximamente uniré los paquetes MultiDoc y [[LMDI]] y estarán disponibles en SourceForge.net
3333
3434### Cambios habidos
3535
3636- Versión 0.3.1 2008/01/01 Repara lo siguiente:
3737 1. Movidas a la sección pública algunas propiedades, para permitir excepciones en tiempo de diseño
3838- Version 0.3 2007/12/31 Repara lo siguiente:
3939 1. Esta versión ha sido desarrollada por Júnior Gonçalves y depende del paquete [[LMDI]]
4040 2. A traves de {\$IFDEF}'s el componente compila en Lazarus/Delphi sin cambios
4141 3. Gran cambio. Ahora el ratón no "escapa" cuando el cursor esta pulsado (Testeado en GTK2 (Windows) y Windows XP)
4242 4. ChildDoc deriva ahora de TFormPanel (ver [[LMDI]])
4343 5. No es necesario código para dar el foco al formulario hijo
4444 6. Es posible cambiar la "piel" de la barra de título, de acuerdo al sistema operativo (ver el componente TTitleBar)
4545- Version 0.2 2007/01/06 Repara lo siguiente:
4646 1. La propiedad BorderWidth no funciona
4747 2. Error en el orden de los botones
4848 3. Centra el cursor en la barra de título al mover el panel
4949 4. Compatibilidad con Gtk2 y FPC 2.1.1
5050 5. Error al cerrar el hijo usando el botón cerrar
5151 6. Cambio de la licencia LGPL
5252- Version 0.1 2006/01/20 Primera beta liberada
5353
5454### Dependencias / Requerimientos del sistema
5555
5656Este componente deriva exclusivamente de un componente habitual de alto nivel (TPanel, TCustomSplitter, TSpeedButton). Puede funcionar en todas las plataformas de Lazarus sin realizar cambios.
5757
5858Probado en Linux y Windows.
5959
6060### Notas
6161
6262No 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.
6363
6464### Instalación
6565
6666- Compile e instale multidocpackage.lpk
6767- Abra el ejemplo demo/demomultidoc.lpi
6868
6969Este ejemplo lo puede utilizar como base para una nueva aplicación.
7070
7171### Utilización
7272
7373En tiempo de diseño:
7474
7575- Sitúe un TMultiDoc en el formulario principal de la aplicación.
7676- Cree un formulario hijo con un TPanel principal.
7777- Ponga todos los objetos que quiera para el formulario hijo en el panel, escriba eventos, etc...
7878- No cuente con algún evento de TForm, pues este formulario no se mostrará nunca.
7979
8080En tiempo de ejecución:
8181
8282- Cree un nuevo formulario hijo de TMultiDoc.NewChild
8383- Cree un formulario hijo con el nuevo documento hijo como propietario.
8484- Asigne el panel principal a la propiedad Dockedpanel.
8585
8686### Convertir una aplicación MDI de Delphi
8787
8888La conversión de una aplicación MDI se ha simplificado con la disponibilidad del mismo componente para Delphi y Kylix.
8989
9090Convierta 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.
9191
9292Sustituya la función habitual MDI de la siguiente forma:
9393
94-`  MDIChildCount   -> MultiDoc1.ChildCount`\
95-`  ActiveMdiChild  -> MultiDoc1.ActiveObject`\
96-`                  o MultiDoc1.ActiveChild`\
97-`  MDIChildren[i]  -> MultiDoc1.Childs[i].DockedObject`\
98-`                  o MultiDoc1.Childs[i]`\
94+```text
95+ MDIChildCount -> MultiDoc1.ChildCount
96+ ActiveMdiChild -> MultiDoc1.ActiveObject
97+ o MultiDoc1.ActiveChild
98+ MDIChildren[i] -> MultiDoc1.Childs[i].DockedObject
99+ o MultiDoc1.Childs[i]
100+```
99101
100102El componente de Delphi está incluido en el paquete. Descomprima multidoc-delphi.zip e instale MultiDocD6.dpk o MultiDocK3.dpk.
101103
102104---
103105*From the Free Pascal wiki, page "MultiDoc/es", as it stood on 2009-02-05 after a change by Arturom, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*
104106Category: Castellano
105107Category: Español

Back to history