Forma na cały ekran

0

Witam
Jak zrobić by forma tak jak np gra zasłaniała cały ekran, to jest ekran i pasek start. Udało mi się ukryć pasek start z poziomu delphi i dać w formie Align: Custom, lecz gdy uruchamiam program, forma zakrywa cały ekran, oprócz tego miejsca w którym jest pasek start (ukryty). Czy jest jakiś sposób by forme rozciągnąć na cały ekran bez względu na pasek start?

0

Jedyny i najłatwiejszy sposób jaki znam aby
osiągnąć to co chesz - w OnCreate dać kod:

  BorderStyle := bsNone;
  WindowState := wsMaximized;
0

Właśnie właśnie

BorderStyle := bsNone;
WindowState := wsMaximized;
formStyle:=fsStayOnTop; // !!!! o tym nie należy zapominać !!!!

0

pokombinuj z CreateParams

procedure CreateParams(var Params: TCreateParams); override;

procedure TfrmContainer.CreateParams(var Params: TCreateParams);
begin
  inherited CreateParams(Params);
  Params.ExStyle := Params.ExStyle or WS_EX_APPWINDOW;  // tutaj zabawa flagami
end;
0
{$J+} //writeable constants on
const
 Rect: TRect = (Left:0; Top:0; Right:0; Bottom:0);
 ws: TWindowState = wsNormal;
{$J-} //writeable constants off
var
 r: TRect;
begin
 if BorderStyle <> bsNone then
   begin
    ws   := WindowState;
    Rect := BoundsRect;
    BorderStyle := bsNone;
    r := Screen.MonitorFromWindow(Handle).BoundsRect;
    SetBounds(r.Left, r.Top, r.Right-r.Left, r.Bottom-r.Top);
   end
 else
   begin
    BorderStyle := bsSizeable;
    if ws = wsMaximized then WindowState := wsMaximized
    else SetBounds(rect.Left, rect.Top, rect.Right-rect.Left, rect.Bottom-rect.Top) ;
   end;
end;

1 użytkowników online, w tym zalogowanych: 0, gości: 1