Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как сделать полноэкранное окно?


FreeMen ©   (2002-09-02 08:05:00) 

Пока у меня получилось лишь сменить настроёки разрешения Windows, и окно всё равно видно, а я хочу чтобы была видна иолько его рабочая часть и на весь экран.
Заранее спасибо!


Tihas   (2002-09-04 22:01:00) [1]

Извеняюсь не в тему сказал, мне показалась как сделать
полно экранное приложение, а оказалась форму на весь экран.
И всех сдесь сказаных мне нравиться первый, только наверно
ещё таскбар придётся скрыть.
Удачи.


Tihas   (2002-09-04 19:32:00) [2]

ДА не проще на рабочем стол выводить
GetDc(0),у меня это всегда работало.


FreeMen   (2002-09-04 08:31:00) [3]

На самом деле мне надо это сделать через Handle


Ч а й н и к   (2002-09-03 17:09:00) [4]

А почему так сложно?
1. Form1.borderstyle:=bsnone;
2. sendmessage(handle,WM_SYSCOMMAND,SC_MINIMIZED,0");


none   (2002-09-02 22:02:00) [5]

Если вы можете использовать DirectX напишите следуещее в программе:


unit Unit1;

interface

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

type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure FormPaint(Sender: TObject);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
{ Private declarations }
FDD:IDirectDraw7;
FDDSPrimary:IDirectDrawSurface7;
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var
ddsd:TDDSurfaceDesc2;
begin
FDDSPrimary:=nil;
FDD:=nil;
DirectDrawCreateEx(nil, FDD, IDirectDraw7, nil);
FDD.SetCooperativeLevel(Handle, DDSCL_FULLSCREEN or DDSCL_EXCLUSIVE);
ZeroMemory(@ddsd, SizeOf(ddsd));
ddsd.dwSize:=SizeOf(ddsd);
ddsd.dwFlags:=DDSD_CAPS;
ddsd.ddsCaps.dwCaps:=DDSCAPS_PRIMARYSURFACE;
FDD.CreateSurface(ddsd, FDDSPrimary, nil);
FDD.SetDisplayMode(800, 600, 16, 0, 0);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
if assigned(FDD) then begin if assigned(FDDSPrimary) then FDDSPrimary := nil;
FDD:=nil
end;
end;

procedure TForm1.FormPaint(Sender: TObject);
begin

end;

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=VK_ESCAPE then close;
end;

end.

При этом установите BorderStile в BsNone.


Song   (2002-09-02 10:13:00) [6]

У формы :
1.отключить заголовок
2.Максимизировать (TForm.State)
3.Выбросить форму наверх (SetWindowPos)


Наверх

Титульная страница Поиск, карта сайта Написать письмо