|
Платные хостинги
Раскрутка сайта
Книги по программированию
Помогите не могу понять!, Про окна
- Код unit Unit1;interfaceuses WinProcs, Messages, Classes, Controls, Forms, StdCtrls;type TForm1 = class(TForm) private procedure WMNCHitTest(var M: TWMNCHitTest); message WM_NCHITTEST; { Private declarations } end;var Form1: TForm1;implementation{$R *.dfm}procedure TForm1.WMNCHitTest(var M: TWMNCHitTest); //Куда там юзверь тыкнул?begin inherited; if M.Result = htClient then // Если в кусок формы, то M.Result := htCaption; //говорим, что он и есть капшнend;end.highlightSyntax('delphiTg5M2F','delphi');Напримр так.А вообще в FAQ или в DRKB есть пример. Это сообщение отредактировал ~FoX~ - 1.4.2005, 11:45
- Пример ~FoX~ хорош, но в нем мы обманываем винду, говоря, что область формы - это ее Caption. При этом невозможно отловить события на некоторых компонентах формы (например Label). Вот еще пример, каторые справляется с этои проблемой:Код procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);const SC_DragMove = $F012; { a magic number }begin ReleaseCapture; perform(WM_SysCommand, SC_DragMove, 0);end;highlightSyntax('delphijhmNzJ','delphi');
- Poseidon,объясни свою прогу она чото не работает!
- нечего там объяснять... ты тот кусок в обработчик засунул или так приписал?
- Так она окно воще не драгится Добавлено @ 16:17 И что за магический номер?
- Не обращай внимания.........так............., для передачи левого параметра в сообщении мастдая.По существу, форма таскается........просто, скорее всего, сама форма закрыта у тебя какими то контролами, или ты пытаешься таскать её за какие то контролы. Это нормально............придется на каждом контроле обрабатывать OnMouseDown.
Интернет казино
Онлайн игры
Увеличение члена
Купить DVD
|