Показать сообщение отдельно
  #1  
Старый 11.03.2020, 06:26
Maetsky Maetsky вне форума
Прохожий
 
Регистрация: 06.11.2018
Сообщения: 8
Версия Delphi: Delphi 2009
Репутация: 10
По умолчанию Не работает Hint

Пишу гаджет. В модуле формы прописан такой код:
Код:
bool SetToDesktop() {
  HWND listViewhwnd = FindWindowA("Progman", NULL);
  if(listViewhwnd) {
	listViewhwnd = FindWindowExA(listViewhwnd, NULL, "SHELLDLL_DefView", NULL);
	if(listViewhwnd) {
	  listViewhwnd = FindWindowExA(listViewhwnd, NULL, "SysListView32", NULL);
	  if(listViewhwnd) {
		Form1->BorderStyle = bsNone;
		::SetParent(Form1->Handle, listViewhwnd);
		return true;
	  }
	}
  }
  return false;
}
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
	: TForm(Owner)
{      
  if(!SetToDesktop())ShowMessage("Ошибка SetToDesktop");
}
В программе не отображаются всплывающие подсказки на всех объектах, хотя свойства ShowHint заданы в true. Если закомментировать
Код:
::SetParent(Form1->Handle, listViewhwnd);
, , то подсказки появляются. В каком направлении рыть?
Ответить с цитированием