FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
bouton roll-over - Page 2 Emptypar Pedro Aujourd'hui à 10:37

» Un autre pense-bête...
bouton roll-over - Page 2 Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
bouton roll-over - Page 2 Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
bouton roll-over - Page 2 Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
bouton roll-over - Page 2 Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
bouton roll-over - Page 2 Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
bouton roll-over - Page 2 Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
bouton roll-over - Page 2 Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
bouton roll-over - Page 2 Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
bouton roll-over - Page 2 Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
bouton roll-over - Page 2 Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
bouton roll-over - Page 2 Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
bouton roll-over - Page 2 Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
bouton roll-over - Page 2 Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
bouton roll-over - Page 2 Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
-55%
Le deal à ne pas rater :
Friteuse sans huile – PHILIPS – Airfryer HD9200/90 Série 3000
49.99 € 109.99 €
Voir le deal

 

 bouton roll-over

Aller en bas 
+2
Klaus
Yannick
6 participants
Aller à la page : Précédent  1, 2
AuteurMessage
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

bouton roll-over - Page 2 Empty
MessageSujet: re   bouton roll-over - Page 2 EmptyJeu 28 Mar 2013 - 20:12

@ Klaus,

Je confirme ce que j'ai écrit, pas de handle pour Picture, voilà le pourquoi... Wink
cela dit handle_canvas passe, passe t il aussi pour la fonction de la dll ?
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

bouton roll-over - Page 2 Empty
MessageSujet: re   bouton roll-over - Page 2 EmptyJeu 28 Mar 2013 - 20:47

@ Klaus,

Tu me dis :
Citation :
Au lieu d'utiliser un timer, pourquoi n'utilises-tu pas la possibilité de détecter l'entrée du curseur dans un objet ainsi que sa sortie ?

Il me faut bien un évènement qui lance la fonction à interval régulier pour savoir si ma souris est dans ou hors l'objet.
D'ailleurs, tu en utilises un dans ton fichier "mouse_over_Sub.bas" dans la fonction "mouse_over_scruter".... Wink
Revenir en haut Aller en bas
Klaus

Klaus


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

bouton roll-over - Page 2 Empty
MessageSujet: Re: bouton roll-over   bouton roll-over - Page 2 EmptyJeu 28 Mar 2013 - 23:17

Effectivement. J'avais oublié cela, aussi.

Il est vrai aussi que pour un picture, on ne peut pas avoir de handle, et le handle_canvas n'est pas suffisant.

Mais, pour tous les objets visuels pour lesquels on peut avoir un handle (donc sauf picture en alpha), le code suivant, très simple et intuitif, marche parfaitement. Les infos sont affichées dans la caption de la form 0, et ce sans timer:
Code:
' test_mouse_over_bis.bas

label mouse_enter_memo, mouse_exit_memo

dim dll$ : dll$ = "KGF.dll"

KGF_initialize(dll$)

memo 1 : top 1,10 : left 1,10
  width 1,300 : height 1,300
 
edit 101 : hide 101
button 201 :hide 201 : on_click 201,mouse_enter_memo
button 301 :hide 301 : on_click 301,mouse_exit_memo

ClickSetLink(handle(201),5)
ClickSetLink(handle(301),6)
ClickSetHook(handle(1),handle(101))

end

mouse_enter_memo:
  caption 0,"Entrée mémo "+time$
  return

mouse_exit_memo:
  caption 0,"Sortie mémo "+time$
  return


#INCLUDE "KGF_SUB.bas"


EDIT

correction d'une petite erreur (sans incidence sur le déroulement du code présenté, mais plus correct si l'on veut aller plus loin.


Dernière édition par Klaus le Jeu 28 Mar 2013 - 23:44, édité 1 fois
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

bouton roll-over - Page 2 Empty
MessageSujet: re   bouton roll-over - Page 2 EmptyJeu 28 Mar 2013 - 23:35

On peut jouer aussi avec Mouse_x_left_down et Mouse_x_left_up en ajoutant une troisième ligne au tableau Tab$( x%,3)
ligne qui contiendrait les chemins des icone_Clic$ et avoir une simulation complète d'un bouton :

Tab$(1,1)=image neutre
Tab$(1,2)=image survol
Tab$(1,3)=image clique

