treevieeeeeeeeewwwwwwwwwwwwwwww

C++ TreeView_Expand函数代码示例

本文整理汇总了C++中TreeView_Expand函数的典型用法代码示例。如果您正苦于以下问题:C++ TreeView_Expand函数的具体用法?C++ TreeView_Expand怎么用?C++ TreeView_Expand使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了TreeView_Expand函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: TreeView_Expand

▲ 点赞 6 ▼

HTREEITEM FileBrowser::createNewFolder(HTREEITEM hTreeItem, const TCHAR *folderName)
{
    HTREEITEM addedItem = _treeView.addItem(folderName, hTreeItem, INDEX_CLOSE_NODE);
    
    TreeView_Expand(_treeView.getHSelf(), hTreeItem, TVE_EXPAND);
    TreeView_EditLabel(_treeView.getHSelf(), addedItem);
    if (getNodeType(hTreeItem) == browserNodeType_folder)
        _treeView.setItemImage(hTreeItem, INDEX_OPEN_NODE, INDEX_OPEN_NODE);

    return addedItem;
}

开发者ID:fixfelix,项目名称:notepad-plus-plus,代码行数:11,代码来源:fileBrowser.cpp

示例2: wbSetTreeViewItemState

▲ 点赞 5 ▼

BOOL wbSetTreeViewItemState(PWBOBJ pwbo, HTREEITEM hItem, BOOL bExpand)
{
    if(!pwbo || !pwbo->hwnd || !IsWindow(pwbo->hwnd))
        return FALSE;

    if(!hItem)
        return FALSE;

//	return TreeView_Expand(pwbo->hwnd, hItem, TVE_TOGGLE);//bExpand ? TVE_EXPAND : TVE_COLLAPSE);
    return TreeView_Expand(pwbo->hwnd, hItem, bExpand ? TVE_EXPAND : TVE_COLLAPSE);
}

开发者ID:haithembenali,项目名称:WinBinder,代码行数:11,代码来源:wb_control_treeview.c

示例3: CATRESULT

▲ 点赞 3 ▼

CATResult CATTreeCtrl::ExpandItem(CATTREEINFO* item, bool expand)
{
    if (item == 0)
    {
        return CATRESULT(CAT_ERR_INVALID_PARAM);
    }
    ::ShowWindow(fControlWnd,SW_HIDE);
    TreeView_Expand(fControlWnd, item->ItemHandle, expand?TVE_EXPAND:TVE_COLLAPSE);
    ::ShowWindow(fControlWnd,IsVisible()?SW_SHOW:SW_HIDE);

    return CAT_SUCCESS;
}

开发者ID:michaelellison,项目名称:Mike-s-Demo-App,代码行数:12,代码来源:CATTreeCtrl_Win32.cpp

示例4: TreeView_ExpandRecursively

▲ 点赞 1 ▼

static void TreeView_ExpandRecursively(HWND hTree, HTREEITEM hItem, UINT flag, bool subtree=false)
{
    while (hItem) {
        TreeView_Expand(hTree, hItem, flag);
        HTREEITEM child = TreeView_GetChild(hTree, hItem);
        if (child)
            TreeView_ExpandRecursively(hTree, child, flag);
        if (subtree)
            break;
        hItem = TreeView_GetNextSibling(hTree, hItem);
    }
}

开发者ID:AnthonyLu-Ista,项目名称:sumatrapdf,代码行数:12,代码来源:TableOfContents.cpp

示例5: ExpandNode

▲ 点赞 1 ▼

    bool ExpandNode(_Ty Key, UINT fMask) {

        HTREEITEM hItem = KeyToHandle(Key);

        if (NULL != hItem) {

            return WND_TRUE(TreeView_Expand(m_hWnd, hItem, fMask));

        }

        return false;
    }

开发者ID:ryanlederman,项目名称:wlib,代码行数:12,代码来源:treeview.hpp

示例6: CONTEXT

▲ 点赞 1 ▼

