begin process at 2012 02 10 23:34:42
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Windows

 > 

GUI

 > 

Modifier un Edit


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

Modifier un Edit

mardi 22 août 2006 à 02:59:08 | Modifier un Edit

Ziman

Bonjour,

mon problème est simple. J'ai ma fenetre principale qui contient un edit et un bouton. Le bouton fait apparaitre une DialogBox avec la même configuration. Je voudrai que quand je clique sur le bouton de la DialogBox, le contenu de l'edit de celle-ci se mette dans l'edit de la feuille principale.

J'ai essaye un SetWindowText, en vain. J'ai aussi essayé un SendMessage avec WM_SETTEXT et ca marche pas non plus, ca renvoie False.

Quelqu'un pourrait m'éclairer ? merci

[url="http://ziman4000.free.fr"]www.vb6team.fr.st[/url]
mardi 22 août 2006 à 03:14:32 | Re : Modifier un Edit

Joky

Membre Club
Si t'as nouvelle Dialog est enfant de ta dialog principale, récupère le handle de ton édit avec GetParent et GetDlgItem tu pourras alors utiliser SendMessage ou SetWindowText

ULARGE_INTEGERJokyQi=QI("Joky"

mardi 22 août 2006 à 03:41:15 | Re : Modifier un Edit

Ziman

Elle n'est pas parent, enfin, je ne pense pas, mais de toute façon le handle de mon TextBox est déclaré comme global et depuis ma DialogBox, j'ai accès à celui-ci, le soucis ce n'est pas le Handle mais le fait que le texte ne veut pas se changer. J'ai été voir sur MSDN qui me dit pour SetWindowText :

To set the text of a control in another process, send the WM_SETTEXT message directly instead of calling SetWindowText.

Je me dit que c'est pour ca que SetWindowText ne marche pas. J'ai donc essayé le SendMessage avec WM_SETTEXT et voici ce que MSDN me dit :

The return value is TRUE if the text is set. It is FALSE (for an edit control)...

Donc apparemment ca ne marche pas pour un edit ... Que faire alors ?

[url="http://ziman4000.free.fr"]www.vb6team.fr.st[/url]
mardi 22 août 2006 à 13:50:48 | Re : Modifier un Edit

Joky

Membre Club
Met c'est pas un autre processus si ?
Sinon c'est ptète la façon dont tu récupères le texte dans le nouvel Edit
Place des messagesBox un peu partout pour voir où tu en es. ;)

