Ver Mensaje Individual
  #1  
Antiguo 26-11-2003
Tomás Tomás is offline
Miembro
 
Registrado: may 2003
Ubicación: Elche
Posts: 140
Reputación: 22
Tomás Va por buen camino
DateTimePicker no funciona

Hola:

Tengo un DateTimePicker con la propiedad DateMode a ComboBox.
Al abrir el combo aparece el calendario del mes pero al picar en un día el calendario se va a la esquina superior izquierda sin coger la fecha, le vuelvo a picar y desaparece pero también sin coger la fecha.

He descubierto que todo esto es consecuencia de un código que hace aproximadamente un mes me paso alguien en este foro, creo que Román, que me permite situar un MessageBox en cualquier sitio de la pantalla:

El código es este:

code:--------------------------------------------------------------------------------
interface

type
TForm1 = class(TForm)
private
MsgTitle: String; // Título del mensaje
MsgX, MsgY: Integer; // Posición del mensaje
procedure WMActivate(var Message: TWMActivate); message WM_ACTIVATE;
end;

implementation

procedure TForm1.WMActivate(var Message: TWMActivate);
var
Buffer: array[Byte] of Char;

begin
inherited;

if Message.Active = WA_INACTIVE then
begin
GetWindowText(Message.ActiveWindow, Buffer, SizeOf(Buffer));
if Buffer = MsgTitle then
SetWindowPos(
Message.ActiveWindow,
0,
MsgX, MsgY,
0, 0,
SWP_NOSIZE or SWP_NOZORDER
)
end;
end;

end.
--------------------------------------------------------------------------------


Cuando desees mostrar el cuadro de mensaje ajusta primero las variables MsgTitle, MsgX y MsgY:


code:--------------------------------------------------------------------------------
MsgTitle := 'Mi mensaje';
MsgX := 100;
MsgY := 100;
Application.MessageBox('Hola', PChar(MsgTitle), 0);
--------------------------------------------------------------------------------

Si quito esto el DateTimePicker va correcto.

¿Quisiera saber si puedo solucionar este problema del DateTimePicker sin prescindir de este código para situar el MessageBox?

Gracias. Tomás.
Responder Con Cita