Sobre Form...?

ymabreu
20 de Diciembre del 2004
1-C贸mo hacer para que una Form(ventana) no se mueva, esto es que no cambie su posici贸n?
2-C贸mo hacer que una Form tenga la posici贸n principal asta que sea cerrada; considerando que otros programas est茅n corriendo?
De antemano gracias.

Siendo m谩s especifico:

1- Lo que quiero es que despu茅s de aparecer la ventana en pantalla el usuario no pueda modificar su posici贸n, esto es cogerla con el mouse y moverla de un lado para otro(teniendo la ventana todas sus "partes" visibles).

2- Si es posible hacer que una ventana despu茅s de aparecer, para quitarla de la pantalla, halla que cerrarla o de lo contrario seguir谩 en el medio hagamos lo que hagamos y siempre visible.

Si solo sabes una igual me ser铆a tremendo.

Alex_C
20 de Diciembre del 2004
Intenta con la funci贸n Api "SetWindowPos":

BOOL SetWindowPos(

HWND hWnd, // handle of window
HWND hWndInsertAfter, // placement-order handle
int X, // horizontal position
int Y, // vertical position
int cx, // width
int cy, // height
UINT uFlags // window-positioning flags
);


por ejemplo, este codigo hace que la ventana del formulario permanesca por encima de las dem谩s al hacer click al boton "Button1" y regresa a como estaba al hacer click en "Button2":

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{
SetWindowPos(Form1->Handle, HWND_TOPMOST, Form1->Left, this->Top, this->Width, this->Height, SWP_SHOWWINDOW);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
SetWindowPos(Form1->Handle, HWND_NOTOPMOST, Form1->Left, this->Top, this->Width, this->Height, SWP_SHOWWINDOW);
}
//---------------------------------------------------------------------------

ymabreu
20 de Diciembre del 2004
gracias, eso funciona de maravilla.

ymabreu
20 de Diciembre del 2004
Algo que no puse inicialmente trabajo en C++Builder.