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

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

Развернутое окно только с кнопкой Close [D5, Win95/98]


RDA ©   (2003-02-18 09:30:00) 

Есть необходимость создать максимизированое окно и имеющее только кнопку Close.
Пишу код - кнопок нет:

procedure TfmPrintPrev.FormCreate(Sender: TObject);
var
Style: Longint;
begin
Style := GetWindowLong(Handle, GWL_STYLE);
SetWindowLong(Handle, GWL_STYLE, Style and not WS_SYSMENU);
end;


Замена на

SetWindowLong(Handle, GWL_STYLE, Style and not WS_MINIMIZEBOX and not WS_MAXIMIZEBOX);

Приводит к тому что окно разворачивается на весь экран и закрывает строку строку задач.
как избежать закрытия строки задач?


REA   (2003-02-18 10:06:00) [1]

Вредительство все это... Все равно Флаг+D ушлет на задний план (а возможно еще и Флаг+M свернет окно).


Игорь Шевченко   (2003-02-18 09:51:00) [2]

Добавлю свой камушек:
fMain.Align := alClient;
fMain.WindowState := wsMaximized;

unit main;

interface

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

type
TfMain = class(TForm)
protected
procedure CreateParams (var Params : TCreateParams); override;
end;

var
fMain: TfMain;

implementation

{$R *.DFM}

{ TfMain }

procedure TfMain.CreateParams(var Params: TCreateParams);
begin
inherited;
with Params do
Style := Style and not (WS_MAXIMIZEBOX or WS_MINIMIZEBOX);
end;

end.


alexteam   (2003-02-18 09:47:00) [3]

form1.borderstyle:= bsSizeToolWin;
form1.Align:=alclient;


RDA   (2003-02-18 09:33:00) [4]

Добавлю FormStyle=fsNormal, BorderStyle=bsSingle или bsSizeable работает одинаково.


Наверх

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