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

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

Ну ответьте плиз


MisterBin ©   (2002-05-09 15:41:00) 

Допустим, имеется чужое окно. На нём:

Label1, Button1.
Label1.Enabled:=False;
Button1.Enabled:=False;

Заметьте, что это именно чужое постороннее окно.
При нажатии на кнопку, когда она активна, Label1 тоже переходит в значение ENABLED:=TRUE;

Вопрос:
Как написать свою программу, которая делает такое:
При наведении курсора на чужое окно (в данном случае, описанное выше) неактивная кнопка должна стать активной. Т.е. нужно, чтобы программа меняла значения Enabled других программ.

Если кто-то знает, но нехочит тут говорить, пишите на stas_savelnikov@ukr.net

Можно код?


ION T   (2002-05-09 22:16:00) [1]

Ошибочка вышла - процедуру надо назвать EnableWindowUnderCursor() а не Toggle...()


ION T   (2002-05-09 22:13:00) [2]

Шо-то типа такого:

procedure ToggleWindowUnderCursor;
var hndl: hwnd;
pt: TPoint;
wInfo: TWindowInfo;
begin
fillchar(pt, sizeof(pt), 0);
GetCursorPos(pt);
hndl:= WindowFromPoint(pt);
windows.ScreenToClient(hndl, pt);
hndl:= ChildWindowFromPointEx(hndl, pt, CWP_SKIPINVISIBLE);
fillchar(wInfo, sizeof(wInfo), 0);
GetWindowInfo(hndl, wInfo);
if (wInfo.dwStyle and ws_disabled= ws_disabled) and
(MessageDlg("Do you want to enable the window?", mtConfirmation, [mbYes, mbNo], 0)= mrYes) then
EnableWindow(hndl, true);
end;


Вызывать можешь по таймеру...


Song   (2002-05-09 21:43:00) [3]

EnableWindow()


Наверх

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