Le top serait que des images puissent être placé dans un buttton en définissant le type du button exemple

Type%=0 (bouton alpha) ou Type%=1 (bouton icone) si type% n'est pas défini, le type est alpha par défaut .

La super classe serait de pouvoir intégrer une icone dans un Sub_Menu... Laughing

Bon, aller, je me tais, sinon je vais réveiller Cosmos 70.... Laughing
Revenir en haut Aller en bas
Klaus

Klaus


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

bouton roll-over - Page 2 Empty
MessageSujet: Re: bouton roll-over   bouton roll-over - Page 2 EmptyVen 29 Mar 2013 - 9:57

J'ai fait une nouvelle version de KGF.dll: la version V2.08 du 29 Mars 2013.

Cette version permet de gérer simultanément jusqu'à 200 évènements et/ou objets avec les fonctions de ClickIntercept. Il faut télécharger KGF.dll, KGF_SUB.bas et KGF.chm (la doc est à jour).

Et voici une petite démo, avec un mémo et un list, dont le survol par la souris est géré très simplement, sans utilisation d'un timer:
Code:
' test_mouse_over_bis.bas

label mouse_enter_memo, mouse_exit_memo
label mouse_enter_list, mouse_exit_list

dim dll$ : dll$ = "KGF.dll"

KGF_initialize(dll$)

memo 1 : top 1,10 : left 1,10
  width 1,300 : height 1,300
 item_add 1,"Déplacez le curseur"
 item_add 1,"à l'aide de la souris"
list 2 : top 2,10 : left 2,350
  width 2,200 : height 2,400
  item_add 2,"Les objets vont"
  item_add 2,"changer d'aspect"
 
edit 101 : top 101,330 : ' hide 101
button 201 :hide 201 : on_click 201,mouse_enter_memo
button 301 :hide 301 : on_click 301,mouse_exit_memo

edit 102 : top 102,360 : ' hide 102
button 202 :hide 202 : on_click 202,mouse_enter_list
button 302 :hide 302 : on_click 302,mouse_exit_list

ClickSetHook(1,101)
ClickSetLink(201,5)
ClickSetLink(301,6)

ClickSetHook(2,102)
ClickSetLink(202,5)
ClickSetLink(302,6)


end

mouse_enter_memo:
  color 1,255,230,230
  font_color 1,0,0,255
  caption 0,"Entrée mémo "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  return

mouse_exit_memo:
  color 1,255,255,255
  font_color 1,0,0,0
  caption 0,"Sortie mémo "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  return

mouse_enter_list:
  color 2,230,230,255
  font_color 2,0,0,255
  caption 0,"Entrée list "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  return

mouse_exit_list:
  color 2,255,255,255
  font_color 2,0,0,0
  caption 0,"Sortie list "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  return



#INCLUDE "KGF_SUB.bas"

Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

bouton roll-over - Page 2 Empty
MessageSujet: Re: bouton roll-over   bouton roll-over - Page 2 EmptyVen 29 Mar 2013 - 11:04

Génial ça, tiens je vais m'en servir ce soir pour les menu de Barbarian Wink
Merci Klaus
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

bouton roll-over - Page 2 Empty
MessageSujet: re   bouton roll-over - Page 2 EmptyVen 29 Mar 2013 - 13:30

@ Klaus,

Je crois que cela mérite quelques explications... Laughing
J' avoue être un peu (beaucoup Wink ) pommé et dans le flou le plus total... scratch


Bref ce que je crois avoir compris

ClickSetHook demande à la dll de surveiller les évènements de l'objet et renvoi les coordonnées de l'entrée dans l'objet.

A t on besoin vraiment besoin de les afficher ? ou plutôt de les retourner à Panoramic ?
Puisque derrière, ClickSetLink déclenche la fonction lié à un bouton lui même lié à l'objet dont le handle est a eté récupéré par la dll scratch


Revenir en haut Aller en bas
Klaus

Klaus


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

bouton roll-over - Page 2 Empty
MessageSujet: Re: bouton roll-over   bouton roll-over - Page 2 EmptyVen 29 Mar 2013 - 14:14

