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

Вниз

кнопка [х] в заголовке окна   Найти похожие ветки 

 
InfoCar1   (2004-03-06 18:10) [0]

как сделать кнопку закрыть [х] в заголовке окна чтобы при нажатии на неё программа не закрывалась, а сворачивалась?


 
Юрий Зотов ©   (2004-03-06 18:12) [1]

Обрабатывать WM_SYSCOMMAND с SC_CLOSE и там сворачивать программу.


 
TButton ©   (2004-03-06 18:18) [2]

Form1.OnCloseQuery
begin
 CanClose;=false;
 WindowState:=wsMinimized;
end


 
Алхимик ©   (2004-03-06 18:26) [3]


> [2] TButton ©   (06.03.04 18:18)

Не корректно. Потом программу через диспетчер задач снимать?


 
Serge ©   (2004-03-06 18:29) [4]

>Алхимик ©   (06.03.04 18:26) [3]

> [2] TButton ©   (06.03.04 18:18)

Не корректно. Потом программу через диспетчер задач снимать?

Не обязательно, если для закрытия еще добавить какое-то условие при котором CanClose:=true;


 
Soft ©   (2004-03-06 18:30) [5]

>>Алхимик ©   (06.03.04 18:26) [3]
>>> [2] TButton ©   (06.03.04 18:18)
>>Не корректно. Потом программу через диспетчер задач снимать?

Каков вопрос таков ответ:)


 
TButton ©   (2004-03-06 18:32) [6]

>Потом программу через диспетчер задач снимать?
не применить индейскую хитрость
добавляем action CloseProg (например), вызываем его при выборе пункта меню "выход"

в нем пишем

...
 jobfinished:=true; //глобальная переменная
 close;
...
end;


а onCloseQuery соответсвенно переписываем следующим образом

...
 CanClose;=false;    // по умолчанию
 if jobfinished
   then CanClose:=true
   else WindowState:=wsMinimized;
...


 
TButton ©   (2004-03-06 18:33) [7]

очипятка
"не применить индейскую хитрость"
читать как
"нет, применить индейскую хитрость"


 
Petr V. Abramov ©   (2004-03-06 18:40) [8]

> subj
 Это не круто. Лучше сделать, чтоб по нажатию [x] окно разворачивалось на весь экран. Так курсы по пользованию программой дороже стоить будут :)
P.S. Тут была недавно ветка про Банк-клиент, у которого на кнопку надо было нажимать правой кнопкой мышки, а по нажатию левой вылезал AV. И обсуждалось там, откуда такие программы берутся. Вот Вам и ответ - отсюда.


 
Pa5ha   (2004-03-06 18:41) [9]

А можно так?:
CanClose:=true;
close;


 
Алхимик ©   (2004-03-06 18:43) [10]


> [8] Petr V. Abramov ©   (06.03.04 18:40)

В принципе согласен. Нефиг баловать со стандартным интерфейсом.


 
TButton ©   (2004-03-06 19:00) [11]

>А можно так?:
>CanClose:=true;
>close;<?CODE>

нельзя. CanClose - переменная обработчика onCloseQuery


 
TButton ©   (2004-03-06 19:08) [12]

дополнение:
>откуда такие программы берутся
от хитрых индейцев)


 
Gero ©   (2004-03-06 19:15) [13]

Чтобы было удобнее можно дописать метод.
Например:

procedure TForm1.RealClose;
begin
 JobFinished := True;
 Close;
end;

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



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

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

Наверх




Память: 0.5 MB
Время: 0.035 c
3-1077176663
Michail Dalakov
2004-02-19 10:44
2004.03.28
Font в наследниках TControl при Enabled:=false


1-1078581459
InfoCar1
2004-03-06 16:57
2004.03.28
Как удалить из реестра переменную?


4-1074261583
MPS
2004-01-16 16:59
2004.03.28
Как получить список процессов в WinNT 2000?


14-1078193323
ИМХО
2004-03-02 05:08
2004.03.28
Знатокам футбола: куда делся бразилец Марио Жардел???


4-1073414279
Qwet
2004-01-06 21:37
2004.03.28
Зарегистрировать Hotkey которую выбрал