Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Событие после Resizа формы


Автор: Ak47black 23.1.2008, 17:16
Здравствуйте.
Пытаюсь найти решение ресайзу.
Хочу сделать чтобы например слышать
Код

Beep;

После ресайза окна, но после полного, тоесть когда юзер сделает ресайз и отпустит правую кнопку мышки.
Пробовал сделать
Код

if (GetAsyncKeyState( VK_LBUTTON  ) = 0) then Beep;

Но невыходит.
Пробовал OnConstrainedResize то в этом случае получаю сразу несколько.
Может у когонибудь есть идея?

Автор: MetalFan 23.1.2008, 17:25
что не выходит?
почему ты говоришь про правую, а проверяешь левую?

Автор: THandle 23.1.2008, 17:27
Код

procedure TForm1.FormConstrainedResize(Sender: TObject; var MinWidth,
  MinHeight, MaxWidth, MaxHeight: Integer);
begin
  if (GetAsyncKeyState( VK_LBUTTON  ) = 0) then Beep;
end;


После ресайза один Beep;

Автор: Ak47black 23.1.2008, 18:20
Сорь я перепутал, тоесть я имел ввиду про левую кнопку.
Цитата

После ресайза один Beep; 

А я слышу несколько.

Автор: THandle 23.1.2008, 20:14
Ak47black, странно.
Поставь на Beep; брейкпойнт и посмотри сколько раз он выполняется. У меня один раз за одно изменение размера формы.

Автор: Ak47black 23.1.2008, 21:07
THandle, да не тут даже если этот код запустить то по процесору(загрузке) видно что он пытается много раз сделать beep.
Я немного по другому обошел эту проблемму, проблема отпала.
Извиняюсь что поднял тему.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)