当前位置: 首页>>代码示例>>C++>>正文


C++ ListBox::GetCurrentSelection方法代码示例

本文整理汇总了C++中ListBox::GetCurrentSelection方法的典型用法代码示例。如果您正苦于以下问题:C++ ListBox::GetCurrentSelection方法的具体用法?C++ ListBox::GetCurrentSelection怎么用?C++ ListBox::GetCurrentSelection使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ListBox的用法示例。


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

示例1: FillTypeArray

void FillTypeArray(
		ListBox& ListMajor, 
		ListBox& ListMinor,
		GUID *atypes, 
		int nIndex, 
		DWORD *pdwPairs
	)
{
    UINT nMajorSel = 0, nMinorSel = 0; 
		
	BOOL result = ListMajor.GetCurrentSelection(&nMajorSel);
    // If no selection ("don't care"), just exit without modifying the array
	if (!result || nMajorSel == 0)
	{
        return;
	}

    // Get GUID for major type
    const GUID *p1 = (const GUID *)ListMajor.GetItem(nMajorSel);

    // Since the FilterMapper interface requires GUIDs (instead of GUID *),
    // copy the specified GUID data into its array slot.
    if (p1)
	{
        memcpy(&atypes[nIndex], p1, sizeof(GUID));
	}
    else
	{
        memset(&atypes[nIndex], 0, sizeof(GUID));
	}

    // Increment number of type/subtype pairs
    (*pdwPairs)++;

	result = ListMinor.GetCurrentSelection(&nMinorSel);

    // If no selection ("don't care"), or uninitialized (returning -1),
    // just exit without modifying the array
    if (!result || nMinorSel == 0)
	{
        return;
	}
    
    // Get GUID for subtype
    const GUID *p2 = (const GUID *)ListMinor.GetItem(nMinorSel);

    if (p2)
	{
        memcpy(&atypes[nIndex+1], p2, sizeof(GUID));
	}
    else
	{
        memset(&atypes[nIndex+1], 0, sizeof(GUID));
	}
}
开发者ID:AbdoSalem95,项目名称:WindowsSDK7-Samples,代码行数:55,代码来源:maindialog.cpp

示例2: EnableSecondTypePair

void EnableSecondTypePair(
		ListBox& ListMajor, 
        ListBox& ListMajor2, 
		ListBox& ListMinor2
	)
{
    // If there is no selection in the first major type listbox,
    // clear and disable the second major/minor type listboxes.

	UINT selection = 0;
	ListMajor.GetCurrentSelection(&selection);

    if (selection == 0)
    {
        ListMajor2.Select(0);
        FillSubType(ListMajor2, ListMinor2);

        ListMajor2.Enable(FALSE);
        ListMinor2.Enable(FALSE);
    }
    else
    {
        ListMajor2.Enable(TRUE);
        ListMinor2.Enable(TRUE);
    }
}
开发者ID:AbdoSalem95,项目名称:WindowsSDK7-Samples,代码行数:26,代码来源:maindialog.cpp

示例3: FillSubType

void FillSubType(ListBox& listboxMajor, ListBox& listboxMinor)
{
    const GUIDINFO *pSubtype;
    UINT nSelection = 0;
	
	listboxMajor.GetCurrentSelection(&nSelection);
    int nMajorType;

    // First clear the subtype list
    listboxMinor.ClearItems();

    // If the "don't care" item was selected, clear and exit
    if (nSelection == 0)
    {
        listboxMinor.AddString(L"<No subtypes>\0");
        listboxMinor.Select(0);
        return;
    }
    else
	{
        nMajorType = nSelection - 1;
	}

    // Determine how to fill the minor type list, based on the
    // currently selected major type.
    pSubtype = pSubTypes[nMajorType];

    // If there's no associated subtype, just add a default
    if (!pSubtype)
    {
        listboxMinor.AddString(L"<No subtypes>\0");
        listboxMinor.Select(0);
        return;
    }
    else
    {
        // Set a default item for "don't care"
        listboxMinor.AddString(L"<Don't care>\0");

        int i=0;

        // Fill the subtype list box.  Enter N item data to the N+1 list slot.
        while (pSubtype[i].pGUID != NULL)
        {
            listboxMinor.AddItem(pSubtype[i].szName, (void *) pSubtype[i].pGUID);
            i++;
        }

        listboxMinor.Select(0);
    }
}
开发者ID:AbdoSalem95,项目名称:WindowsSDK7-Samples,代码行数:51,代码来源:maindialog.cpp


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