HTREEITEM ShellBrowser::select_entry(HTREEITEM hitem, Entry* entry, bool expand)
{
    CONTEXT("ShellBrowser::select_entry()");

    if (expand && !TreeView_Expand(_left_hwnd, hitem, TVE_EXPAND))
        return 0;

    for(hitem=TreeView_GetChild(_left_hwnd,hitem); hitem; hitem=TreeView_GetNextSibling(_left_hwnd,hitem)) {
        if ((Entry*)TreeView_GetItemData(_left_hwnd,hitem) == entry) {
            if (TreeView_SelectItem(_left_hwnd, hitem)) {
                if (expand)
                    TreeView_Expand(_left_hwnd, hitem, TVE_EXPAND);

                return hitem;
            }

            break;
        }
    }

    return 0;
}

开发者ID:svn2github,项目名称:ros-explorer,代码行数:22,代码来源:shellbrowser.cpp

示例7:

▲ 点赞 1 ▼

bool
CDeviceView::ListDevicesByConnection()
{
    // Walk the device tree and add all the devices 
    (void)RecurseChildDevices(m_RootNode->GetDeviceInst(), m_hTreeRoot);

    // Expand the root item 
    (void)TreeView_Expand(m_hTreeView,
                          m_hTreeRoot,
                          TVE_EXPAND);

    return true;
}

开发者ID:Strongc,项目名称:reactos,代码行数:13,代码来源:DeviceView.cpp

示例8: InitCategoriesList

▲ 点赞 1 ▼

VOID
InitCategoriesList(VOID)
{
    HTREEITEM hRootItem1, hRootItem2;

    /* Create image list */
    hImageTreeView = ImageList_Create(TREEVIEW_ICON_SIZE,
                                      TREEVIEW_ICON_SIZE,
                                      GetSystemColorDepth() | ILC_MASK,
                                      0, 1);

    hRootItem1 = AddCategory(TVI_ROOT, IDS_INSTALLED, IDI_CATEGORY);
    AddCategory(hRootItem1, IDS_APPLICATIONS, IDI_APPS);
    AddCategory(hRootItem1, IDS_UPDATES, IDI_APPUPD);

    hRootItem2 = AddCategory(TVI_ROOT, IDS_AVAILABLEFORINST, IDI_CATEGORY);
    AddCategory(hRootItem2, IDS_CAT_AUDIO, IDI_CAT_AUDIO);
    AddCategory(hRootItem2, IDS_CAT_VIDEO, IDI_CAT_VIDEO);
    AddCategory(hRootItem2, IDS_CAT_GRAPHICS, IDI_CAT_GRAPHICS);
    AddCategory(hRootItem2, IDS_CAT_GAMES, IDI_CAT_GAMES);
    AddCategory(hRootItem2, IDS_CAT_INTERNET, IDI_CAT_INTERNET);
    AddCategory(hRootItem2, IDS_CAT_OFFICE, IDI_CAT_OFFICE);
    AddCategory(hRootItem2, IDS_CAT_DEVEL, IDI_CAT_DEVEL);
    AddCategory(hRootItem2, IDS_CAT_EDU, IDI_CAT_EDU);
    AddCategory(hRootItem2, IDS_CAT_ENGINEER, IDI_CAT_ENGINEER);
    AddCategory(hRootItem2, IDS_CAT_FINANCE, IDI_CAT_FINANCE);
    AddCategory(hRootItem2, IDS_CAT_SCIENCE, IDI_CAT_SCIENCE);
    AddCategory(hRootItem2, IDS_CAT_TOOLS, IDI_CAT_TOOLS);
    AddCategory(hRootItem2, IDS_CAT_DRIVERS, IDI_CAT_DRIVERS);
    AddCategory(hRootItem2, IDS_CAT_LIBS, IDI_CAT_LIBS);
    AddCategory(hRootItem2, IDS_CAT_OTHER, IDI_CAT_OTHER);

    (VOID) TreeView_SetImageList(hTreeView, hImageTreeView, TVSIL_NORMAL);

    (VOID) TreeView_Expand(hTreeView, hRootItem2, TVE_EXPAND);
    (VOID) TreeView_Expand(hTreeView, hRootItem1, TVE_EXPAND);

    (VOID) TreeView_SelectItem(hTreeView, hRootItem1);
}

