Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

MDI: formulario secundadios

Estas en el tema de MDI: formulario secundadios en el foro de Visual Basic clásico en Foros del Web. Hola a todos, Estoy realizando unas pruebas donde tengo un formulario MDI. Este formulario tiene un menú, barra de herramientas (Toolbar), barra de aplicación (SSListBar) ...
  #1 (permalink)  
Antiguo 12/04/2005, 10:18
 
Fecha de Ingreso: enero-2003
Mensajes: 17
Antigüedad: 21 años, 3 meses
Puntos: 0
MDI: formulario secundadios

Hola a todos,

Estoy realizando unas pruebas donde tengo un formulario MDI.
Este formulario tiene un menú, barra de herramientas (Toolbar), barra de aplicación (SSListBar) y barra de estados (StatusBar). Hasta aquí todo fácil.

Por otro lado he desarrollado una DLL que se encarga de crear formularios, donde una vez abiertos les indico que su formulario padre es el MDI (con la API SetParent(frm.hWnd,mdi.hWnd)...). Con esto solo consigo que el formulario que he creado aparezca dentro del MDI.

Qué es lo que pasa...? que me gustaría que el formulario actuase realmente como un formulario secudario del MDI, como si en tiempo de diseño hubiese activado la propiedad MDIChild=True (propiedad de lectura en tiempo de ejecución).

Conocéis si existe alguna API que permita cambiar las propiedades de un formulario u otra cosa que se os pueda ocurrir.

Os adelanto, que tengo pendiente probar lo mismo pero en lugar de ser una DLL, hacerlo con un control ActiveX, donde en tiempo de diseño puedo crear un formulario MDI con sus respectivo formulario secundario y posteriormente cambiar el formulario padre cuando se haya cargado ... pero esto será mañana miércoles

Un saludo y gracias... os dejo que penséis un rato
  #2 (permalink)  
Antiguo 12/04/2005, 10:37
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
claro lo podes hacer, guardandolo en el sistema, en las FAQ's hay un ejemplo, el cual podes modificar para que el valor que coloques lo aplique a un formulario volviendo mdichild

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #3 (permalink)  
Antiguo 13/04/2005, 01:09
 
Fecha de Ingreso: enero-2003
Mensajes: 17
Antigüedad: 21 años, 3 meses
Puntos: 0
MDI: formularios secundarios desde ActiveX

Hola Geo,

Respecto a lo que comentaba en el foro sobre abrir formularios secundarios desde otro proceso ... lo he probado haciéndolo desde un ActiveX y ha funcionado más o menos.

El ActiveX tiene un mdi, y dos formularios, uno de ellos con MDIChild=True. Desde la aplicación EXE (con formulario MDI) creo un objeto del ActiveX para crear los formularios secundarios, y con la API SetParent(hWnd1,hWnd2) cambio la ventana padre.

El problema es que antes de hacer el SetParent, tengo que cargar el formulario (Show), con lo que se visualiza el formulario MDI que tiene asociado en el control ActiveX (este no es el mayor problema, se podria ocualtar), lo que sucede es que aunque le he cambiado el padre, el formulario secundario sigui teniendo algún tipo de referencia al MDI del ActiveX, porque cuando éste está visualizado si lo redimensiono, tambien se redimensiona el formulario secundario (aunque está en el MDI creado en el EXE).

Espero haberme explicado bien, porque sino vaya lio.

Por otro lado no he encontrado el ejemplo que comentabas en las FAQs. Si tienes claro donde está, te agradecería que me dijeses donde buscarlo.

Un saludo y gracias
XAVI
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:46.