Formas Incrustadas FMX

Ésta entrada está basada en el ejemplo FMXEmbeddedForm (Delphi) localizado en la wiki de documentación de Embarcadero donde nos muestra como incrustar una forma dentro de otra y la intención de la presente entrada es desarrollar paso a paso la forma como hacerlo con Delphi XE7.

Y sin más preambulo comenzaremos creando una aplicación multi-dispositivo, para ello seleccionaremos en los proyectos de Delphi la opción Multi-Device Application.

FI-01

 

Posteriormente seleccionamos el tipo de aplicación multi-dispositivo, personalmente utilizo una aplicación en blanco.

FI-02

A continuación agregamos una nueva forma multi-dispositivo desde el menú File –> new –> Multi-Device Form – Delphi como se muestra en la siguiente figura.

FI-03

Elegimos el tipo de Forma HD y presionamos el botón OK.

FI-04

Antes de continuar guardamos nuestro proyecto, la unit1 la guardamos como uFormaPadre y la unit2 como uFirmaIncrustada, al proyecto le pueden asignar el nombre que deseen.

FI-05

Agramos a nuetra formaPadre dos componentes, 1 ToolBar con la propiedad Align = Top y 1 Panel con la propiedad Align = Client como se muestra en la siguente figura.

FI-06

En la formaIncrustada agregamos tres componentes, 1 TabControl con la propiedad Align = Client donde agregué 3 Tabs y dos TButton, ustedes pueden agregar los componentes que deseen, la idea es mostrar la forma con algunos componentes para poder observar fácilmente el efecto deseado.

FI-07

El siguiente paso es agregar la unidad uFormaIncrustada en nuestra formaPadre, para ello pueden hacerlo presionando Alt-F11 o en el menu File –> Use Unit o escribiendo manualmente la unidad en una sección Uses de la formaPadre.

FI-08

Adicionalmente agregamos un procedimiento llamado EmbeddedForm() en la sección Private de la clase Tfrm_Padre (TForm1 si no cambiaron el nombre de la forma) como se muestra en la siguente imagen, a continuación presionamos Ctrl + Shift + C para agregar nuestro procedimiento en la sección de implementación y escribimos el código que se realizará cuando se llame a dicho procedimiento.

FI-09

Ahora ya podemos hacer la llamada a  nuestro procedimiento, en éste caso  se ha decidido seguir el ejemplo de la Wiki de Embarcadero utilizando el evento OnCreate de la formaPadre, en la siguente figura se muestra dicha llamada.

Podemos observar que el procedimiento va a incrustar la formaIncrustada en el objeto Panel de la formaPadre en el momento que la aplicación se crea, ustedes pueden jugar con la formaPadre para ejecutar el procedimiento en el momento que lo deseen, incluso pueden agregar código a la formaIncrustada para que ejecute lo que deseen una vez que ya está incrustada en la formaPadre.

FI-10

En éste momento nuestra aplicación ya está lista para ser ejecutada en cualquiera de los dispositivos que desee y que están disponibles en DelphiXE7 , en mi caso lo hice para Android y para Windows 32Bits, pero se puede compilar sin problema para los demás y utilizando el mismo código por supuesto.

A continuación pueden ver la imagen en los dós dispositivos compilados.

FI-11
Android teléfono LG-P880
FI-12
Windows 32 Bits

Descargas


Si lo deseas puedes descargar el código fuente de ésta entrada, espero sea de utilidad.

Ésta entrada y el código fuente son libres para su uso y publicación, lo único que te pido, si te parece justo, es mencionar la fuente de donde se obtuvo.

Lo nuevo de FireMonkey en XE7

Hola amigos

Vamos a ver en varias entradas los cambios que se han hecho con el lanzamiento de RAD Studio XE7 pero específicamente los cambios hechos a FireMonkey.

En XE6 se tenía que elegir entre tres tipos de aplicaciones FireMonkey, aplicaciones de escritorio, Aplicaciones Metrópolis y aplicaciones móviles como lo podemos observar en el IDE de XE6.

En RAD Studio XE7 se ha creado una sóla opción donde se puede elegir tanto aplicaciones de escritorio como aplicaciones móviles, de hecho permite la creación de todas las plataformas soportadas, a ésta nueva forma de crear aplicaciones se le ha llamado «Multi-Device Aplication»  y otra donde podemos crear aplicaciones Metrópolis.

Ésta característica Multi-Device está soportada en dos de las tres grandes bibliotecas de RAD Studio, FireMonkey y la RTL, la VCL no está soportada en ésta característica.

Personalmente me ha gustado mucho la nueva forma de acceder a las aplicaciones FireMonkey con la Multi-Device com lo podemos ver en las siguientes imágenes.

Como podemos ver, contamos con las 4 grandes plataformas Windows, OSX, iOS y Android y dentro de ellas podemos destacar la gran variedad de dispositivos incluyendo Google Glass.

Lo dicho, me gusta mucho ésta nueva versión de RAD Studio que cuenta con muchas mejoras y muchas cosas nuevas que iremos viendo poco a poco.

Nos leemos 🙂


Ésta entrada y cualquier código fuente publicado en ésta bitácora, son libres para su uso y publicación, lo único que te pido, si te parece justo, es mencionar la fuente de donde se obtuvo.

Lanzamiento RAD Studio XE4

2013-05-21 08.59.40

Hola,

El día de ayer (21 Mayo 2013) estuve en el lanzamiento de RAD Studio XE4 en la Ciudad de México. Una presentación que me ha dejado muy satisfecho con lo que los chicos de Embarcadero han hecho para proporcionarnos la opción de crear aplicaciones para dispositivos móviles iOS.

En ésta ocasión el encargado de darnos los pormenores de ésta nueva versión de RAD Studio fué Anders Ohlsson a quien podemos ver preparando su equipo antes de iniciar el evento, cabe mencionar que tuve la oportunidad de charlar un poco con él (mi inglés es muy pobre :)) y puedo asegurarles que es una persona muy agradable y atenta.

2013-05-21 08.34.11

Dió inicio la presentación de RAD Studio XE4 «la primera solución de desarrollo de aplicaciones nativas multi-dispositivo»

2013-05-21 09.18.26

Las ventajas de contar con una sólo herramienta de desarrollo son enormes ya que se traduce en un sólo código base, un sólo equipo y una sóla agenda, aúnado a la reducción de gastos que serían mucho más altos si se tuviera que desarrollar con diferentes herramientas para diferentes dispositivos.

2013-05-21 09.21.50

2013-05-21 09.25.58

Y ésto se logra con Firemonkey, la plataforma para la creación de aplicaciones de múltiples dispositivos realmente nativas para iOS, Windows y Mac que usa un solo código base y que de acuerdo a su arquitectura podrá acceder al popular sistema operativo Android, algo muy esperado por muchos….

2013-05-21 09.24.35

Algunas de las caracteristicas más relevantes de RAD Studio:

2013-05-21 09.28.18     2013-05-21 09.35.23

2013-05-21 09.32.42     2013-05-21 12.04.21   2013-05-21 10.02.55

2013-05-21 09.35.37

La asistencia fué de 100 personas exactamente, aunque es un buen número, seguimos extrañando aquellas presentaciones con mas de 200 asistentes, estoy seguro que la presentación de Android regresará esos números.

2013-05-21 09.36.25

En general la presentación fué muy interesante y algo peculiar en ésta ocasión fué que hubo pocas caras conocidas y muchas caras nuevas, algo que pudiera tener dos aristas, sin embargo, me reservo el comentario hasta ver la respuesta de la comunidad cuando Android salte a escena.

Hasta pronto