PathSetDlgItemPath()

Résolu
cs_AlexMAN Messages postés 1536 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 24 mai 2009 - 5 avril 2005 à 22:03
cs_AlexMAN Messages postés 1536 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 24 mai 2009 - 6 avril 2005 à 18:57
Bonsoir,

J'ai besoin d'utiliser PathSetDlgItemPath() sous Windows Mobile, mais shlwapi.lib n'etant pas utilisable, j'ai decidé de la coder, mais voila, le resultat n'est pas le meilleur qu'on puisse esperer (bien que cela fonctionne). Le probleme vient du mauvais calcul du nombre maximum de caracteres que l'on peut ecrire dans un controle (STATIC ou EDIT). Voila comment je procede :

- Je sous classe mon controle
-A la reception de WM_SETTEXT, j'execute ce petit bout de code :


hdc = GetDC(hwnd);




GetClientRect(hwnd, &rct);


GetTextMetrics(hdc, &tm);



iMax = rct.right / tm.tmAveCharWidth;

Mais le nombre de caracteres que je recois ne correspond pas a ce que je peux ecrire au maximum. Si Quelqu'un a une idée de comment proceder, je ne vois pas comment faire autrement :|

Merci d'avance.

+2(p - n)

2 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
5 avril 2005 à 23:29
C'est bien pour simuler un SS_PATHELLIPSIS ???
Avec GetTextExtentPoint32() se fait très bien, faut juste une boucle.

ciao...
BruNews, MVP VC++
3
cs_AlexMAN Messages postés 1536 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 24 mai 2009 1
6 avril 2005 à 18:57
C'est parfait, ca fonctionne maintenant, merci encore BruNews.

+2(p - n)
0
Rejoignez-nous