Мне нужно создать C++, VSPackage, который содержит TreeView. Я добавил один из диалогового окна по умолчанию ресурса сценария проекта (* .rc) из окна панели инструментов. Проблема в том, что я не знаю, как добавлять к нему элементы.Как заполнить TreeView в сценарии ресурсов
Я просмотрел многие веб-сайты, но у них есть код для C# или других проектов.
Я нашел проект, сделанный Song Ho Ahn, а также исходный код, который находится в нижней части этого сайта TreeView.
Я попытался перейти в окно свойств TreeView, чтобы узнать, есть ли что-то, чтобы я мог добавлять к нему элементы, а затем найти способ их замены, но ничего. Я попытался использовать написанный мной код, чтобы помочь мне найти решение моей проблемы, но я не смог его найти. Может быть, это «обработчик» и «родитель», который я не знаю, как использовать.
void set(HWND parent, int id, bool visible=true)
{
this->parent = parent;
handle = GetDlgItem(parent, id);
if(!visible) disable();
}
Я хочу отметить, что я новичок в VSPackage и что я не сделал проект такой большой прежде.
Если кто-нибудь может объяснить мне, что делать, отправить меня на путь или даже сказать, что я глуп, и решение является простым, я буду очень этому благодарен.
Спасибо за ответ. У меня есть 2 проблемы, и мне удалось решить только 1. Проблема, которую я решил, заключается в том, что я не мог использовать образец кода, который вы предоставили в «MyToolWindow.h», и должен был создать для него новый файл заголовка (простое решение). Вторая проблема заключается в том, что я попытался присвоить «GerDlgItem» другой переменной, например «HWND hItemWnd = GetDlgItem (hWndCtl, IDC_RESULTS_TREE); ». Проблема заключается в том, что «hItemWnd» не изменяется (наблюдается при отладке). Разве это не другой способ, который не использует «GetDlgItem»? Спасибо и хорошего дня. – Flavius
Функция GetDlgItem (..) возвращает дескриптор дочернего окна с данным идентификатором. Поэтому HWND должен быть таким, как в окне, содержащем TreeView. Если GetDlgItem (..) возвращает NULL, произошла ошибка (обычно неправильные входные данные, особенно неправильные HWND). Можете ли вы предоставить еще какой-нибудь код? Это немного сложно «представить» вашу проблему ... ;-) –
Проблема в том, что это большой VSPackage, поэтому я могу только дать вам код для окна инструментов и код, который я использую из mr. Песня Хо Ан. Вы можете скачать файлы здесь: [link] (https://www.dropbox.com/sh/crx3xjck1886ys0/AABQXHGi9_L0XmjbmQleCZqpa?dl=0). Если вы хотите, я могу предоставить вам доступ для чтения на BitBucket. – Flavius