PDA

View Full Version : سوال: full screen



aradsystem
شنبه 11 خرداد 1387, 13:23 عصر
سلام. من چطوری می تونم فرم اصلی رو full screen کنم؟ جوری که روی نوار استارت رو هم بپوشونه؟

در ضمن فرم من باید bsdialog باشه. ممنون از راهنمایی دوستان

skmkh6056
شنبه 11 خرداد 1387, 13:49 عصر
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;

type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
procedure CreateFullScreen;
procedure EraseFullScreen;
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.CreateFullScreen;
var
HTaskbar: HWND;
OldVal: LongInt;
begin
try
// Find handle of TASKBAR
HTaskBar := FindWindow('Shell_TrayWnd', nil);
// Turn SYSTEM KEYS off, Only Win 95/98/ME
SystemParametersInfo(97, Word(True), @OldVal, 0);
// Disable the taskbar
EnableWindow(HTaskBar, False);
// Hide the taskbar
ShowWindow(HTaskbar, SW_HIDE);
finally
with Form1 do
begin
BorderStyle := bsNone;
FormStyle := fsStayOnTop;
Left := 0;
Top := 0;
Height := Screen.Height;
Width := Screen.Width;
end;
end
end;

procedure TForm1.EraseFullScreen;
var
HTaskbar: HWND;
OldVal: LongInt;
begin
//Find handle of TASKBAR
HTaskBar := FindWindow('Shell_TrayWnd', nil);
//Turn SYSTEM KEYS Back ON, Only Win 95/98/ME
SystemParametersInfo(97, Word(False), @OldVal, 0);
//Enable the taskbar
EnableWindow(HTaskBar, True);
//Show the taskbar
ShowWindow(HTaskbar, SW_SHOW);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
CreateFullScreen;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
EraseFullScreen;
end;

end.

aradsystem
شنبه 11 خرداد 1387, 20:39 عصر
اقا این همه کد؟من خودم با همین خواص فرم full screen کردم ولی الان یادم رفته.

skmkh6056
یک شنبه 12 خرداد 1387, 07:59 صبح
ببخشین که زیاد شده. اگه دوست ندارین استفاده نکنین. شاید کسی کد بهتری براتون بذاره.

vcldeveloper
یک شنبه 12 خرداد 1387, 17:09 عصر
BorderStyle := bsNone;
FormStyle := fsStayOnTop;
WindowState := wsMaximized;

اگر هم می خواید که کلیدهای Alt+Tab یا Alt+Ctrl+Del یا بطور کلی Taskbar و Start Menu هم غیر فعال بشند، در پست شماره 2 بخش هایی از کد به این امور اختصاص داده شده که می تونید ازش استفاده کنید.

aradsystem
یک شنبه 12 خرداد 1387, 18:08 عصر
اقای کشاورز فرم من باید bsdialog باشه. این طوری که skin حاشیه فرم من یا caption دیده نمیشه.

vcldeveloper
یک شنبه 12 خرداد 1387, 18:22 عصر
اقای کشاورز فرم من باید bsdialog باشه. این طوری که skin حاشیه فرم من یا caption دیده نمیشه.
واقعیتش را بخواید، من تا بحال فرم Dialogایی که Full Screen باشه ندیدم! و متوجه نمیشم چرا باید یک Dialog بصورت Full Screen باشه. اما اگر اصرار به این کار دارید، ظاهرا باید از کدی مشابه کد پست شماره 2 استفاده کنید.

mojtabadj
دوشنبه 27 خرداد 1387, 09:32 صبح
BorderStyle := bsNone;
FormStyle := fsStayOnTop;
WindowState := wsMaximized;

اگر هم می خواید که کلیدهای Alt+Tab یا Alt+Ctrl+Del یا بطور کلی Taskbar و Start Menu هم غیر فعال بشند، در پست شماره 2 بخش هایی از کد به این امور اختصاص داده شده که می تونید ازش استفاده کنید.

اگه لطف کنید لینکشو برام بزارید ممنون میشم