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

Вниз

Как закрыть модальное окно?   Найти похожие ветки 

 
novill ©   (2006-12-26 13:47) [40]

> [39] PZ   (26.12.06 13:20)

как пробовал? кинь код. я не знаю, где и что ты еще успел перехватить


 
PZ   (2006-12-26 13:51) [41]

> [40] novill ©   (26.12.06 13:47)

procedure TForm1.Label1DblClick(Sender: TObject);
begin
 PostMessage(Handle, WM_SYSCOMMAND, SC_CLOSE, 0);
end;


 
PZ   (2006-12-26 13:56) [42]

Т. е. у меня сейчас два обработчикка:

procedure TForm1.WMNCHitTest(var M: TWMNCHitTest);
begin
inherited;
if M.Result = htClient then M.Result := htCaption;
end;

procedure TForm1.Label1DblClick(Sender: TObject);
begin
PostMessage(Handle, WM_SYSCOMMAND, SC_CLOSE, 0);
end;


 
novill ©   (2006-12-26 14:22) [43]

Учитывая
> Я, к сожалению, с собщениями Windows не очень в дружбе.

рекомендую воспользоваться обычными событиями, возььмите соседния пример в Дельфиворлд:

public
 { Public declarations }
 Draging: Boolean;
 X0, Y0: integer;



Draging - для обозначение того периода времени когда пользователь перемещает мышь с зажатой кнопкой мыши,
X0 и Y0 - координаты точки, над которой была зажата кнопка мыши
Далее описываем события формы OnMouseDown, OnMouseMove и OnMouseUp:

procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
 Draging := true;
 x0 := x;
 y0 := y;
end;

procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
 Draging := false;
end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
 if Draging = true then
 begin
   Form1.Left := Form1.Left + X - X0;
   Form1.top := Form1.top + Y - Y0;
 end;
end;



тогда у вас ничего не будет перехватыватсья лишнего


 
novill ©   (2006-12-26 14:33) [44]

естесственно события вешать на события не на формы, а лейбла.


 
PZ   (2006-12-26 14:46) [45]

> [43] novill ©   (26.12.06 14:22)

Как обычно, все гениальное просто!
Нормально работает.
Смутила меня эта процедура Орлика для перемещения окна без заголовка. Почему-то я думал, что без нее ни чем сдвинуть с места окно невозможно.

Спасибо, novill, еще раз спасибо всем-всем, принимавшим участие в обсуждении.
С уважением, PZ.

С наступающим Новым Годом!


 
PZ   (2006-12-26 14:48) [46]

> [44] novill ©   (26.12.06 14:33)

Да, естественно. Я так и сделал



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

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

Наверх




Память: 0.54 MB
Время: 0.05 c
2-1166679541
Action
2006-12-21 08:39
2007.01.14
Интересный вопрос. Создаю компонент на основе TPanel


15-1166515140
AGSmit
2006-12-19 10:59
2007.01.14
У монитора кинескоп плохо светит


2-1167047200
alex1111111111111111
2006-12-25 14:46
2007.01.14
как с помощью winapi закачать фаил с ftp


15-1166883286
ыгыгыгыгы
2006-12-23 17:14
2007.01.14
еще вопросик


6-1155759578
RuzL
2006-08-17 00:19
2007.01.14
Троян