Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Poner un control en el fondo de un formulario MDI (https://www.clubdelphi.com/foros/showthread.php?t=11808)

Egroc 25-06-2004 17:46:17

Poner un control en el fondo de un formulario MDI
 
Hola, soy un poco nuevo en esto y me gustaría que me echáseis una mano:

La cuestion es que quiero poner un control de calendario en el fondo del formulario MDI de mi aplicación, pero al cargar las ventadas, el control las tapa (está encima). Me he fijado que pasa lo mismo con botones y otros botones excepto con el control TImage.

¿Podría alguien decirmo como puedo poner el control sin tapar los formularios?

Gracias

delphi.com.ar 25-06-2004 17:53:59

No se que tan práctico puede ser, pero podrías poner un panel alineado y sobre este panel poner el Calendario.

Saludos!

Egroc 25-06-2004 18:05:41

Lo del panel no vale
 
Ya lo he intentado, pero el panel también queda por encima de los formularios. :(

delphi.com.ar 25-06-2004 18:18:48

Te entendí lo contrario... si los controles se van a mostrar sobre el formulario.

roman 25-06-2004 21:01:31

Cita:

Empezado por Egroc
La cuestion es que quiero poner un control de calendario en el fondo del formulario MDI de mi aplicación, pero al cargar las ventadas, el control las tapa (está encima).

¿Deseas que el usuario interactúe con el calendario o sólo es para que lo pueda ver?

Si es esto último puedes intentar esto que me ha funcionado:

Código Delphi [-]
procedure TForm1.FormCreate(Sender: TObject);
begin
  SetParent(MonthCalendar1.Handle, ClientHandle);
end;

El problema aquí es que al dar click sobre el calendario, éste vuelve a colocarse sobre los formularios aunque dando click sobre la barra de título del formulario vuelve a ponerse sobre el calendario.

Pero lo dicho, si no necesitas que el usuario acceda al control entonces bastará poner MonthCalendar1.Enabled en false para que al dar click sobre él no pase nada.

// Saludos

Egroc 30-06-2004 22:45:43

Tampoco... :(
 
Gracias por la solución pero no funciona con el control que uso. El error que dá es que no es compatible el Twin con el HLWD...

Creo que esto va a ser dificil (además necesito que el usuario pueda interactual con el control).

ariefez 31-03-2007 02:56:57

agrego algo... el problema es por q la funcion pertenece al formulario, para q no pase esto basta poner:

Código Delphi [-]
Windows.SetParent(MonthCalendar1.Handle, ClientHandle);


La franja horaria es GMT +2. Ahora son las 11:07:43.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi