Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум на Исходниках.RU > Delphi: Общие вопросы > Как развернуть форму на весь экран?


Автор: nekto550 12.02.06, 07:12
Как развернуть форму на весь экран?
Какой командой?
Form1.....?

Автор: Digimaster 12.02.06, 07:30
<{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}>
    Form1.WindowState:=wsMaximized;

Автор: DroN_S 12.02.06, 08:15
nekto550
ну если вообще на весь то можно ещё так
<{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}>
     with Form1 do
       begin
         WindowState := wsMaximized;
         BorderStyle := bsNone;
       end;

Автор: Алексей 17.10.08, 14:35
А если у меня BorderStyle в None, а форму развернуть надо не на весь экран, а как обычную программу, с таскбаром внизу...

Автор: oneday 17.10.08, 20:11
Цитата Алексей @
А если у меня BorderStyle в None, а форму развернуть надо не на весь экран, а как обычную программу, с таскбаром внизу...

тогда вручную можно изменять свойства TForm.Height, TForm.Width

Автор: VisualProg 17.10.08, 20:19
Цитата oneday @
тогда вручную можно изменять свойства TForm.Height, TForm.Width

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

Автор: antonn 18.10.08, 08:00
Цитата
при этом необходимо узнавать разрешение экрана пользователя, и изменять Height и Width по отнешению с разрешением экрана, так как форма может просто не влезть в рабочий стол.

правильней узнавать не разрешение экрана, а размеры рабочей области (appbar'ы откушают ведь какую то область).
<{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}>
    var rWorkArea: TRect;
    бегин
    SystemParametersInfo(SPI_GETWORKAREA, 0, @rWorkArea, 0);
    // rWorkArea - прямоугольник рабочей области для окон

Автор: Алексей 18.10.08, 18:57
Спасибо!
сделал так:
<{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}>
          SystemParametersInfo(SPI_GETWORKAREA, 0, @rWorkArea, 0);
          Main.WindowState:=wsMaximized;
          Main.Height:=rWorkArea.Bottom;

всё замечательно работает)

Автор: antonn 18.10.08, 19:30
Алексей
не совсем верно, нужно ведь учесть и ширину (например бар из висты будет мешать, или панель офиса внешнаяя). Возвращаемый Trect и есть доступная область - rect.left - слева, rect.top - сверху, rect.bottom - нижняя часть, но не высота формы!

Powered by Invision Power Board (https://www.invisionboard.com)
© Invision Power Services (https://www.invisionpower.com)