开发者ID:rmallof,项目名称:reactos,代码行数:39,代码来源:winmain.c

示例9: GetDlgItem

▲ 点赞 1 ▼

void CPpcFolderDlg::OnBtnDown(HWND hDlg, WPARAM wParam)
{
    TV_ITEM tvi;
    HWND hWnd = GetDlgItem(hDlg, IDC_TREE_FOLDER);
    HTREEITEM hItem = TreeView_GetSelection(hWnd);
    if (!hItem)
        return;

    memset(&tvi, 0, sizeof(tvi));
    tvi.mask = TVIF_CHILDREN | TVIF_STATE;
    tvi.hItem = hItem;
    TreeView_GetItem(hWnd, &tvi);

    if (tvi.cChildren) {
        if (wParam == VK_RIGHT) {
            if (!(tvi.state & TVIS_EXPANDED))
                TreeView_Expand(hWnd, hItem, TVE_EXPAND);
            else {
                hItem = TreeView_GetChild(hWnd, hItem);
                TreeView_SelectItem(hWnd, hItem);
            }
        }
        else {
            if (tvi.state & TVIS_EXPANDED)
                TreeView_Expand(hWnd, hItem, TVE_COLLAPSE);
            else {
                hItem = TreeView_GetParent(hWnd, hItem);
                TreeView_SelectItem(hWnd, hItem);
            }
        }
    }
    else {
        if (wParam == VK_LEFT) {
            hItem = TreeView_GetParent(hWnd, hItem);
            TreeView_SelectItem(hWnd, hItem);
        }
    }
}

开发者ID:afriza,项目名称:GSPlayer,代码行数:38,代码来源:PpcFolderDlg.cpp

示例10: RecursiveCreateTree

▲ 点赞 1 ▼

void RecursiveCreateTree(HTREEITEM parent, HTREEITEM pos, PROJECTITEM *proj)
{
    while (proj)
    {
           TVInsertItem(prjTreeWindow, parent, pos, proj);
        ResAddItem(proj);
        if (proj->children)
        {
            RecursiveCreateTree(proj->hTreeItem, TVI_LAST, proj->children);
            TreeView_Expand(prjTreeWindow, proj->hTreeItem, proj->expanded ? TVE_EXPAND : TVE_COLLAPSE);
        }
        proj = proj->next;
    }
}

开发者ID:bencz,项目名称:OrangeC,代码行数:14,代码来源:prjwnd.c

示例11: TreeView_DeleteItem

▲ 点赞 1 ▼

bool NGMainWnd::onnet_directories(const string &path, const vector<string> &directories, const vector<dword> &types, const vector<dword> &childrens) {
    HTREEITEM hparent = NULL;

    // find the parent treenode in the path list
    for (dword i = 0; i < browsenodes.size(); i++) {
        if (browsenodes[i].path.compare(path) == 0) {
            hparent = browsenodes[i].hnode;
            break;
        }
    }
    if (hparent != NULL) {
        // delete previous children
        for (long i = (browsenodes.size() - 1); i >= 0; i--) {
            if (browsenodes[i].hparent == hparent) {
                TreeView_DeleteItem(this->hbrowsewnd, browsenodes[i].hnode);
                browsenodes.erase(browsenodes.begin() + i);
            }
        }

        // append new children
        for (dword i = 0; i < directories.size(); i++) {
            if (childrens[i] > 0) {
                this->client->request_bw_getdirectories(path + directories[i]);
            }

            // update tree items
            TVINSERTSTRUCT tvi;

            memset(&tvi, 0, sizeof(TVINSERTSTRUCT));
            tvi.hParent = hparent;
            tvi.hInsertAfter = TVI_LAST;
            tvi.itemex.mask = TVIF_CHILDREN | TVIF_IMAGE | TVIF_TEXT;
            if (childrens[i] > 0) {
                tvi.itemex.cChildren = 1;
            } else {
                tvi.itemex.cChildren = 0;
            }
            tvi.itemex.pszText = (LPSTR)directories[i].c_str();
            tvi.itemex.iImage = ICON_MAIN;
            this->browsenodes.push_back(PathNode(hparent, TreeView_InsertItem(this->hbrowsewnd, &tvi), path + directories[i] + "/", types[i]));
        }

        // if root, auto-expand
        if (path.compare("/") == 0) {
            TreeView_Expand(this->hbrowsewnd, hparent, TVE_EXPAND);
        }
    }
    return true;
}

