![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как увидеть скрытый объект? [D6, WinXP]
17Landgraf © (2006-07-13 13:16:00)Добрый день!
Подскажите, пожалуйста.
Есть форма на которой расположены 3 кнопки, одна из них невидимая (Button3.hide). Как показать эту кнопку и узнать количество скрытых объектов (в данном случае 1)?
Если использовать код:
t:=FindWindow(nil,'Test');
Child := GetWindow(t, GW_CHILD);
while Child <> 0 do
begin
ShowWindow(Child, sw_show);
k:=k+1;// всего объектов
if GetClassName(Child, C, SizeOf(C)) > 0 then //считываем имя комп. в буфер
begin
S := StrPas(C); //преобразуем в строку
memo1.Lines.Add(S);
end;
Child := GetWindow(Child, GW_HWNDNEXT); // переход к след. компоненту
end;
Но этот алгоритм не видит скрытые объекты (.hide;).
Как сделать чтоб он увидил скрытые объекты и мог произвести подсчет?
17Landgraf (2006-07-13 14:37:00) [1]Этот вариант тоже исключать нельзя! Ладно буду копаться
Rouse_ (2006-07-13 14:26:00) [2]Возможность есть всегда. Только реализовать все это слишком долго.
> А вообще есть возможность его увидеть или "засечь" его,
> каким нибудь способом?
Как тебе такой вариант, что программист при скрытии объекта не скрывает его, а банально разрушает? А при показе создает заново...
17Landgraf (2006-07-13 14:21:00) [3]А вообще есть возможность его увидеть или "засечь" его, каким нибудь способом?
Rouse_ (2006-07-13 13:54:00) [4]Если объект VCL не разу небыл отображен, а был просто создан невидимым, то таким макаром ты его не найдешь, т.к. CreateWindow для объекта делается только при необходимости.