Sobre Form...?
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.
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.
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);
}
//---------------------------------------------------------------------------
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);
}
//---------------------------------------------------------------------------