开发者ID:nitrotm,项目名称:ngwinamp2,代码行数:49,代码来源:mainwnd_netevents.cpp

示例12: TreeView_ExpandAll

▲ 点赞 1 ▼

    // TreeView 全開・全閉
    void TreeView_ExpandAll(HWND hwndTree, bool bExpand, int nMaxDepth)
    {
        HTREEITEM	htiCur;
        HTREEITEM	htiItem;
        HTREEITEM	htiNext;

        ::SendMessageAny(hwndTree, WM_SETREDRAW, (WPARAM)FALSE, 0);

        htiCur = htiItem = TreeView_GetSelection( hwndTree );
        if (!bExpand && htiCur != NULL) {
            // 閉じる時はトップに変更
            for (htiNext = htiCur; htiNext !=  NULL; ) {
                htiItem = htiNext;
                htiNext = TreeView_GetParent( hwndTree, htiItem );
            }
            if (htiCur != htiItem) {
                htiCur = htiItem;
                TreeView_SelectItem( hwndTree, htiCur );
            }
        }

        std::vector<HTREEITEM> tree;
        HTREEITEM item = TreeView_GetRoot(hwndTree);
        while( 0 < tree.size() || item != NULL ){
            while(item != NULL && (int)tree.size() < nMaxDepth ){
                // 先に展開してからGetChildしないと、ファイルツリーのサブアイテムが展開されない
                TreeView_Expand(hwndTree, item, bExpand ? TVE_EXPAND : TVE_COLLAPSE);
                tree.push_back(item);
                item = TreeView_GetChild(hwndTree, item);
            }
            item = tree.back();
            tree.pop_back();
            item = TreeView_GetNextSibling(hwndTree, item);
        }

        // 選択位置を戻す
        if (htiCur == NULL) {
            if (bExpand ) {
                htiItem = TreeView_GetRoot( hwndTree );
                TreeView_SelectSetFirstVisible( hwndTree, htiItem );
            }
            TreeView_SelectItem( hwndTree, NULL );
        }
        else {
            TreeView_SelectSetFirstVisible( hwndTree, htiCur );
        }

        ::SendMessageAny(hwndTree, WM_SETREDRAW, (WPARAM)TRUE, 0);
    }

开发者ID:beru,项目名称:sakura,代码行数:50,代码来源:StdControl.cpp

示例13: wcschr

▲ 点赞 1 ▼

/*
** Selects an item in the treeview.
**
*/
void CDialogManage::CTabSkins::SelectTreeItem(HWND tree, HTREEITEM item, LPCWSTR name)
{
    WCHAR buffer[MAX_PATH];
    TVITEM tvi = {0};
    tvi.mask = TVIF_TEXT;
    tvi.hItem = item;
    tvi.pszText = buffer;

    const WCHAR* pos = wcschr(name, L'\\');
    if (pos)
    {
        const int folderLen = (int)(pos - name);
        tvi.cchTextMax = folderLen + 1;		// Length of folder name plus 1 for NULL

        // Find and expand the folder
        do
        {
            TreeView_GetItem(tree, &tvi);
            if (wcsncmp(buffer, name, folderLen) == 0)
            {
                if ((item = TreeView_GetChild(tree, tvi.hItem)) != NULL)
                {
                    TreeView_Expand(tree, tvi.hItem, TVE_EXPAND);
                    ++pos;	// Skip the slash
                    SelectTreeItem(tree, item, pos);
                }

                break;
            }
        }
        while ((tvi.hItem = TreeView_GetNextSibling(tree, tvi.hItem)) != NULL);
    }
    else
    {
        tvi.cchTextMax = MAX_PATH;

        // Find and select the file
        do
        {
            TreeView_GetItem(tree, &tvi);
            if (wcscmp(buffer, name) == 0)
            {
                TreeView_Select(tree, tvi.hItem, TVGN_CARET);
                break;
            }
        }
        while ((tvi.hItem = TreeView_GetNextSibling(tree, tvi.hItem)) != NULL);
    }
}

