Форум: "WinAPI";
Текущий архив: 2005.08.21;
Скачать: [xml.tar.bz2];
Внизпочему нет WM_CloseQuery? Найти похожие ветки
← →
Grief © (2005-06-23 15:59) [0]CloseQuery на VCL позволяет запретить закрытие окна. Как быстро сделать так же на WinAPI? WM_CloseQuery к сожалению отсутствует. :(
← →
alpet © (2005-06-23 16:03) [1]Перехватывай WM_CLOSE и WM_SYSCOMMAND + SC_CLOSE это посути основные команды закрытия. Кстати зачем с Delphi поставляются исходники VCL ?
← →
Digitman © (2005-06-23 16:12) [2]
> alpet © (23.06.05 16:03) [1]
> зачем с Delphi поставляются исходники VCL ?
очевидно чтобы их А.С.Пушкин читал/изучал.
не царское это дело - читать исходники самого Борланда. дабы понять. что, как и почему делает сам Борланд)
← →
Игорь Шевченко © (2005-06-24 11:02) [3]alpet © (23.06.05 16:03) [1]
Собственно, только WM_CLOSE.
"An application can prompt the user for confirmation, prior to destroying a window, by processing the WM_CLOSE message and calling the DestroyWindow function only if the user confirms the choice. "
← →
Grief © (2005-06-24 19:53) [4]Касательно исходников VCL - я пошагам выполнял - так там и до ассемблера доходит. А тут я ничегошеньки не знаю.
Так как запретить-то закрытие?
← →
jack128 © (2005-06-24 20:08) [5]Помедитировав над сообщением Игоря я выяснил следующее:
procedure TCustomForm.WMClose(var Message: TWMClose);
begin
Close;
end;
А вот медитировать над этим методом я предоставлю тебе, благо асма там нету..
← →
NikNet © (2005-06-24 20:18) [6]Удалено модератором
← →
Grief © (2005-06-25 11:37) [7]Удалено модератором
← →
jack128 © (2005-06-25 19:11) [8]Grief © (25.06.05 11:37) [7]
Он же вроде как закроет окно.
Логично. Значит чтобы окно НЕ закрывалось, достаочно убрать вызов Close из обработчика WM_CLOSE
← →
Marser © (2005-06-25 19:22) [9]Grief © (25.06.05 11:37) [7]
В принципе, wm_close ближе по своеё идее как раз к On_CloseQuery - тебе сообщают, что окно хотят закрыть, а дальше на твоё усмотрение.
← →
Grief © (2005-06-25 20:25) [10]Удалено модератором
← →
Kerk © (2005-06-25 20:32) [11]Grief © (25.06.05 20:25) [10]
Поясните плиз. Как отказаться от закрытия ?
см [8] + думаем головой
← →
Grief © (2005-06-25 21:04) [12]Удалено модератором
← →
Marser © (2005-06-25 22:31) [13]procedure Formochka.WMClose(var Message: TWMClose);
begin
{Нас типа того... закрывают...}
if {ну и ладно} then
Close{inherited как вариант}
else {да ну вас}
end;
Ну а если мы глубоко погрязли в API, то действуем вот так(в оконной процедуре):
....
wm_close: if {<закрываем контору>} then
Result:=DefWindowProc(wnd,msg,wparam,lparam)
{В данном случае почётное право закрытия передаётся стандартному обработчику}
else {не закрываем}
Result:=0
//Просто не реагируем
...
← →
Grief © (2005-06-26 15:39) [14]Удалено модератором
← →
Юрий Зотов © (2005-06-26 16:38) [15]> Grief
> в WinAPI ко мне приходит мессага WM_Close, что с ней делать?
> Result = 0? щас проверю.
Я крайне удивлен тем, что человек, пишущий на API, не утруждает себя чтением справки по оной. Хотя там все написано.
← →
Grief © (2005-06-26 22:26) [16]Лень-родная. Особенно когда есть мастера.
← →
Kerk © (2005-06-26 22:46) [17]Ну и сволочь ты
← →
Grief © (2005-06-26 22:53) [18]Удалено модератором
← →
Kerk © (2005-06-26 22:56) [19]Удалено модератором
← →
Marser © (2005-06-27 01:14) [20]Удалено модератором
← →
Германн © (2005-06-27 02:27) [21]Удалено модератором
← →
Marser © (2005-06-27 02:33) [22]Удалено модератором
← →
Grief © (2005-06-27 10:10) [23]Удалено модератором
← →
VMcL © (2005-06-27 10:15) [24]>>Grief © (27.06.05 10:10) [23]
>Да ну. Был бы хелп. Вот у меня к примеру нету.
Врать нехорошо.
http://msdn.microsoft.com/library/default.asp
← →
Poirot © (2005-06-27 14:17) [25]<offtop>
А орешние не отменили ешшо?! Туда бы это всё :)
</offtop>
Легче просто написать хоть раз маленькое оконное приложение используя читый WinAPI и по шага посмотреть что и когда приходить - много поелзного найдёшь :)
ЗЫ: мастера долго помогать не будут - ибо голова чтобы есть?:))
← →
Grief © (2005-06-27 14:59) [26]Так то в сети. В сети проще у вас спросить. А вот на компе...
← →
Игорь Шевченко © (2005-06-27 15:01) [27]
> В сети проще у вас спросить.
За каждый ответ тебе ты обязан платить денег отвечающему. И не иначе.
← →
default © (2005-06-27 15:03) [28]Grief © (27.06.05 14:59) [26]
"В сети проще у вас спросить."
редкий засланец, однако
← →
Kerk © (2005-06-27 17:10) [29]А я сразу сказал, что сволочь. На редкость точным диагноз оказался.
← →
Grief © (2005-06-27 22:25) [30]Какие вы тут все злые. На кой нужен форум, если спрашивать нельзя?!
← →
Marser © (2005-06-28 00:01) [31]Grief © (27.06.05 22:25) [30]
А чтоба отвечать! И ещё таких как ты, пинать. Вот, ветка как растёт уже...
Желаю дойти до понимания самостоятельно и стать нормальным членом сообщества программистов, а не ламером в наклонностями трутня.
← →
Игорь Шевченко © (2005-06-28 10:22) [32]
> На кой нужен форум
Деньги со спрашивающих собирать. Ты до сих пор не понял ?
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2005.08.21;
Скачать: [xml.tar.bz2];
Память: 0.52 MB
Время: 0.045 c