begin process at 2012 02 11 09:27:18
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Windows

 > 

GUI

 > 

évenement MouseOut ?


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

évenement MouseOut ?

vendredi 6 février 2009 à 15:44:48 | évenement MouseOut ?

steph12358

Bonjour

En utilisant un TApplicationEvent:

Dans un Form1 je positionne un bool à vrai quand l'utilisateur clique sur Image1 (un TImage, évènement OnMouseDown de Image1)

le but: laisser le bool à vrai tant qu'on continue de cliquer dans l'image
mais le positionner à faux dès qu'on clique sur un autre contrôle de l'application (même formulaire ou d'un autre formulaire). Ca fonctionnerait un peu comme un événement "MouseOut"...

mon code de départ:

void __fastcall TFormReglage::ApplicationEvents1Message(tagMSG &Msg,
      bool &Handled)
{

   static unsigned int oldwparam;
   static long oldlparam;

   switch   (Msg.message)
   {
   case   WM_LBUTTONDOWN:
           if ( OkForm1 )
           {
              //(là, mon test n'est pas le bon: je voudrais pouvoir tester que le controle n'est plus Form1->Image1)
              if ( ( oldwparam != Msg.wParam ) && ( oldlparam != Msg.lParam ) )
                  if (Form1->OnDessine)
                     Form1->OnDessine = false;
              oldwparam = Msg.wParam;
              oldlparam = Msg.lParam;
              break;
           }
   case   WM_LBUTTONUP:
      //...
   default:
      //...
   } 
}

rem: c'est sous C++ Builder mais ça doit pouvoir se généraliser et intéresser quelqu'un.

dimanche 8 février 2009 à 12:43:34 | Re : évenement MouseOut ?

jeffy131

C'est une FAQ Win32
demander sur le newsgroup professionnel des apis Win32 :
news://fr.comp.os.ms-windows.programmation
où cela a souvent été discuté
lundi 9 février 2009 à 11:19:51 | Re : évenement MouseOut ?

steph12358

Bonjour

je dois mal formuler ma demande car je n'ai toujours rien trouvé qui m'aide un tant soit peu sur le lien que vous m'avez indiqué, à part mes propres "contributions"...

Rappel: je cherche, "tout simplement" , à savoir quel contrôle de mon application a provoqué l'événement WM_LBUTTONDOWN...

Merci



lundi 9 février 2009 à 14:16:11 | Re : évenement MouseOut ?

steph12358

Réponse acceptée !
"
Rappel: je cherche, "tout simplement" , à savoir quel contrôle de mon application a provoqué l'événement WM_LBUTTONDOWN...
"

EUREKA ! j'ai trouvé de quoi me tirer d'affaire

dans TForm1::ApplicationEvents1Message(tagMSG &Msg,
      bool &Handled)

le paramètre Msg a une propriété hwnd.

Avec l'instruction:
AnsiString machin = FindControl(Msg.hwnd)->Name;
je retrouve le nom du "parent" du controle qui a "shooté" l'évènement. Je creuserai plus tard pour trouver le nom exact du controle



Cette discussion est classée dans : msg, bool, form1, image1, mouseout


Répondre à ce message

Sujets en rapport avec ce message

Thread [ par milhandril ] g un petit pb avec les Trheads. Ca compile bien mais lorsque la fonction associé au Thread se lance une erreur survient. en global g:static bool rech= DLL sous C++ builder 6 [ par ivdz ] Bonjour,Voici une partie du .h de mon exécutable que je dois transformer en DLL (sous C++ builder 6) :#ifndef MODBUSTCPIP_H#define MODBUSTCPIP_Hclass JOYSTICK ? probleme lecture [ par pirate75000 ] Ma fonction est dans une dll!Pourquoiq quand je passe a l'etat 1 le bouton1 et le bouton2je recupere comme info qu'ils sont a zeroDesque je mets deux crer "dialog non modal" [ par comfm ] BonjourJe n'arrive pas à créer une boite de dialogue non modal, c'est à dire celle qui permet d'être tjs affichée et on peut cliquer derriere sans pro probleme de *Char [] [ par oRTEEZ ] Bonjour, voila mon nouveau petit probleme.je pense pas que cela soit tres dur.J'ai un char Text[256] : contenant un texte entre par l'user.et unchar Dll + LoadLibrary [ par Manson ] Salut,voila, j'ai fais une dll dont le code est le suivant :void __declspec(dllexport)show_msg(HWND hWnd, char *msg){ MessageBox(hWnd, msg, "Dll Powa TreeView+ToolTip sans MFC [ par Manson ] Salut,voila je cree mon TreeView comme ca :HWND TreeView;DWORD Style;TreeView = CreateWindowEx(WS_EX_CLIENTEDGE, WC_TREEVIEW, "TreeView", [C] Transfert de fichier par sockets [ par bonobo78 ] salut ! j'ai un petit pb pour transmettre un fichier via des sockets.En fait, je decoupe le fichier en petit bout de 1024 octets et je transmets chaqu Creation DLL avec OCX sans fenêtre de dialogue [ par reydau ] Bonjour,j'ai un petit problème que je n'arrive pour l'instant pasà résoudre car je doit mal m'y prendre.J'essaye de créer une MFC de type DLL en utili Portée des variables avec MFC : HELP !!! [ par sprintjeffC ] salut,j'ai commençé à coder pour la 1ere fois en C et MFC avec devc++ ... c cool. Petit problème toute fois : j'ai une main (spéciale en MFC) et une p


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

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 : 1,232 sec (3)

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