开发者ID:JamesAC,项目名称:rainmeter,代码行数:53,代码来源:DialogManage.cpp

示例14: lockManager

▲ 点赞 1 ▼

bool SimTreeView::handleItemCollapse( HTREEITEM hParent, HTREEITEM hItem )
{
   hParent;
    lockManager();
   TV_ITEM *tvi = treeList.getItemInfo( hItem );
   SimObject *obj = getObject( hItem );
   if ( dynamic_cast<SimSet*>(obj) )
   {
      tvi->mask = TVIF_IMAGE;
      tvi->iImage = handleGetBitmapIndex( hItem, false );
      TreeView_SetItem( treeList.getHandle(), tvi );
   }   
   TreeView_Expand( treeList.getHandle(), hItem, TVE_COLLAPSE|TVE_COLLAPSERESET );
    unlockManager();
   return true;
}   

开发者ID:AltimorTASDK,项目名称:TribesRebirth,代码行数:16,代码来源:simTreeView.cpp

示例15: str

▲ 点赞 1 ▼

void CFolderDlg::OnInitDialog(HWND hDlg)
{
    CTempStr str(IDS_ROOT_FOLDER_NAME);
    ShellInitDialog(hDlg);
    HWND hTreeView = GetDlgItem(hDlg, IDC_TREE_FOLDER);

    m_bRefresh = FALSE;
    m_hImageList = NULL;
    HICON hIcon;

    //イメージリスト作成
    m_hImageList = ImageList_Create(SCALEX(16), SCALEY(16), ILC_COLOR|ILC_MASK, 1, 2);

    hIcon = (HICON)LoadImage(GetInst(), (LPCTSTR)IDI_ROOT, IMAGE_ICON, SCALEX(16), SCALEY(16), 0);
    ImageList_AddIcon(m_hImageList, hIcon);
    DeleteObject(hIcon);

    SHFILEINFO shfi;
    SHGetFileInfo(_T("\\Windows"), NULL, &shfi, sizeof(shfi), SHGFI_SMALLICON | SHGFI_ICON);
    ImageList_AddIcon(m_hImageList, shfi.hIcon);

    TreeView_SetImageList(hTreeView, m_hImageList, TVSIL_NORMAL);
    SetWindowLong(hTreeView, GWL_STYLE, GetWindowLong(hTreeView, GWL_STYLE)|TVS_HASBUTTONS|TVS_HASLINES|TVS_SHOWSELALWAYS);
    
    //フォルダ読み込み
    HCURSOR hCursor = SetCursor(LoadCursor(NULL, IDC_WAIT));

    TVINSERTSTRUCT tvis;
    tvis.hParent = NULL;
    tvis.hInsertAfter = TVI_SORT;
    tvis.item.mask = TVIF_TEXT | TVIF_IMAGE | TVIF_SELECTEDIMAGE | TVIF_CHILDREN;
    tvis.item.pszText = str;
    tvis.item.iImage = 0;
    tvis.item.iSelectedImage = 0;
    tvis.item.cChildren = 1;
    HTREEITEM hRoot = TreeView_InsertItem(hTreeView, &tvis);
    TreeView_Expand(hTreeView, hRoot, TVE_EXPAND);

    //カレントフォルダをセット
    SetCurrentFolder(hTreeView, m_pszPath);

    if (m_bSubFolder)
        SendMessage(GetDlgItem(hDlg, IDC_CHECK_SUBFOLDER), BM_SETCHECK, 1, 0);

    SetCursor(hCursor);
}

开发者ID:v-zaburdaev,项目名称:Gsplayer2,代码行数:46,代码来源:FolderDlg.cpp

注:本文中的TreeView_Expand函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值