fonction DPA_Merge (dpa_dsa.h)
[DPA_Merge est disponible via Windows XP avec Service Pack 2 (SP2). Il peut être modifié ou indisponible dans les versions suivantes.]
Combine le contenu de deux tableaux de pointeurs dynamiques (DPA).
Syntaxe
BOOL DPA_Merge(
[in, out] HDPA hdpaDest,
[in] HDPA hdpaSrc,
[in] DWORD dwFlags,
[in] PFNDACOMPARE pfnCompare,
[in] PFNDPAMERGE pfnMerge,
[in] LPARAM lParam
);
Paramètres
[in, out] hdpaDest
Type : HDPA
Handle du premier DPA. Ce tableau peut être éventuellement pré-trié. Lorsque cette fonction retourne, contient le handle du tableau fusionné.
[in] hdpaSrc
Type : HDPA
Handle du deuxième DPA. Ce tableau peut être éventuellement pré-trié.
[in] dwFlags
Type : DWORD
Options déterminant la méthode utilisée pour fusionner les deux tableaux. DPAM_NORMAL, DPAM_UNION et DPAM_UNION s’excluent mutuellement : un seul de ces indicateurs peut être défini, éventuellement conjointement avec DPAM_SORTED.
Valeur | Signification |
---|---|
|
Les tableaux sont pré-triés ; ignorer le tri. Si cet indicateur n’est pas défini, les tableaux sont triés avant leur fusion. |
|
Le tableau final se compose de tous les éléments initialement présents dans hdpaDest. Si l’un de ces éléments se trouve également dans hdpaSrc, ces éléments sont fusionnés dans le tableau final. La fonction de rappel PFNDPAMERGE est appelée avec le message DPAMM_MERGE.
Lorsque cet indicateur est défini, la taille finale du tableau à hdpaDest est identique à sa taille initiale. |
|
Le tableau final est l’union de tous les éléments des deux tableaux. Les éléments trouvés dans les deux tableaux sont fusionnés dans le tableau final. Les éléments trouvés dans un seul tableau ou l’autre sont ajoutés tels qu’ils ont été trouvés. Lorsque cet indicateur est défini, la fonction de rappel PFNDPAMERGE peut être appelée avec le message DPAMM_MERGE ou DPAMM_INSERT.
La taille finale du tableau correspond au moins à la taille du plus grand de hdpaDest et hdpaSrc, et au plus la somme des deux. |
|
Seuls les éléments trouvés dans hdpaSrc et hdpaDest sont fusionnés pour former le tableau final. Lorsque cet indicateur est défini, la fonction de rappel PFNDPAMERGE peut être appelée avec le message DPAMM_MERGE ou DPAMM_DELETE.
La taille finale du tableau peut varier entre 0 et la plus petite de hdpaDest et hdpaSrc. |
[in] pfnCompare
Type : PFNDPACOMPARE
Fonction de rappel PFNDPACOMPARE qui compare deux éléments, un de chaque DPA, pour déterminer s’il s’agit du même élément. Si c’est le cas, la fonction de rappel pointée par pfnCompare est appelée.
[in] pfnMerge
Type : PFNDPAMERGE
Fonction de rappel PFNDPAMERGE qui fusionne le contenu lorsqu’un élément se trouve dans les deux DPA et qu’il s’avère être le même élément par PFNDPACOMPARE.
[in] lParam
Type : LPARAM
Paramètre supplémentaire utilisé pour déclarer la base de comparaison sur laquelle l’égalité est déterminée.
Valeur retournée
Type : BOOL
TRUE en cas de réussite ; sinon, FALSE.
Remarques
DPA_Merge n’est pas exporté par nom. Pour l’utiliser, vous devez utiliser GetProcAddress et demander l’ordinal 11 à ComCtl32.dll pour obtenir un pointeur de fonction.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | dpa_dsa.h |
DLL | Comctl32.dll (version 5.0 ou ultérieure) |