|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : Probleme d'EditBox [ Windows / GUI ] (SergentP)
Informations & options pour cette discussion
lundi 30 juin 2008 à 18:54:27 |
Probleme d'EditBox

SergentP
|
Salut, J'ai créer une fenêtre avec un edit box et je cherche à le redimensionner lorsque un WM_SIZING est envoyé, pour cela jutilise SetWindowPos comme ceci : SetWindowPos( EditText_Bas, 0, RectWindow.left, // Position de départ RectWindow.top, // ... RectWindow.right, // ... RectWindow.bottom - Diff.bottom, 0); // Position de départ - la différence apres le WM_SIZING La compilation se passe bien mais lorsque je redimentione l'edit box disparait. Je n'arrive pas à trouver de réponse à ce probleme donc j'espere trouver une solution de votre par. Merci d'avance.
|
|
|
lundi 30 juin 2008 à 19:10:10 |
Re : Probleme d'EditBox

Neo_Fr
|
Salut,
Essaye ca: InvalidateRect(EditText_Bas, 0, 1);
Neo_Fr
|
|
|
mardi 1 juillet 2008 à 11:23:52 |
Re : Probleme d'EditBox

SergentP
|
Non, ça ne marche pas, l'edit disparait toujours.
|
|
|
mardi 1 juillet 2008 à 15:41:48 |
Re : Probleme d'EditBox

aardman
|
Salut, Le dernier param de SetWindowPos() c'est les flags, regarde sur msdn les valeurs à mettre à la place de 0.
|
|
|
mardi 1 juillet 2008 à 20:18:00 |
Re : Probleme d'EditBox

SergentP
|
Pas moyen j'ai essayé plusieurs flags mais la fenetre disparait toujours, j'ai donc essayé de mettre des coordonées au hazard et la la fenetre ne disparaisait pas donc je supose que ca vien de la maniere d'ont je passe les coordonées.
|
|
|
lundi 7 juillet 2008 à 15:04:51 |
Re : Probleme d'EditBox

lol55
|
Salut SergentP, Pour redimensionner un EditBox, j'utiliserai le message EM_SETRECT qui permet comme tu peux le lire dans la description des paramètres à passer, de modifier ses dimensions : - lParam
- A pointer to a RECT structure that specifies the new dimensions of the rectangle. If this parameter is NULL, the formatting rectangle is set to its default values.
Voici le page, sur la MSDN : http://msdn.microsoft.com/en-us/library/bb761657(VS.85).aspx (Pour déclarer ton nouveau RECT => http://msdn.microsoft.com/en-us/library/ms536136.aspx) Donc en faisant : RECT rRect; rRect.top = ... ... // Tu déclares les dimensions (top, bottom, left et right) SendMessage(hHandleTonEditBox, EM_SETRECT, 0, rRect); Dans la page de la MSDN, tu peux trouver des choses intéressantes comme dans la remarque : The EM_SETRECT message causes the text of the edit control to be redrawn. To change the size of the formatting rectangle without redrawing the text, use the EM_SETRECTNP message. Si cela ne fonctionne pas, tu peux essayer de voir avec le message EM_SETMARGINS (http://msdn.microsoft.com/en-us/library/bb761649(VS.85).aspx) Voilà si tu as encore besoin d'aide n'hésite pas !
|
|
|
lundi 7 juillet 2008 à 16:06:55 |
Re : Probleme d'EditBox

SergentP
|
Et bien écoute je te remercie pour ta réponse je vais aller tester ca !
|
|
|
lundi 7 juillet 2008 à 16:36:37 |
Re : Probleme d'EditBox

SergentP
|
j'ai regardé ici : [ Lien ] mais apparament EM_SETRECT c'est pour modifier la zone d'écriture :s.
|
|
|
lundi 7 juillet 2008 à 18:36:58 |
Re : Probleme d'EditBox

lol55
|
Réponse acceptée !
Effectivement cela permet de modifier la zone d'écritue.
Je viens de créer un nouveau projet pour essayer de résoudre ton problème, je te laisse lire attentivement ce code :
case WM_CREATE: hEditBox = CreateWindowEx(WS_EX_CLIENTEDGE, "EDIT", "", WS_CHILD | WS_VISIBLE | ES_LEFT, 15, 15, 120, 25, hFenetre, 0, instance, 0); SendMessage(hEditBox, WM_SETTEXT, 0, (LPARAM) "Lyon !"); hButton = CreateWindow("BUTTON", "Click", WS_CHILD | WS_VISIBLE, 5, 45, 383, 30, hFenetre, (HMENU) ID_BUTTON, instance, NULL); return 0;
case WM_COMMAND: switch(LOWORD(wParam)) { case ID_BUTTON: SetWindowPos( hEditBox, 0, 0, 0, 80, 25, SWP_NOMOVE ); break; } return 0;
Lorsque je clique sur le bouton Click, les dimensions de l'EditBox sont bien modifiées, la fonction SetWindowPos fonctionne donc bien. Je relis ton premier post et je vois les paramtres que tu utilises :
SetWindowPos( EditText_Bas, 0, RectWindow.left, // Position de départ RectWindow.top, // ... RectWindow.right, // ... RectWindow.bottom - Diff.bottom, 0); // Position de départ - la différence apres le WM_SIZING
Je pense donc que ton problème viens simplement des paramètres de dimensions que tu utilises, il doit peut-être y en avoir des négatives... ce qui fais que ton EditBox n'est plus affichée, ce qui est normal ! Montre moi ton code source dans un fichier .cpp; j'essaierais de corriger ton problème en utilisant les bons paramètres.
lol55
|
|
|
lundi 7 juillet 2008 à 19:37:02 |
Re : Probleme d'EditBox

SergentP
|
En fait oui cela venait des parametres de dimentions et pensse que c'est à cause du RECT car il a pour parametre : left, top, right, bottom et SetWindowPos ou MoveWindow : left, top, width, height Ce qui créer des problemes.
|
|
|
Cette discussion est classé dans : probleme, box, edit, editbox, rectwindow
Répondre à ce message
Sujets en rapport avec ce message
couleur de fond d'une editbox [ par melkiorlenecrarque ]
salut kan je coche la case read-only d'une edit box, L devi1 griée!pe ton chanG la couleur de fon d'une edit box?G essayé SetColor() mé lé parametre m
cin et les editbox [ par BrandeBouque ]
Bonjour,j'en suis à moitié sûr, mais cin est il utilisable dans une edit box ?D'après ce que j'ai lu je dirais non, j'attends vos avis ...Si cin ne ma
edit box slider [ par thepat2 ]
Bonjour,J ai une editbox et un slider. Lorsque la position du slider (HScroll) est changee l editbox prend la nouvelle valeur.J aimerais maintenant qu
Changer Type d'une edit box [ par Andejen ]
Bonjour,Je souhaiterai afficher via une EditBox certaines variables ne correspondant pas aux types génériques.En effet j'utilise un type tout au long
Edit Box [ par iMouss ]
Salut tout le mondeJ'ai une edit box contenant une variable membre : m_var de type CStringj'aimerais que lors de la saisie de l'utilisateur, il sa fas
Edit_box et la touche Enter [ par by_rabbit_08 ]
Bonjour!Je sais que cette question a été posée plusieurs fois, mais pas exactement comme je l'aimerais, et malgré tout ce que j'ai lu, je n'arrive pas
Edit Box ou CEdit, comment modifier les fontes, etc.. [ par mouloudh ]
Bonjour la communauté !Pour ceux qui me reconnaitront, merci beaucoup pour leurs aide !Je travaille toujours sur le même projet, cad un CDialog.J'ai i
Probleme de editbox pour chat en reseau [ par jean84 ]
ecrire dans un edit box en MFC [ par eklouste ]
Slt a tous En fait j'ai cree une boite de dialogue avec MFC application ainsi qu'un edit control dans la boite de dialogue. J'aimerais savoir comment
WIN32 Edit box avec le style ES_NUMBER [ par Pistol_Pete ]
Bonjour à tous,J'ai un Edit box qui possède le style ES_NUMBER.J'aimerai, lorsque j'entre des chiffres, qu'il m'affiche un espace symbolisant les mil
Livres en rapport
|
Téléchargements
Logiciels à télécharger sur le même thème :
Comparez les prix Nouvelle version
|