Então, esses tempos eu precisava disparar um evento sempre que o formulário fosse movimentado, aí procurei no Google e achei o procedimento:
procedure WMMove(var Message: TMessage) ; message WM_MOVE;
Esta procedimento retorna mensagens do Windows e aí conseguimos obter o deslocamento de uma janela, pois no Delphi não há um evento relacionado a isso.
Exemplo de uso:
unit untFilho;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, dxSkinsCore, dxSkinBlue, cxLookAndFeels, dxSkinsForm;
type
TfrmFilho = class(TForm)
private
{ Private declarations }
procedure WMMove(var Message: TMessage) ; message WM_MOVE;
public
{ Public declarations }
end;
var
frmFilho: TfrmFilho;
implementation
{$R *.dfm}
procedure TFrmFilho.WMMove(var Message: TMessage) ;
begin
frmFilho.Caption := Format('Formulário foi movimentado. Area x: %d, y:%d', [TWMMove(Message).XPos,TWMMove(Message).YPos]) ;
end;
end.
Para mais informações, segue alguns links:
http://docwiki.embarcadero.com/Libraries/XE2/en/Winapi.Messages.TWMMove
http://delphi.about.com/od/adptips2005/qt/formmovenotify.htm
Assinar:
Postar comentários (Atom)
-
Segue uma lista com inscrições estaduais para a realização de testes de software:
-
Então, eu estava com este problema ao abrir o VB. Eu não tinha feito nada e o erro ocorreu depois que eu desinstalei alguns programas no meu...
-
Código de exemplo para você que precisa remover de uma string espaços extras, como espaços duplos, por exemplo.
Nenhum comentário:
Postar um comentário