SetDlgItemText , editbox et selection

Résolu
waganono
Messages postés
7
Date d'inscription
samedi 30 octobre 2004
Statut
Membre
Dernière intervention
15 septembre 2006
- 30 août 2006 à 18:08
wxccxw
Messages postés
755
Date d'inscription
samedi 15 mai 2004
Statut
Membre
Dernière intervention
30 janvier 2011
- 30 août 2006 à 21:45
Salut

J'ai un petit problème avec une editbox rebelle :

En fait au démarrage de mon application (pure Win32), je fais un SetDlgItemText sur une editbox (ma dialog et mes contrôles sont dans les ressources), mais le problème est que le texte est sélectionné (surbrillance bleue).
J'ai le code suivant :

 case WM_INITDIALOG:
        ...
        blabla
        ....
        SetDlgItemText(Dlg,IDC_EDIT1,"SALUTE");
        return TRUE;

Comment faire pour que le texte ne soit pas surligné en bleu, y a une API pour ça?

11 réponses

waganono
Messages postés
7
Date d'inscription
samedi 30 octobre 2004
Statut
Membre
Dernière intervention
15 septembre 2006

30 août 2006 à 19:20
Merci de vos conseils, j'ai trouvé la soluce en enlevant la propriété TAB_STOP à mes contrôles editbox.

merci encore
3
vecchio56
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
22 août 2010
10
30 août 2006 à 18:46
Envoyer le message EM_SETSEL
Cela dit le comportement que tu décris m'étonne un peu

_____________________________________
Un éditeur de ressources gratuit pour Windows
0
BruNews
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
30 août 2006 à 18:49
C'est normal, le texte est dedans avant affichage fenêtre donc focus arrive sur edit car doit être le prmier dans l'ordre des tabulations.

ciao...
BruNews, MVP VC++
0
vecchio56
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
22 août 2010
10
30 août 2006 à 18:51
S'il retourne FALSE à WM_INITDIALOG ça ne règle pas le problème?

_____________________________________
Un éditeur de ressources gratuit pour Windows
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
BruNews
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
30 août 2006 à 19:00
On devrait toujours retourner 1 pour placer correctement le focus.

ciao...
BruNews, MVP VC++
0
waganono
Messages postés
7
Date d'inscription
samedi 30 octobre 2004
Statut
Membre
Dernière intervention
15 septembre 2006

30 août 2006 à 19:17
J'ai essayé de changer le focus (sur un 2ème editbox vide) juste après :

        SetDlgItemText(Dlg,IDC_EDIT1,"Wawaron");
        SetFocus(GetDlgItem(Dlg,IDC_EDIT2));

Mais celà ne règle pas le problème!
Comment puis je faire avec les tabulations ? c'est avec TAB_STOP?
0
vecchio56
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
22 août 2010
10
30 août 2006 à 19:41
C'est quand même pratique d'avoir la propriété WS_TABSTOP...
Pourquoi ne pas juste changer l'ordre des contrôles?

_____________________________________
Un éditeur de ressources gratuit pour Windows
0
BruNews
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
30 août 2006 à 19:47
case WM_INITDIALOG:
 ....
 ....
 ShowWindow(hdlg, SW_SHOW);
 SetDlgItemText(...);
 return TRUE;

et comme dit vecchio, laisse les tabulations à tes textbox.

ciao...
BruNews, MVP VC++
0
wxccxw
Messages postés
755
Date d'inscription
samedi 15 mai 2004
Statut
Membre
Dernière intervention
30 janvier 2011

30 août 2006 à 20:34
Fait plutot SetWindowText(GetDlgItem(DLG,ITEM),"TEXTE");
0
vecchio56
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
22 août 2010
10
30 août 2006 à 20:39
Je pense que c'est pareil, sauf que tu fais deux appels pour le prix d'un

_____________________________________
Un éditeur de ressources gratuit pour Windows
0
wxccxw
Messages postés
755
Date d'inscription
samedi 15 mai 2004
Statut
Membre
Dernière intervention
30 janvier 2011

30 août 2006 à 21:45
j'ai u des probleme avec SetDlgItemText j'utilise les deux autre fonction sa marche beaucoup mieux
0