Вниз
Скачать: CL | DM;

Главная форма как в Delphi IDE   Найти похожие ветки 

← →
КаПиБаРа ©   (2005-01-31 10:11) [0]

Нужно сделать форму, которяв максимизированном состоянии занимала бы не весь экран, а была бы высотой 60 пикселов.
Есть у кого нибудь наработки?
А то у меня то в одном случае не срабатывает то в другом. В общем прыгаю с бубном :(
В общем не изменяется размер формы, если она создается максимизированной. Если код раскомментировать, проблема устраняется, однако при этом форма разворачивается на весь экран при максимизации из нормального состояния.

procedure WMWindowPosChanging(var Message: TWMWindowPosChanging); message WM_WINDOWPOSCHANGING;
...

procedure TMainForm.WMWindowPosChanging(var Message: TWMWindowPosChanging);
var
 Placement: TWindowPlacement;
begin
 GetWindowPlacement(Handle, @Placement);
{  if ((Message.WindowPos.flags and SWP_SHOWWINDOW) = 0) or ((Message.WindowPos.flags and SWP_FRAMECHANGED) = 0) then
 begin
   inherited;
   Exit;
 end;}
 if (Placement.showCmd = SW_SHOWMAXIMIZED)then
   Message.WindowPos.cy := 60
 else
   inherited;
end;


← →
Stanislav ©   (2005-01-31 10:19) [1]

Constraints.MaxHeight:=60.


← →
Александр Иванов ©   (2005-01-31 10:21) [2]

Зачем такие сложности? По-моему можно обойтись простым SDI интерфейсом и стандартными констрейтами.


← →
TUser ©   (2005-01-31 10:22) [3]

Надо перехватить событие WM_GetMinMaxInfo и прописать соотвествующие параметры.


← →
TUser ©   (2005-01-31 10:24) [4]

procedure TForm1.WMGETMINMAXINFO(var Msg:TWMGetMinMaxInfo);
begin
  inherited;
  Msg.MinMaxInfo^.ptMaxSize:=Point(Screen.Width,Height);
end;


← →
КаПиБаРа ©   (2005-01-31 10:45) [5]

Вот как все просто. Чесно говоря не думал что Constraints работает при развернутом окне. Спасибо.


← →
КаПиБаРа ©   (2005-01-31 12:21) [6]

TUser ©   (31.01.05 10:24) [4]
Этот способ подошол для не главных окон, которые в максимизированном состоянии должны распологаться под главными.

Спасибо всем за помощь.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.026 c
1-1106768480
Angela
2005-01-26 22:41
2005.02.13
Координаты и Panel...


14-1106595496
Fin
2005-01-24 22:38
2005.02.13
Резюме


1-1106839554
serg128
2005-01-27 18:25
2005.02.13
Дайте совет, как написать планировщик?


4-1103568902
KOMBAS
2004-12-20 21:55
2005.02.13
Как отловить содержимое Edit ов в форме IE ?


6-1101822516
Tor
2004-11-30 16:48
2005.02.13
Передача сложных типов данных (класс) в Web-сервисе




   Наверх