[c/c++] Edit_box

Edit_box [c/c++] - C - Programmation

Marsh Posté le 18-10-2003 à 21:49:13    

- comment detecter qu'un utilisateur a appuyer sur enter dans une edit box ???
 
je detecte un changement dans ledit grace a ED_CHANGE mais apres???
 
c de la programmation win toute simple en c (pas d'MFC et compagnie...)
 
 
- comment empecher egalement un utilisateur d'ecrire dans une edit box (bon je c on peu faire un EnableWindow false mais a ce moment elle devient grise ce que je veux pas


Message édité par red faction le 18-10-2003 à 21:49:25
Reply

Marsh Posté le 18-10-2003 à 21:49:13   

Reply

Marsh Posté le 18-10-2003 à 21:53:28    

EM_SETREADONLY


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 18-10-2003 à 22:26:08    

heu c la meme chose que ES_READONLY  
 
ca devient gris aussi :(

Reply

Marsh Posté le 18-10-2003 à 22:28:56    

Bizarre, dans Delphi pour modifier le status ReadOnly ils font un       SendMessage(Handle, EM_SETREADONLY, 1, 0); par ex et ça ne devient pas gris


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 18-10-2003 à 22:34:17    

antp a écrit :

Bizarre, dans Delphi pour modifier le status ReadOnly ils font un       SendMessage(Handle, EM_SETREADONLY, 1, 0); par ex et ça ne devient pas gris


 
test -> marche pas
 
c pour un logiciel de chat ....
 
vaudrait mieux que les utilisateurs ne puissent pas modifier la zone ou on peut lire les msg  :D  
 
 
sinon qd je met a jour cette fenetre la scrollbar verticale remonte tout en haut ce qui fait quon ne voit pas le dernier message  :fou:  
 
pourtant jai mit ES_AUTOVSCROLL |ES_MULTILINE | WS_VSCROLL

Reply

Marsh Posté le 19-10-2003 à 11:06:54    

Si ca ce grise, normal c le comportement par defaut d'EditBox, suffit d'overide le OnCtlColor donc si t es en WIN32 normal traite le message WM_CTLCOLOR et avec comme attribue le CTLCOLOR_EDIT
 
Pour le scroll quand tu ajoutes, suffit de modifier juste apres la selection via un EM_SETSEL avec -1 pour start, 0 pour end et scroll caret.
 
 
Ici y a tt ce qu il faut (tu prend que les messages qui sont indiques pour Win32


Message édité par VisualC++ le 19-10-2003 à 11:13:24
Reply

Marsh Posté le 19-10-2003 à 13:01:42    

VisualC++ a écrit :

Si ca ce grise, normal c le comportement par defaut d'EditBox, suffit d'overide le OnCtlColor donc si t es en WIN32 normal traite le message WM_CTLCOLOR et avec comme attribue le CTLCOLOR_EDIT
 
Pour le scroll quand tu ajoutes, suffit de modifier juste apres la selection via un EM_SETSEL avec -1 pour start, 0 pour end et scroll caret.
 
 
Ici y a tt ce qu il faut (tu prend que les messages qui sont indiques pour Win32


 
WM_CTLCOLORSTATIC  :o

Reply

Marsh Posté le 19-10-2003 à 14:07:17    

comme ca ?

Code :
  1. SendMessage(hChat,EM_SETSEL,-1,0);
  2. SendMessage(hChat,EM_SCROLLCARET,0,0);


 
 
ca marche pas  :sweat:  

Reply

Marsh Posté le 20-10-2003 à 09:19:50    

oula   [:yoyoz]

Reply

Marsh Posté le 20-10-2003 à 09:21:32    

bah tu subclasse le brol et basta :O

Reply

Marsh Posté le 20-10-2003 à 09:21:32   

Reply

Marsh Posté le 28-10-2003 à 13:26:30    

bon pour le scroll jai trouve finalement.
 
ya juste pour detecter le "enter" que jai fait une solution bricolage  :sweat: :
 
si la fin de la editbox se termine par \r\n je retire ces deux caractere et jenvoie le texte au serveur
 
c pas tres propre ya surement une autre solution, surtout que si je fait ctrl+enter ca envoie qd meme

Reply

Marsh Posté le 28-10-2003 à 17:57:17    

[:yoyoz]  
 
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed