FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Panoramic et ses curiosités
par Klaus Aujourd'hui à 2:20

» Synedit Parameters
par Klaus Aujourd'hui à 1:33

» Utilitaire de suppression de fichiers
par Yannick Hier à 23:03

» Code à vérifier SVP (Oups ! résolu)
par Jean Claude Jeu 22 Juin 2017 - 21:16

» Compilateur FBPano
par jean_debord Jeu 22 Juin 2017 - 9:56

» Bienvenue à Virtualalan !
par UltraVox Jeu 22 Juin 2017 - 9:18

» Concours de Morpions
par jjn4 Jeu 22 Juin 2017 - 0:04

» ShortName$(F) [Cloturé]
par papydall Mer 21 Juin 2017 - 16:19

» Remplacer espace par tiret dans noms des dossiers / fichiers
par papydall Mer 21 Juin 2017 - 15:27

» Menu personalisé avec icones et menu contextuel
par Laurent (Minibug) Mer 21 Juin 2017 - 12:44

» La liste des choses à faire ...
par Jack Mar 20 Juin 2017 - 22:49

» Quoi de neuf à propos de Goric 3D ? (@Jack)
par UltraVox Mar 20 Juin 2017 - 21:06

» Nom court et anti fenetre dos
par silverman Mar 20 Juin 2017 - 18:31

» Ludothèque Panoramic
par jjn4 Mar 20 Juin 2017 - 18:09

» Proposition à la communauté
par Yannick Mar 20 Juin 2017 - 15:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Juin 2017
LunMarMerJeuVenSamDim
   1234
567891011
12131415161718
19202122232425
2627282930  
CalendrierCalendrier

Partagez | 
 

 Evènement utilisateur personnalisé!

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
silverman

avatar

Nombre de messages : 444
Age : 45
Localisation : Picardie
Date d'inscription : 19/03/2015

MessageSujet: Evènement utilisateur personnalisé!   Lun 6 Fév 2017 - 17:42

Bonjour à tous Very Happy

Voici un code qui montre comment réaliser et déclencher des évènements personnalisés(user32). Cool
Ultra simple, mais du coup il faudra être soigneux dans la gestion de ses évènements! tongue

Code:
   label Traite_User_Event

    ' cré la commande qui permet de déclencher un évènement
    dim event_index%,user32%
    event_index%=4024 : user32%=2   :' event_index% doit toujours avoir la valeur 4024
    LIBRARY user32%,"user32.dll"
    command "call_user_event","SendMessageA",user32%,"IIII","stdcall"

    ' nouvelle commande utilisateur
    On_User_Event Traite_User_Event
    
    ' déclenche l'évènement(Attention, c'est toujours et uniquement le form 0 qui active la commande 'on_user_event'!)
    call_user_event handle(0),event_index%,12,34

    
    END
    Traite_User_Event:
     Off_User_Event
     '
     '
       select USER_EVENT_LPARAM
       case 12
               message "événement n°"+str$(USER_EVENT_LPARAM)+chr$(13)+chr$(10)+"Résultat="+str$(USER_EVENT_WPARAM)
       end_select
     '
     '
     On_User_Event Traite_User_Event
    return

EDIT: voir ici pour coder un évènement personnalisé dans une DLL freebasic



Un autre code(ancienne méthode) pour réaliser et déclencher des évènements personnalisés, sans dll, 100% panoramic!
Code:
   label Traite_User_Event

    ' cré un edit caché qui permet de déclencher un évènement personnalisé
    dim event_index%,lparam%,wparam%,event_text$,pos_index%
    event_index%=9000
    edit event_index%  : hide event_index%


    ' évènement déclenché si le texte de l'edit caché est modifié
    On_change event_index%,Traite_User_Event

    ' déclenche l'évènement
    text event_index%,"12_34"


    END
    Traite_User_Event:
     Off_change event_index%
     '
     '
       event_text$=text$(event_index%) : pos_index%=instr(event_text$,"_")   :' récupère le contenu de l'edit caché
       lparam%=val(mid$(event_text$,1,pos_index%-1))                         :' extrait un paramètre
       wparam%=val(mid$(event_text$,pos_index%+1,5))                         :' extrait un second paramètre
       select lparam%
       case 12
               message "événement n°"+str$(lparam%)+chr$(13)+chr$(10)+"Résultat="+str$(wparam%)
       end_select
     '
     '
     On_change event_index%,Traite_User_Event
    return


Dernière édition par silverman le Mar 7 Fév 2017 - 15:27, édité 4 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 9971
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Evènement utilisateur personnalisé!   Lun 6 Fév 2017 - 17:49

Oui, c'est bien ça. Je m'en servirai dans KGF.dll...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Yannick

avatar

Nombre de messages : 7825
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Lun 6 Fév 2017 - 19:14

Wahou ! 

Je sens que la collaboration entre Silverman et Klaus 
va nous faire des petites fonctions dll du tonerre.
Laughing
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
silverman

avatar

Nombre de messages : 444
Age : 45
Localisation : Picardie
Date d'inscription : 19/03/2015

MessageSujet: Re: Evènement utilisateur personnalisé!   Mar 7 Fév 2017 - 15:29

maj premier post : une seconde méthode sans dll, pur panoramic!  bounce
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Evènement utilisateur personnalisé!   

Revenir en haut Aller en bas
 
Evènement utilisateur personnalisé!
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Exclusivité Forumactif: Possibilité de créer un avatar personnalisé directement sur le forum
» Personnalisé le message d'accueil a chaque utilisateur
» déplacer le dossier Utilisateur (complet) sur le disque D
» Utilisateur Hotmail, faites attention aux bannières publicitaires
» [Résolu] Multiples comptes d'utilisateur - Window XP Pro

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC 32 bits :: Vos sources, vos utilitaires à partager-
Sauter vers: