Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.04;
Скачать: [xml.tar.bz2];




Вниз

Кто-нибудь знает что мне выдает функция EnumProps 


AlexandrH   (2001-12-06 14:26) [0]

Хочу получить список свойств окна.
Делаю так.

procedure TForm1.Button1Click(Sender: TObject);
begin
EnumProps(Handle,@PROC);
end;

function PROC (WND: hwnd; PSTR: String; HData: hwnd) : boolean; stdcall;
begin
Form1.ListBox1.Items.Add(pstr);
PROC := True;
end;



В листбокс она мне выдает три строки
типа
ControlOfs000...
Delphi00000344
CC32Subclassinfo

Что то на свойства не похоже. Может я делаю что-то не так..
Подскажите если кто знает..
Заранее благодарен.



Digitman   (2001-12-06 14:55) [1]

это - из хэлпа :

BOOL CALLBACK PropEnumProc(

HWND hwnd, // handle to window whose property list is being enumerated
LPCTSTR lpszString, // string component of property
HANDLE hData // data handle component of property
);

function PROC (WND: hwnd; PSTR: PChar; HData: hwnd) : boolean; stdcall;
begin
Form1.ListBox1.Items.Add( string(pstr));
PROC := True;
end;

LPCTSTR - это PChar(PAnsiChar), а не String



Юрий Зотов   (2001-12-06 15:41) [2]

> AlexandrH © (06.12.01 14:26)

Похоже, Вы путаете свойства окон Windows и свойства форм Delphi. Это совершенно разные вещи.



AlexandrH   (2001-12-07 06:28) [3]

Хорошо попробуем не Delphi_скую форму
делаю так


procedure TForm1.Button1Click(Sender: TObject);
var
h: HWND;
begin
h := Findwindow("TWINDOWSCMD",nil);
EnumProps(h,@PROC);
end;

function PROC (WND: hwnd; PSTR: PChar; HData: hwnd) : boolean; stdcall;
begin
Form1.Memo1.Lines.Add(pstr);
PROC := True;
end;


Выдает не лучше первого 4 строки

ControlOfs00400000000003C0
Delphi00000114
OleDropTargetInterface
OleDropTargetMarshalHwnd

Что это ни как не пойму.....



Digitman   (2001-12-07 08:01) [4]

>AlexandrH
Ок. А что ты ожижал увидеть среди перечисленных св-в ?



troits   (2001-12-07 10:52) [5]

>AlexandrH
Почитайте API Help. Раздел Window Property Functions.
В кратце, к каждому окну можно добавить некоторое свойство, которое
идентифицируется строкой и handle(любая, какая тебе нравится, информация. Потом это окно можно будет по этим свойствам идентифицировать, и т. д.). См. SetProp. EnumProps позволяет просто перебрать эти свойства. Так что установка этох свойств - личное дело каждого приложения.

К слову, Windows Commander написан на Delphi.





Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.04;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.015 c
1-8821            Anton Shestakov       2002-01-20 00:39  2002.02.04  
DateTimePicker


3-8766            Designer              2002-01-06 12:56  2002.02.04  
Можно ли как-нибудь отсортированные данныепотом редактировать в гриде?


1-8889            Still Swamp           2002-01-16 17:46  2002.02.04  
как подключить DLL для Designtime


1-8925            Dmitriy_R             2002-01-15 10:49  2002.02.04  
Создание файла?


7-9016            Trot                  2001-10-12 06:47  2002.02.04  
Перехват обращения к LPT!