Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как узнать какая структура находится под крысой: ListBox, Edit, Button и т.д. [D5, Win95/98, Win2k]


Renard ©   (2002-01-15 23:15:00) 

Сабж. Если не трудно приведите пример плз.


Renard   (2002-01-16 04:08:00) [1]

Спасибо


Dimaond Cat   (2002-01-16 00:16:00) [2]

Пример приведенный ниже будет работать только на твоей форме, если надо сделать рабочесть по всем окнам, то можно сделать проверку по таймеру (но это не красиво) либо через общий перехват сообщений.
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
Memo1: TMemo;
procedure FormCreate(Sender: TObject);
private

{ Private declarations }
public
procedure mymes(var mes:Tagmsg;var Handled:boolean);
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure Tform1.mymes(var mes:Tagmsg;var Handled:boolean);
var
c:Array [0..max_path] of char;
begin
if mes.message=wm_mousemove then
begin
getclassname(windowfrompoint(mes.pt),c,sizeof(c));
form1.Caption:=c;
end;
inherited;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
application.OnMessage:=mymes;
end;

end.


Наверх

Титульная страница Поиск, карта сайта Написать письмо