begin process at 2010 02 10 09:37:35
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Windows

 > 

GUI

 > 

contrôle EDIT retour à la ligne forcé


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

contrôle EDIT retour à la ligne forcé

mardi 23 octobre 2007 à 18:54:41 | contrôle EDIT retour à la ligne forcé

paramotdam

Bonjour,
J'ai créer une fenêtre (un peu comme msn) et j'ai créer un EDIT :

hEdit[0]=CreateWindow("EDIT", "", WS_CHILD | WS_VISIBLE | ES_MULTILINE | ES_WANTRETURN | WS_VSCROLL | ES_AUTOVSCROLL | WS_THICKFRAME,
             0, 250, 300, 60,fenetrePrincipale,NULL,instance,NULL);

Dans mon EDIT, quand je tape du texte et que je fait Entrée, mon curseur revient à la ligne. Je voudrais que sa envoie le message avec ID_B_ENVOYER qui est à 1. J'aimerais ne pas changer les options de la création de mon EDIT.
Est-ce possible ?

De plus, j'aimerais changer la couleur de fond pour mon EDIT.
J'ai mis ce code :

        case WM_CTLCOLOREDIT:
            if((HWND)lParam == hEdit[0])
            {
                SetTextColor((HDC)wParam, RGB(213, 213, 222));
                SetBkColor((HDC)wParam, RGB(91, 33, 61));
                return (LRESULT)hbEdit;
            }
         else
            return DefWindowProc(fenetrePrincipale, message, wParam, lParam);
        return FALSE;

Le problème, sa ne change que la première ligne de couleur :S.
Merci de votre aide,
Damien
mardi 23 octobre 2007 à 20:00:23 | Re : contrôle EDIT retour à la ligne forcé

juju12

Réponse acceptée !
Pour ton 1er problème faut que tu vires le style ES_WANTRETURN => quand tu fais entrée il appelera automatiquement le push boutton par défaut de la fenêtre. Tu peux toujours ajouter un CR dans le code après pour aller effectivement à la ligne dans l'edit.

Pour ton 2ème problème, si tu ne trouves pas mieux, tu peux sous-classer le contrôle et traiter le message WM_ERASEBKGND.
mardi 23 octobre 2007 à 22:55:13 | Re : contrôle EDIT retour à la ligne forcé

paramotdam

merci de ta réponse, mon 2ièm problème est réglé. Pour le premier, j'ai enlever ES_WANTRETURN et quand je fais Entrée, sa donne rien. Déjà sa va pas à la ligne c'est bien mais sa n'envoie pas le message. Pourtant le bouton Envoyer à l'ID 1.
mercredi 24 octobre 2007 à 20:56:04 | Re : contrôle EDIT retour à la ligne forcé

juju12

Faut que tu crées le bouton envoyer avec style BS_DEFPUSHBUTTON.
mercredi 24 octobre 2007 à 22:48:48 | Re : contrôle EDIT retour à la ligne forcé

paramotdam

Mon bouton envoyer a déjà ce style. Quand je crée un Edit avec une seule ligne, sa marche mais dès qu'il y a plusieurs lignes sa ne marche pas l'action du bouton sur Entrée ! Voici le code du bouton envoyer : boutons[0] = CreateWindow("BUTTON", "Envoyer", WS_CHILD | WS_VISIBLE | BS_DEFPUSHBUTTON, 300, 250, 94, 30, fenetrePrincipale, (HMENU)ID_B_ENVOYER, instance, NULL); Le code de mon Edit est tout au début. Merci de votre aide!
jeudi 25 octobre 2007 à 17:55:42 | Re : contrôle EDIT retour à la ligne forcé

juju12

Ah je crois que j'ai compris c'est à cause de ES_AUTOVSCROLL; si tu veux vraiment l'appel du bouton pas le choix faut le virer.
jeudi 25 octobre 2007 à 18:52:18 | Re : contrôle EDIT retour à la ligne forcé

paramotdam

Si j'enlève ES_AUTOVSCROLL sa ne marche pas mieux. Par contre si j'enlève ES_MULTILINE, ma touche Entrée actionne le bouton Envoyer. Mais je voudrais que mon je tape du texte dans mon edit, que sa aille à la ligne. Alors qu'en enlevant ES_MULTILINE, je ne peux écrire qu'une seule ligne. Je sais qu'il y a une solution car DDpop de Dando Damien : http://damien09.programmes.site.voila.fr/index.html marche très bien. Par contre je ne vois pas ce qu'il a de plus dans son programme pour que sa fonctionne ! Si vous avez des idées... Merci
jeudi 25 octobre 2007 à 19:18:47 | Re : contrôle EDIT retour à la ligne forcé

paramotdam

Réponse acceptée !
sa y est, j'ai trouvé ! J'ai rajouté des accelerateurs dans mon .rc : CLAVIER ACCELERATORS BEGIN VK_RETURN, ID_B_ENVOYER, VIRTKEY END A+ dam


Cette discussion est classée dans : ligne, edit, ws, wparam, return


Répondre à ce message

Sujets en rapport avec ce message

pb de CreateWindowEx [ par graall ] Bonjour,j'ai un pb dans une API ://---------------------------------------// dans le fichier mainlib.hpp ://--------------------------------------- Comment faire un \n dans un edit? [ par by_rabbit_08 ] Bonjour!Grâce à la fonction SetDlgItemText, je cherche à inscrire du texte dans un edit. Dans ce texte, il y a un \n pour un retour à la ligne.Mais lo SysTreeView - au secours [ par Y0ch ] Bonsoir,Je cherche désespérément a comprendre comment initialiser et faire fonctionner un contrôle SysTreeView, mais sans résultat.Peut-être un bête p combobox [ par fignon ] Bonjour à tous,j'ai un petit souci avec les combobox, dont je suis sûr vous n'aurez aucun mal à résoudre.Je déclare ma combobox comme suit :edit_port_ ecrire dans un edit a partir d'un fichier texte a lire ligne pa ligne [ par sarah62223 ] BonjourJ'ai ecrit un programme pour venir lire dans un fichier ligne par ligne et de l'introduire dans un edit ,donc premiere ligne premier editdeuxie Dialog fenetre enfant qui bloque [ par NairodDorian ] Bonjour,Mon probleme est le suivant, j'utilises les resources avec des dialog et je voudrai affiche un dialogue defini par Child dans les proprietes d Je trouve pas le bon code [ par vah bi ] Bonjour à tous , voilà je débute en c et comme editeur j'ai le visual c++.Je  fais actuellement une application avec l'api de visual c++  mais en lang edit multilignes afficher le nb de ligne visibles [ par babyboo1107 ] Bonjour à tous,voilà j'aimerai pouvoir afficher le nb de lignes où il y à des caractère affiché  exemple1 kkkk2 34jjjil devrais m'afficher 2 pcq je n' WIN32 : Editbox non editable avec une boite de dialogue CHILD [ par Pistol_Pete ] BonjourVoila mon problème: J'ai créé une fenêtre et dans cette fenêtre j'ai une boite de dialogue avec le style WS_CHILD. Tous mes contrôles de cette apiwin [ par youma85 ] salut tous le monde je suis un débutant dans la programmation windows et je vient de compilet un programme  on me donne toujours ce message:projet4\ma


Nos sponsors


Sondage...

Comparez les prix


HTC Hero

Entre 550€ et 550€

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,452 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales