powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / вскользь о CTreeCtrl в VC
25 сообщений из 59, страница 2 из 3
вскользь о CTreeCtrl в VC
    #33796441
Фотография Cerebrum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дьяка я вот тут хитрую вещь видел:
Код: plaintext
HTREEITEM AddString ( LPCTSTR lpszString);
Что вы об этом думаете? это не то что мне нужно?
это у кого такой метод, у CTreeCtrl? или это что-то самопальное, в производном классе
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33796695
Дьяк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
When accessing the control, call the ComboTree functions directly instead of sending messges. The following access functions which emulate their CComboBox equivalents are supported.

void SetWindowText (LPCTSTR Text);
CString GetWindowText ();
int GetLBText (HTREEITEM hItem, CString& rText);

HTREEITEM AddString ( LPCTSTR lpszString);
HTREEITEM FindString ( LPCTSTR lpszString,
                       HTREEITEM hParent = NULL);
HTREEITEM SelectString( LPCTSTR lpszString,
                        HTREEITEM hParent = NULL);
HTREEITEM GetCurSel ();
просто я подумал что этот метод можно как то применить для добавления этого уникального значения...
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33797125
Дьяк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а приведите, пожалуйста, конкретный пример добавления этих уникальных значений!
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33797162
Alexey-M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дьяк, для начала:
www.yandex.ru/yandsearch?rpt=rad&text=HTREEITEM
www.doc.mpv.ru/steps/mfc/steps/53.html
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33797185
Дьяк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
про HTREEITEM в яндексе я читал ещё в самом начале, только не нашел ответ на свой вопрос. поэтому обратился в этот форум. а что касается второй ссылки, она у меня не открывается, пишет невозможно отобразить страницу.
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33797543
Alexey-M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дьяк, вот тут то, что тебе надо:
http://www.codeproject.com/string/cstringmgmt.asp
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33798160
Дьяк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а как объявить TVINSERTITEMSTRUCT ? ругается что не знает такого
Код: plaintext
1.
2.
3.
4.
5.
6.
TVINSERTITEMSTRUCT tvi;
CString s;
// ... assign something to s
tvi.item.pszText = s; // Compiler yells at you here
// ... other stuff
HTREEITEM ti = m_tree.InsertItem(&tvi);		
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33798169
Дьяк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
подобный текст конечно ошибок не выдает:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
UpdateData(true);
TVINSERTSTRUCT tvi;
CString s;
LPTSTR pszText;
s="eeee";
tvi.item.pszText = (LPTSTR)(LPCTSTR)s;
HTREEITEM ti = m_tree.InsertItem(&tvi);
// operator dobavleniya ostal'nyh uzlov
UpdateData(false);
а что изменилось то от этого. я как раньше не мог получать из стрингового типа уникальное имя (напр. тоже hWA), что щас не могу... или я что то не так понял?
Код: plaintext
1.
hWA = m_tree.InsertItem(_T(m_edit), 0 ,  0 , ti, hPA);
как вот мне например написать вместо этого hWA (или ещё чего то в этом роде) например так:
Код: plaintext
ssssss = m_tree.InsertItem(_T(m_edit), 0 ,  0 , ti, hPA);
, где вместо ssssss подставится уникальный набор символов, который я сформировал предварительно в виде строки?
Искренне не понимаю как это сделать. догадываюсь что это легко, только пока решения проблеммы не вижу.....может все таки сможет ктонибудь четко написать как вообще это сделать?
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33798800
Дьяк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну а как вы вообще древовидный список создаете? из заранее известных узлов что ли?
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33798870
Alexey-M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как обычно , из таблицы какой нить БД со структурой Parent, Child. У тебя не должно быть проблем. Nodes "сы ты правильно определешь.
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33799180
Alexey-M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> как объявить TVINSERTITEMSTRUCT
#include <commctrl.h> и будет Вам счастье.
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33799627
Дьяк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
неа, всё-равно на этой строке выдает ошибку:
Код: plaintext
TVINSERTITEMSTRUCT tvi;   // 'TVINSERTITEMSTRUCT' : undeclared identifier
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33799846
Alexey-M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А MFC вы вообще объявили или как ?
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33799945
Дьяк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
#include "stdafx.h"
#include "afxwin.h"
#include "commctrl.h"
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33799947
Alexey-M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уже не смешно.
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33799994
Дьяк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
мне тоже не смешно. или я какую-то глупость несу?
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33799999
Дьяк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
#include "afxwin.h" у меня подключен
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33800102
Дьяк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
объясните что я не так сделал!
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33800901
Дьяк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
значит Вы не знаете почему у меня не работает? или я спорол какую-то глупость? ну хоть как-нибудь отреагируйте, а то, честное слово - не знаю что и думать!
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33800945
Дьяк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
подтолкните в нужном направлении! плиззз!!!!! эта затянувшаяся тема уже порядком достала, но и отступиться от неё не могу пока она не решится...
ну неужели здесь нет человека который бы это знал???!
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33801013
Alexey-M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты уже раз 20 сам ответил на свои вопросы. Может стоить собраться, а не заниматься моральным онанизмом.
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33801075
Дьяк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
НУ ДЫК ПРОГРАММА ТО НЕ РАБОТАЕТ! Ё-МОЁ!!! ЧЕ С НЕЙ ДЕЛАТЬ ТО????
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33801094
AlexSar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
М-дя :)
Дьяк, а как ты предполагаешь, что у тебя будет храниться все строками, они что, повторяющимися не могут быть?
Я рекомендую завести массив типа такого:
class CInfoTables
{
CString TableName;
LONG Code; // или что там в качестве индекса?
LONG CodeParent;
HTREEITEM Item;
}

Далее, когда ты делаешь InsertItem, не поленись записать в массив идентификатор итема, а в SetItemData - индекс этого массива.
И у тебя будет однозначная связь между строками и итемами, причем не по совпадению строки, а по ее индеску в БД. Вариант, сразу скажу, несколько корявый, поскольку CArray жрет много памяти. Но сама идея состоит в том, что связи эти тебе так или иначе придется построить.
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33801095
AlexSar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Забыл написать:

CArray<CInfoTables> m_arr;

m_arr .Item = m_tree.InsertItem("лалала", parent);
m_tree.SetItemData(m_arr.Item, i);

Пробуй!
...
Рейтинг: 0 / 0
вскользь о CTreeCtrl в VC
    #33801098
AlexSar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Круто здесь тэги работают )))
m_arr[k].Item = m_tree.InsertItem("лалала", parent);
m_tree.SetItemData(m_arr[k].Item, k);

Раньше было написано с i, а вместо индеска наклонный шрифт получился
...
Рейтинг: 0 / 0
25 сообщений из 59, страница 2 из 3
Форумы / C++ [игнор отключен] [закрыт для гостей] / вскользь о CTreeCtrl в VC
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]