я использую TabControl с несколькими вкладками в моем приложении. И у меня возникла проблема с сокрытием дочернего элемента на вкладке. Я обычно скрываю элементы с
ShowWindow(hElementName, SW_HIDE))
и показать их с
ShowWindow(hElementName, SW_SHOW))
Но по какой-то причине он не работает для любого элемента, который находится внутри вкладок.
Я пробовал звонить
RedrawWindow(hElementName, NULL, NULL, RDW_INVALIDATE);
RedrawWindow(hTabElementName, NULL, NULL, RDW_INVALIDATE);
RedrawWindow(hTabControlElementName, NULL, NULL, RDW_INVALIDATE);
Но это не изменило поведение. Любой совет, что я могу делать здесь не так?
ОБНОВИТЬ:
Спасибо за ваши комментарии, Петерчен и Джонатан Поттер. Я действительно ценю вашу помощь с проблемой. У меня все еще есть та же проблема, хотя.
Что я сделал до сих пор:
У меня все та же проблема.
Еще одно наблюдение, которое я сделал:
Мое приложение имеет функцию, которая будет свернута в трей, а затем восстановлена. Я делаю это, скрывая главное окно приложения. Итак, вот что я заметил: если элемент на вкладке управления должен быть скрыт (а это не так), и я минимизирую и затем восстанавливаю приложение, после того как все окно перерисовано, элемент скрывается, как и ожидалось. Вот почему я на 100% уверен, что звоню ShowWindow
на правильном элементе и что я не показываю это где-то еще в коде. Это связано с тем, что элементы не перекрашиваются, но я не могу понять, в чем именно заключается проблема.
Задача ещё не решена.