Il faut déclarer ces boutons et edit parce qu'ils servent à la gestion des évènements. Mais il n'ont certes pas besoin d'être visibles. Il suffit de faire un HIDE. Dans le programme de démo, je n'ai gardé les edit visibles que pour montrer la variation de leur contenu.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

bouton roll-over - Page 2 Empty
MessageSujet: re   bouton roll-over - Page 2 EmptyVen 29 Mar 2013 - 14:31

@ Klaus,

j' ai passé un petit moment à réfléchir et tu pourras m'envoyer sur les roses
si je te complique trop la vie.

N' aurait il pas été plus lisible une fonction :

res%=dll_call4("OnMouseOver", hnd_objet%, hnd_Button%,Obj%,On_mouse%)

hnd% => l'objet à surveiller
hnd% => le bouton fictif qui déclenche l'évènement
Obj% => Numéro d'objet intercepté renvoyé par la dll
On_mouse% => l' évènement intercepté renvoyé dans cette variable

ainsi, en déclarant un objet on peut y associer la fonction
dans un menu "select...case...end_select".


Menu:
clic%=Number_click
Select clic%
Case No_Button :On_Mouse_Over (Obj%,On_Mouse%)
....
End_Select
Return

Sub On_Mouse_Over(No%,N%)

If No%= ....
If N%=1 Then ........
If N%=2 Then ........
End_if

End_Sub

Bon, c' est à ce moment que tu peux m'envoyer sur les roses... Laughing

Revenir en haut Aller en bas
Klaus

Klaus


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

bouton roll-over - Page 2 Empty
MessageSujet: Re: bouton roll-over   bouton roll-over - Page 2 EmptyVen 29 Mar 2013 - 15:04

J'avais réfléchi un bon moment, lorsque j'ai conçu ces fonctions. Et j'ai retenu architecture actuelle, car je voulais pouvoir gérer, pour un seul objet Panoramic, plusieurs évènements. Mon code le montre: pour chacun des deux objets (mémo et list), deux évènements sont gérés: mouse_enter et mouse_leave. Mais on pourrait également ajouter le clic droit etc. Et c'est le même edit qui sert de base pour transmettre les coordonnées de l'évènement, mais on peut (sans que ce soit obligatoire) déclarer des boutons différents pour chacun de ces évènements afin d'avoir une identification facile de l'évènement. C'est ce que j'ai fait dans la démo: 4 boutons, chacun pour un des évènements.

Maintenant, on peut bien sûr concevoir la chose autrement. Une partie des fonctions est d'ailleurs déjà obsolète, car Jack a intégré le double clic (même si cela ne marche pas forcément mieux qu'avec ma fonction). Je gère aussi le clic droit, avec la même facilité que les autres évènements. Donc, pour le moment, je peux gérer, simultanément sur un même objet, les évènements
1 = clic gauche
2 = clic droit
3 = double-clic
4 = molette ( à réaliser )
5 = entrée de la souris
6 = sortie de la souris
et cela pour plusieurs objets, tant que le total des évènements ne dépasse pas 200. Ce qui laisse de la marge.

En fait, j'ai voulu faire une gestion modulaire:
Pour chaque objet géré:
1. ClickSetHook intercepte les évènements de l'objet afin de les passer dans le filtre des évènements paramétrable en Panoramic
2. ClickSetLink ajoute un élément (un évènement) au filtre des évènements pour l'objet sélectionné par ClickSetHook
3. ClickClearHook enlève un élément (un évènement) du filtre des évènements, ou annule le filtre global pour un objet
Et, en marge, on a la fonction ClickIt qui permet de simuler un évènement d'un des types possibles, sut un objet dont on specifie le handle.

Voilà, c'est le concept qui est derrière.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

bouton roll-over - Page 2 Empty
MessageSujet: re   bouton roll-over - Page 2 EmptyVen 29 Mar 2013 - 15:34

Je comprends bien ta démarche en arrière plan .
Dans la "présentation" que je te proposais dans mon post précédent
je parlais de lisibilité du côté utilisateur...

Tu peux très bien garder tes deux ou trois (voir plus...) fonctions en arrière
plan dans la dll mais l'appel et le retour des infos me paraissait plus clair
à comprendre surtout pour les néophytes en programmation.

On passe en paramètres :