ULARGE_INTEGERJokyQi=QI("Joky"

mardi 22 août 2006 à 15:11:25 | Re : Modifier un Edit

chris91

bonjour,

MSDN SetWindowText Function :
If the function fails, the return value is zero. To get extended error information, call GetLastError.

quel est le code erreur renvoyé ?
mardi 22 août 2006 à 15:31:13 | Re : Modifier un Edit

racpp

Administrateur CodeS-SourceS
Salut,
Montre-nous ton code complet si c'est possible.

mardi 22 août 2006 à 16:13:06 | Re : Modifier un Edit

Ziman

chris91 > Elle renvoie 0.

racpp tout le code ca va etre dur mais voilà l'essentiel :

en global :

static HWND hTB;

la création :

            hTB = CreateWindow("edit", "",
                               WS_CHILD | WS_VISIBLE | WS_BORDER | ES_AUTOHSCROLL ,
                               10, 220, 100, 20, hwnd,
                               (HMENU) 2, GlobalInstance, NULL);

L'appel :

                    case 3:

                        if (SendMessage(heEdit, WM_GETTEXTLENGTH, 0, 0) == 0) {
                            MessageBox (hwDlg, "Veuillez entrer un texte", "Erreur", MB_OK | MB_ICONERROR);
                        }
                        else
                        {
                            int index = SendMessage(hLB, LB_GETCURSEL, 0, 0);
                            SendMessage(hLB, LB_DELETESTRING, index, 0);
                            char *Texte = (char *) malloc (SendMessage(heEdit, WM_GETTEXTLENGTH, 0, 0) + 1);
                            GetWindowText(heEdit, Texte, SendMessage(heEdit, WM_GETTEXTLENGTH, 0, 0) + 1);
                            SendMessage(hLB, LB_INSERTSTRING, index, (LPARAM)Texte);
                           
                            SetWindowText(hTB, "jnnnnnn");

                            free(Texte);
                            EndDialog(hwDlg, 0);
                        }
                        break;

Ici j'ai mis "jnnnnnn" juste pour tester avec du texte simple.

[url="http://ziman4000.free.fr"]www.vb6team.fr.st[/url]
mardi 22 août 2006 à 16:18:39 | Re : Modifier un Edit

Joky

Membre Club
char szText[1024] = 0;

GetWindowText(hEdit, szText, 1024);
if(szText[0] = 0)
    MessageBox(0, "Aucun texte", 0, 0x40);
else
    SetWindowText(hAutreEdit, szText);

ULARGE_INTEGERJokyQi=QI("Joky"

mardi 22 août 2006 à 16:23:09 | Re : Modifier un Edit

vecchio56

Administrateur CodeS-SourceS
char szText[1024] = 0;
Pas bien :)

La ligne SetWindowText(hTB, "jnnnnnn"); renvoie 0, c'est ca?

Que renvoie IsWindow(hTB)?

_____________________________________
Un éditeur de ressources gratuit pour Windows

mardi 22 août 2006 à 16:27:36 | Re : Modifier un Edit

Ziman

C'est bizarre mais ca me renvoie 0. Ce que je ne comprend pas c'est que je fais aussi des opérations sur une ListBox depuis le meme bouton et pour la ListBox, ca marche à merveille mais pas pour le TextBox ...

[url="http://ziman4000.free.fr"]www.vb6team.fr.st[/url]

1 2

Cette discussion est classée dans : bouton, edit, modifier, principale, dialogbox


Répondre à ce message

Sujets en rapport avec ce message

Modifier un control depuis une DialogBox [ par Ziman ] Bonjour, c'est re moua,voilà, j'ai fait un programme qui contient une fenetre principale et un bouton, lorsque l'on clique sur ce bouton, une DialogBo saisie d'un mot pour que l'action sur le bouton se fasse [ par romydamour ] salut tout le monde,je travaille sur une APIwin32 sous visual c++;j'ai réalisé une petite boite de dialogue toute bête qui apparaitra lors du lancemen Passer un DialogBox en switchbar dans la fenêtre principale [ par TeniX ] Salut, Je cherche une astuce pour bloqué un DialogBox() dans la fenêtre principale CreateWindowEx(..) , pour crée une switchbar à gauche. PS: En win [VC++] Modifier le texte d'une edit box sur plusieurs lignes... [ par ndj55 ] Salut à tous!Voila,je souhaiterais ecrire dans une edit box une chaine de caracteres,pour cela j'ai le code suivant:strcpy(info,"Prenom:\nNicolas\nAge Modifier Couleur d'un Bouton et d'une Boite de Dialogue en C++? [ par alanbraxe31 ] Bonjour tt l'monde!je cherche un script simple ( car je suis débutant en c++) pour modifier la couleur d'une boite de dialogue créée automatiquement, Modifier les valeurs d'edit box dans une boite de dialog [ par Colombus ] Bonjour,J'ai créé une application MFC dans laquelle j'ouvre plusieurs documents (bitmap) qui son traités. Pour régler les différents paramètres utilis WIN32...... [ par phpman ] Bonjour à tous,Cela fait à peut près 300 ans que je parcours le web à la recherche cours, script ou tutoriaux sur:Comment faire une page windows avec modifier caption (texte) d'une edit box??? [ par alanbraxe31 ] http://membres.lycos.fr/alanbraxe31bonjour tout le monde!je travaille avec le builder de visual c++ car je ne sais pas vraiment programmer en c++, et Changef la couleur d'un Edit box [ par Ifrit235 ] Salut j'aimerai savoir qu'est ce qu'il faut modifier dans ma fonction pour modifier sa couleur. En effet il apparait gris et j'aimerai qu'il soit blan Comment on grise un bouton dans une dialogbox ? [ par Gendal67 ] Bonjour ('soir) à tous !J'ai une petite question et j'espère bcp que vous pourrez me répondre : voila, je sais (plus ou moins) créer des dialogbox (mo


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
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 : 5,850 sec (3)

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