Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Перемещение окна, не работает... 
:(
    Опции темы
MacTep
Дата 2.5.2006, 23:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1292
Регистрация: 4.8.2003
Где: г. Самара

Репутация: 4
Всего: 4



Использую следующий код, чтобы отлавливать нажатия на кнопку закрытия окна.
Код

type
  TForm6 = class(TForm)
    lb1: TListBox;
    procedure lb1Click(Sender: TObject);
  private
    procedure WMSysCommand(var Msg: TWMSysCommand);
      message WM_SYSCOMMAND;
  public
  end;

var
  Form6: TForm6;

implementation

procedure TForm6.WMSysCommand(var Msg: TWMSysCommand);
begin
  if (Msg.CmdType=SC_Close) then
    if (Application.MessageBox('Вернуться к предыдущему окну?',
                               'Конец ввода',MB_ICONQUESTION+MB_YESNO)<>IDNO) then
      begin
        Form2.Show;
      end;
end;

Но при этом перестает перемещаться окно при помощи мыши. Что я делаю не так? 


--------------------
(A)bort, (R)etry, (I)gnore = Haфиг, Heфиг, Пoфиг ... :)
PM MAIL   Вверх
Poseidon
Дата 2.5.2006, 23:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 53
Всего: 133



inherited забыл smile

Код

procedure TForm6.WMSysCommand(var Msg: TWMSysCommand);
begin
  if (Msg.CmdType=SC_Close) then
    if (Application.MessageBox('Вернуться к предыдущему окну?',
                               'Конец ввода',MB_ICONQUESTION+MB_YESNO)<>IDNO) then
      begin
        Form2.Show;
      end
    else
  else inherited;
 


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
MacTep
Дата 3.5.2006, 05:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1292
Регистрация: 4.8.2003
Где: г. Самара

Репутация: 4
Всего: 4



Цитата(Poseidon @  2.5.2006,  23:59 Найти цитируемый пост)
else inherited
Нда, именно это я и забыл. Сам понял через несколько минут, как тему запостил. smile 


--------------------
(A)bort, (R)etry, (I)gnore = Haфиг, Heфиг, Пoфиг ... :)
PM MAIL   Вверх
Snowy
Дата 3.5.2006, 08:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



А зачем такие велосипеды? Есть же OnCloseQuery... 
PM MAIL   Вверх
Poseidon
Дата 3.5.2006, 17:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 53
Всего: 133



Цитата(Snowy @  3.5.2006,  08:30 Найти цитируемый пост)
Есть же OnCloseQuery
 А еще есть OnClose  smile 


Код
procedure TForm6.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:= caNone;
  if (Application.MessageBox('Вернуться к предыдущему окну?',
                             'Конец ввода',
                             MB_ICONQUESTION+MB_YESNO)<>IDNO)
  then Form2.Show;
end;
 


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
MacTep
Дата 3.5.2006, 21:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1292
Регистрация: 4.8.2003
Где: г. Самара

Репутация: 4
Всего: 4



Цитата(Poseidon @  3.5.2006,  17:19 Найти цитируемый пост)
А еще есть OnClose  
Реально! А ведь такое простое решение. Наверное потому и гениально, что просто! smile Сразу и не приметил... smile Действителньо велосипед начал изобретать... Спасибо! 


--------------------
(A)bort, (R)etry, (I)gnore = Haфиг, Heфиг, Пoфиг ... :)
PM MAIL   Вверх
Yanis
Дата 3.5.2006, 21:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 72
Всего: 111



Цитата(MacTep @  3.5.2006,  21:09 Найти цитируемый пост)
Реально! А ведь такое простое решение. Наверное потому и гениально, что просто!  Сразу и не приметил...  Действителньо велосипед начал изобретать... Спасибо! 

А ведь Snowy тебе это уже предлогал! Но это я так, к слову... 


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0495 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.