le numéro d'objet à surveiller
le numéro du bouton fictif qui sert de relais/déclencheur (çà c'est pas encore trop dur à comprendre Laughing )
la variable de retour pour l'objet dans lequel se trouve la souris
la variable de retour du type d'évènement en cours

on évite un edit fantôme pour des données qui ne servent qu'à la dll
et dans le menu on gère seulement les évènements que l'on veut.
si on ne pas traîter un évènement il suffit de ne pas introduire le if qui correspondrait.

Revenir en haut Aller en bas
Klaus

Klaus


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

bouton roll-over - Page 2 Empty
MessageSujet: Re: bouton roll-over   bouton roll-over - Page 2 EmptyVen 29 Mar 2013 - 17:18

Je vais y réfléchir.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

bouton roll-over - Page 2 Empty
MessageSujet: Re: bouton roll-over   bouton roll-over - Page 2 EmptyVen 29 Mar 2013 - 17:58

Extension de mon programme de démo, à un groupe de 3 boutons. La nouvelle version de Panoramic offre déjà une réaction du bouton au survol: un changement de couleur. J'ai ajouté un changement de taille du bouton, sans modifier la réaction de base de Panoramic. J'ai gardé caché les EDIT nécessaires à cette action:
Code:
' test_mouse_over_bis.bas

label mouse_enter_memo, mouse_exit_memo
label mouse_enter_list, mouse_exit_list
label mouse_enter_B1, mouse_exit_B1
label mouse_enter_B2, mouse_exit_B2
label mouse_enter_B3, mouse_exit_B3

dim dll$ : dll$ = "KGF.dll"
dim langage$ : langage$ = "FR"
' dim langage$ : langage$ = "EN"

KGF_initialize(dll$)

memo 1 : top 1,10 : left 1,10
  width 1,300 : height 1,300
if langage$="FR
 item_add 1,"Déplacez le curseur"
 item_add 1,"à l'aide de la souris"
else
  item_add 1,"Hoover the cursor"
  item_add 1,"over the objects"
end_if
list 2 : top 2,10 : left 2,350
  width 2,200 : height 2,400
if langage$="FR
  item_add 2,"Les objets vont"
  item_add 2,"changer d'aspect"
else
  item_add 2,"and they will"
  item_add 2,"change their aspect"
end_if
button 3 : top 3,360 : left 3,10 : width 3,30 : caption 3,"B1"
button 4 : top 4,360 : left 4,40 : width 4,30 : caption 4,"B2"
button 5 : top 5,360 : left 5,70 : width 5,30 : caption 5,"B3"

edit 101 : top 101,320 : width 101,60 : left 101,10 : ' hide 101
button 201 :hide 201 : on_click 201,mouse_enter_memo
button 301 :hide 301 : on_click 301,mouse_exit_memo

edit 102 : top 102,320 : width 102,60 : left 102,80: ' hide 102
button 202 :hide 202 : on_click 202,mouse_enter_list
button 302 :hide 302 : on_click 302,mouse_exit_list

edit 103 : hide 103
edit 104 : hide 104
edit 105 : hide 105
button 203 : on_click 203,mouse_enter_B1 : hide 203
button 303 : on_click 303,mouse_exit_B1  : hide 303
button 204 : on_click 204,mouse_enter_B2 : hide 204
button 304 : on_click 304,mouse_exit_B2  : hide 304
button 205 : on_click 205,mouse_enter_B3 : hide 205
button 305 : on_click 305,mouse_exit_B3  : hide 305

ClickSetHook(1,101)
ClickSetLink(201,5)
ClickSetLink(301,6)

ClickSetHook(2,102)
ClickSetLink(202,5)
ClickSetLink(302,6)

ClickSetHook(3,103)
ClickSetLink(203,5)
ClickSetLink(303,6)

ClickSetHook(4,104)
ClickSetLink(204,5)
ClickSetLink(304,6)

ClickSetHook(5,105)
ClickSetLink(205,5)
ClickSetLink(305,6)

end

mouse_enter_memo:
  color 1,255,230,230
  font_color 1,0,0,255
  if langage$="FR
    caption 0,"Entrée mémo "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  else
    caption 0,"Enter mémo "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  end_if
  return

mouse_exit_memo:
  color 1,255,255,255
  font_color 1,0,0,0
  if langage$="FR
    caption 0,"Sortie mémo "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  else
    caption 0,"Exit mémo "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  end_if
  return

mouse_enter_list:
  color 2,230,230,255
  font_color 2,0,0,255
  if langage$="FR
    caption 0,"Entrée list "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  else
    caption 0,"Enter list "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  end_if
  return

mouse_exit_list:
  color 2,255,255,255
  font_color 2,0,0,0
  if langage$="FR
    caption 0,"Sortie list "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  else
    caption 0,"Exit list "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  end_if
  return

mouse_enter_B1:
  top 3,top(3)-1      : left 3,left(3)-1
  height 3,height(3)+2 : width 3,width(3)+2
  return
 
mouse_exit_B1:
  top 3,top(3)+1      : left 3,left(3)+1
  height 3,height(3)-2 : width 3,width(3)-2
  return

mouse_enter_B2:
  top 4,top(4)-1      : left 4,left(4)-1
  height 4,height(4)+2 : width 4,width(4)+2
  return

mouse_exit_B2:
  top 4,top(4)+1      : left 4,left(4)+1
  height 4,height(4)-2 : width 4,width(4)-2
  return

mouse_enter_B3:
  top 5,top(5)-1      : left 5,left(5)-1
  height 5,height(5)+2 : width 5,width(5)+2
  return

mouse_exit_B3:
  top 5,top(5)+1      : left 5,left(5)+1
  height 5,height(5)-2 : width 5,width(5)-2
  return


#INCLUDE "KGF_SUB.bas"


On peut voir la facilité de mise en oeuvre de telles fonctions !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

bouton roll-over - Page 2 Empty
MessageSujet: re   bouton roll-over - Page 2 EmptySam 30 Mar 2013 - 19:50

@ Klaus,

As tu réfléchis ?... Laughing
Revenir en haut Aller en bas
Klaus

Klaus


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

bouton roll-over - Page 2 Empty
MessageSujet: Re: bouton roll-over   bouton roll-over - Page 2 EmptySam 30 Mar 2013 - 20:59

Je peux te proposer ceci, avec une procédure supplémentaire dans le code Panoramic.
Code:
' test_mouse_over_bis.bas

label mouse_enter_memo, mouse_exit_memo
label mouse_enter_list, mouse_exit_list
label mouse_enter_B1, mouse_exit_B1
label mouse_enter_B2, mouse_exit_B2
label mouse_enter_B3, mouse_exit_B3

dim dll$ : dll$ = "KGF.dll"
dim langage$ : langage$ = "FR"
' dim langage$ : langage$ = "EN"

KGF_initialize(dll$)

memo 1 : top 1,10 : left 1,10
  width 1,300 : height 1,300
if langage$="FR
 item_add 1,"Déplacez le curseur"
 item_add 1,"à l'aide de la souris"
else
  item_add 1,"Hoover the cursor"
  item_add 1,"over the objects"
end_if
list 2 : top 2,10 : left 2,350
  width 2,200 : height 2,400
if langage$="FR
  item_add 2,"Les objets vont"
  item_add 2,"changer d'aspect"
else
  item_add 2,"and they will"
  item_add 2,"change their aspect"
end_if
button 3 : top 3,360 : left 3,10 : width 3,30 : caption 3,"B1"
button 4 : top 4,360 : left 4,40 : width 4,30 : caption 4,"B2"
button 5 : top 5,360 : left 5,70 : width 5,30 : caption 5,"B3"

edit 101 : top 101,320 : width 101,60 : left 101,10 : ' hide 101
button 201 :hide 201 : on_click 201,mouse_enter_memo
button 301 :hide 301 : on_click 301,mouse_exit_memo

edit 102 : top 102,320 : width 102,60 : left 102,80: ' hide 102
button 202 :hide 202 : on_click 202,mouse_enter_list
button 302 :hide 302 : on_click 302,mouse_exit_list

edit 103 : hide 103
edit 104 : hide 104
edit 105 : hide 105
button 203 : on_click 203,mouse_enter_B1 : hide 203
button 303 : on_click 303,mouse_exit_B1  : hide 303
button 204 : on_click 204,mouse_enter_B2 : hide 204
button 304 : on_click 304,mouse_exit_B2  : hide 304
button 205 : on_click 205,mouse_enter_B3 : hide 205
button 305 : on_click 305,mouse_exit_B3  : hide 305

' ClickSetHook(1,101)
' ClickSetLink(201,5)
' ClickSetLink(301,6)
DefineMouseOver(1,201,101,5)
DefineMouseOver(1,301,101,6)

' ClickSetHook(2,102)
' ClickSetLink(202,5)
' ClickSetLink(302,6)
DefineMouseOver(2,202,102,5)
DefineMouseOver(2,302,102,6)

ClickSetHook(3,103)
ClickSetLink(203,5)
ClickSetLink(303,6)

ClickSetHook(4,104)
ClickSetLink(204,5)
ClickSetLink(304,6)

ClickSetHook(5,105)
ClickSetLink(205,5)
ClickSetLink(305,6)

end

mouse_enter_memo:
  color 1,255,230,230
  font_color 1,0,0,255
  if langage$="FR
    caption 0,"Entrée mémo "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  else
    caption 0,"Enter mémo "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  end_if
  return

mouse_exit_memo:
  color 1,255,255,255
  font_color 1,0,0,0
  if langage$="FR
    caption 0,"Sortie mémo "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  else
    caption 0,"Exit mémo "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  end_if
  return

mouse_enter_list:
  color 2,230,230,255
  font_color 2,0,0,255
  if langage$="FR
    caption 0,"Entrée list "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  else
    caption 0,"Enter list "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  end_if
  return

mouse_exit_list:
  color 2,255,255,255
  font_color 2,0,0,0
  if langage$="FR
    caption 0,"Sortie list "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  else
    caption 0,"Exit list "+time$+" ("+trim$(text$(101))+") ("+trim$(text$(102))+")"
  end_if
  return

mouse_enter_B1:
  top 3,top(3)-1      : left 3,left(3)-1
  height 3,height(3)+2 : width 3,width(3)+2
  return
 
mouse_exit_B1:
  top 3,top(3)+1      : left 3,left(3)+1
  height 3,height(3)-2 : width 3,width(3)-2
  return

mouse_enter_B2:
  top 4,top(4)-1      : left 4,left(4)-1
  height 4,height(4)+2 : width 4,width(4)+2
  return

mouse_exit_B2:
  top 4,top(4)+1      : left 4,left(4)+1
  height 4,height(4)-2 : width 4,width(4)-2
  return

mouse_enter_B3:
  top 5,top(5)-1      : left 5,left(5)-1
  height 5,height(5)+2 : width 5,width(5)+2
  return

mouse_exit_B3:
  top 5,top(5)+1      : left 5,left(5)+1
  height 5,height(5)-2 : width 5,width(5)-2
  return

' DefineMouseOver:
' P1 = le numéro d'objet à surveiller
' P2 = le numéro du bouton fictif qui sert de relais/déclencheur (çà c'est pas encore trop dur à comprendre Laughing )
' P3 = la variable de retour pour l'objet dans lequel se trouve la souris
' P4 = la variable de retour du type d'évènement en cours
sub DefineMouseOver(obj%,btn%,edt%,act%)
  ClickSetHook(obj%,edt%)
  ClickSetLink(btn%,act%)
end_sub

#INCLUDE "KGF_SUB.bas"


Le mémo et la liste sont gérés selon cette méthode, les boutons sont restés en méthode classique. A toi de voir.

Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

bouton roll-over - Page 2 Empty
MessageSujet: re   bouton roll-over - Page 2 EmptySam 30 Mar 2013 - 21:02

Je vais voir tout çà de près... Laughing
Revenir en haut Aller en bas
Contenu sponsorisé





bouton roll-over - Page 2 Empty
MessageSujet: Re: bouton roll-over   bouton roll-over - Page 2 Empty

Revenir en haut Aller en bas
 
bouton roll-over
Revenir en haut 
Page 2 sur 2Aller à la page : Précédent  1, 2
 Sujets similaires
-
» Roll the camera?
» Bouton
» Dessine-moi un bouton...
» Un bouton qui bouge
» Problème de bouton qui ne réagit plus.

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: A l'aide!-
Sauter vers: