Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.10.02;
Скачать: CL | DM;

Вниз

Форма не разворачивается на весь экран.   Найти похожие ветки 

 
Drowsy ©   (2011-06-10 13:06) [0]

При создании формы стиль fsNormal.
В обработчике onFormShow выполняется
WindowState := wsMaximized;
Форма разворачивается, но почему-то не во весь экран.


 
ixen   (2011-06-10 13:16) [1]

а если свойство формы сразу установить wsMaximized ?


 
Drowsy ©   (2011-06-10 13:31) [2]

если "сразу", то форма во весь экран.
мне нужно стиль формы считывать и устанавливать из TIniFile.


 
И. Павел ©   (2011-06-10 13:33) [3]

> [0] Drowsy ©   (10.06.11 13:06)

Разворачивайте форму в OnActivate


 
clickmaker ©   (2011-06-10 13:33) [4]

> нужно стиль формы считывать и устанавливать из TIniFile.

а почему именно в onFormShow?


 
И. Павел ©   (2011-06-10 13:34) [5]

Хотя нет, тут что-то другое: у меня и в OnShow форма максимизируется...


 
И. Павел ©   (2011-06-10 13:36) [6]

> Форма разворачивается, но почему-то не во весь экран.

FormStyle := fsStayOnTop


 
Drowsy ©   (2011-06-10 14:32) [7]


> FormStyle := fsStayOnTop


Это ничего не меняет.


> а почему именно в onFormShow?
>


А где бы Вы сделали?

Эта форма - предок для других, размеры которых надо сохранять в соответствующих секциях ини-файла.
Название секции задаю в onCreate потомков, а считывание и установку размеров в предке.


 
clickmaker ©   (2011-06-10 14:33) [8]

> А где бы Вы сделали?

в OnCreate


 
Drowsy ©   (2011-06-10 14:53) [9]

TfmComBase = class(TForm)
...
TfmDescendant = class(TfmComBase)

Если делать в TfmComBase.onCreate, то надо в TfmDescendant.onCreate инициализировать название секции, а потом вызывать inherited.
А это ведь неправильно?!

В onCreate каждого потомка дублировать считывание и установку размеров?


 
И. Павел ©   (2011-06-10 15:06) [10]

> [9] Drowsy ©   (10.06.11 14:53)

Вот пример полноэкранной формы со спрятанной панелью задач (только не забудьте восстановить все при завершении работы программы).

procedure TForm1.FormCreate(Sender: TObject);
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;


 
И. Павел ©   (2011-06-10 15:09) [11]

> В onCreate каждого потомка дублировать считывание и установку
> размеров?

Создайте два конструктора - один для непосредственного создания формы, а другой - для вызова из inherited. Во втором конструкторе не считывайте настройки.


 
Drowsy ©   (2011-06-10 15:32) [12]

Павел, спасибо за помощь!



Страницы: 1 вся ветка

Текущий архив: 2011.10.02;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.009 c
2-1307636761
Тимофей1
2011-06-09 20:26
2011.10.02
floattostrF форматирование числа в текст


2-1307887116
Geo
2011-06-12 17:58
2011.10.02
Выбор средств для построения отчетов


2-1308217551
deniss
2011-06-16 13:45
2011.10.02
из pascal в delphi


15-1307392194
Юрий
2011-06-07 00:29
2011.10.02
С днем рождения ! 7 июня 2011 вторник


4-1251186167
mamedovvms
2009-08-25 11:42
2011.10.02
консольных программ прога зависает на некоторое время на строке l