Сегодня начну пост с того, что недавно пришлось восстановить блог с бэкапа не первой свежести. Связано это с тем, что хостинг прогорел, а я был в области и не успел сделать бэкап.

Пропали некоторые последние комментарии и один пост, про то, что блог теперь уже не dofollow, но все комментарии, сделанные до того поста, остались dofollow.

Плюс хочу выразить благодарность пользователю Alex, который обратил внимание на мелочность и ненужность некоторых заметок. Исправимся :)

Вполне может оказаться необходимым контролировать перемещение формы пользователем — будь то некоторая стыковка к границам экрана или необходимость запретить перемещать форму.

Мы сперва лезем в Events, видим, что события OnMove нету.

Итак, существует два события: WM_MOVING и WM_MOVE. Первое передаётся окну, когда его перетаскивают, а второе, когда уже переместили. В принципе, в windows xp и выше (а может ещё и чуть раньше) при перемещении окна курсором оно сразу меняет позицию (в отличие от windows 95, например, там мы перемещали контур окна), WM_MOVE возникает достаточно много раз, поэтому не вижу особого смысла его использовать.

Для примера поставим Label1 на форму. Теперь в раздел private типа TForm1 напишем:

procedure WMMoving (var msg: TWMMoving); message WM_MOVING;

Это значит, что процедура, которую мы сечас напишем, будет выполняться каждый раз, когда форма перемещается.

procedure TForm1.WMMoving (var msg: TWMMoving);
begin
  Label1.Caption:=IntToStr(msg.DragRect.Left)+';'+IntToStr(msg.DragRect.Top);
end;

Можно проверить, при перемещении формы в Label1 меняются её координаты.

Хочу добавить, что это заметка, которая не претендует на журнальную статью, но я решил об этом написать, так как передо мной встал вопрос, отражённый в заголовке. Буду и дальше писать конкретно и по теме блога :)

(с) crystalbit, http://parsers.info

Вопрос восстановления файлов — важный вопрос. Если бы всё было так просто, я не потерял бы бд блога, которая сгорела вместе с хостингом (к слову, похоже на то, что каталог с базами специально отформатировали). Программ есть много (та же Recuva), но они не всегда могут помочь.