Свернуть/развернуть главное окно приложения

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Свернуть/развернуть главное окно приложения

Сообщение tria » 28.11.2006 11:57:57

WindowState=wsMaximized
Сворачиваю окно. Разворачиваю его щелчком мышки по панели окон - окно в состоянии wsNormal.
Почему?
И как сделать, чтобы при разворачивании оно было wsMaximized?
tria
постоялец
 
Сообщения: 401
Зарегистрирован: 03.04.2006 11:24:10

Сообщение @lex » 29.11.2006 08:03:22

Может попробовать при разворачивании прописать Form1.WindowState:=wsMaximized;

И ещё один вопрос в тему:
Свойство формы showintaskbar стоит на Default -> при запуске приложения в TaskBar ничего не появляется, зато появляется при первом сворачивании формы.
Свойство формы showintaskbar стоит на Always -> при запуске приложения форма в TaskBar появляется, зато при сворачивании появляется ещё одна конпка :(
Как сделать так, чтобы всё было по человечески :)

P.S.: Lazarus 0.9.16; OS WinXP_sp2
@lex
постоялец
 
Сообщения: 180
Зарегистрирован: 19.06.2006 13:16:29
Откуда: Невинномысск

Сообщение tria » 29.11.2006 12:06:07

@lex писал(а):Может попробовать при разворачивании прописать Form1.WindowState:=wsMaximized;

Если написать:
procedure TForm1.FormWindowStateChange(Sender: TObject);
begin
If WindowState=wsMinimized Then
WindowState:=wsMaximized;
end;
то код WindowState:=wsMaximized не выполняется вовсе.
Если написать:
procedure TForm1.FormWindowStateChange(Sender: TObject);
begin
If WindowState=wsNormal Then
WindowState:=wsMaximized;
end;
То при щелчке на таскбаре окно появляется размера wsNormal но без границ и системных окон. Это надо видеть :)

Может можно отлавливать разворачивание окна каким-либо другим способом, о котором я не знаю?

@lex писал(а):И ещё один вопрос в тему:
Свойство формы showintaskbar стоит на Default -> при запуске приложения в TaskBar ничего не появляется, зато появляется при первом сворачивании формы.
Свойство формы showintaskbar стоит на Always -> при запуске приложения форма в TaskBar появляется, зато при сворачивании появляется ещё одна конпка :(
Как сделать так, чтобы всё было по человечески :)

P.S.: Lazarus 0.9.16; OS WinXP_sp2

Таких проблем у меня небыло. Версии начиная с 14 по 20.
Стоит Default.
tria
постоялец
 
Сообщения: 401
Зарегистрирован: 03.04.2006 11:24:10

Сообщение @lex » 29.11.2006 14:37:33

Если написать:
procedure TForm1.FormWindowStateChange(Sender: TObject);
begin
If WindowState=wsNormal Then
WindowState:=wsMaximized;
end;
То при щелчке на таскбаре окно появляется размера wsNormal но без границ и системных окон. Это надо видеть :)

Да, представляю!
Но наверное всё таки этот код больше подходит, чем первый вариант, просто глючит...
Может вместо изменения WindowState растянуть форму на весь экран, оставив Normal ?

Таких проблем у меня небыло. Версии начиная с 14 по 20.
Стоит Default.

Сейчас только что 0.9.20 перекомпилировал с Default и всё равно сразу не показывает, а только при первом сворачивании. :(
@lex
постоялец
 
Сообщения: 180
Зарегистрирован: 19.06.2006 13:16:29
Откуда: Невинномысск


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: zub и гости: 38

Рейтинг@Mail.ru