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.
Dll permettant de gérer la souris - Page 2 Emptypar Pedro Aujourd'hui à 10:37

» Un autre pense-bête...
Dll permettant de gérer la souris - Page 2 Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
Dll permettant de gérer la souris - Page 2 Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
Dll permettant de gérer la souris - Page 2 Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
Dll permettant de gérer la souris - Page 2 Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
Dll permettant de gérer la souris - Page 2 Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
Dll permettant de gérer la souris - Page 2 Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
Dll permettant de gérer la souris - Page 2 Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
Dll permettant de gérer la souris - Page 2 Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
Dll permettant de gérer la souris - Page 2 Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
Dll permettant de gérer la souris - Page 2 Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
Dll permettant de gérer la souris - Page 2 Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
Dll permettant de gérer la souris - Page 2 Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
Dll permettant de gérer la souris - Page 2 Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
Dll permettant de gérer la souris - 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
-20%
Le deal à ne pas rater :
Drone Dji DJI Mini 4K (EU)
239 € 299 €
Voir le deal

 

 Dll permettant de gérer la souris

Aller en bas 
5 participants
Aller à la page : Précédent  1, 2, 3  Suivant
AuteurMessage
Severin




Nombre de messages : 547
Localisation : Braunschweig / Germany
Date d'inscription : 13/12/2010

Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyDim 15 Juil 2012 - 21:03

@ Klaus

Erstmal vielen Dank für die Hilfe.
Aber ich habe noch Probleme mit der DLL.
Verschiebe das auf später, hält mich nur auf beim Programmieren.
Trotzdem danke.

Eventuell löst jack das mit seiner neuen Version.
Severin
Revenir en haut Aller en bas
Klaus

Klaus


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

Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyLun 16 Juil 2012 - 0:08

@Severin:
Es scheint so, dass eine Form in Panoramic NICHT auf das Mausrad reagiert ! Mache eine kleine Form und plaziere etwas unterhalb des Randes der Form. Die rechte Scrollbar erscheint. Diese kannst du mit der Maus ziehen, aber du kannst das Fenster nicht mit dem Mausrad bewegen.

Beispiel:
Code:
 
 dim no%, no_form%
 no% = no% + 1 : form no% : top no%,200 : left no%,width(0)+10 : no_form% = no%
    width no%,300 : height no%,180 : caption no%,"Client Area"
  no% = no% + 1 : alpha no% : parent no%,no_form%
    top no%,200 : left no%,50 : caption no%,"End of page - scroll up"
  no% = no% + 1 : alpha no% : parent no%,no_form%
    top no%,10 : left no%,50 : caption no%,"Start of page- scroll down"
end
   

Und hier ein Beispiel-Programm, das diese Form verwendet und das Mausrad simulieren sollte. Es bleibt aber leider ohne Wirkung:
Code:
' Test_MouseOperations.bas

' endroits spécifiques des objets à cliquer

' Windows XP:
' BUTTON:  x%=left(n)  y%=top(n)

' MEMO:une ligne vers le haut: x%=left(n)+width(n)-10  y%=top(n)+15
' MEMO:une page vers le haut:  x%=left(n)+width(n)-10  y%=top(n)+20
' MEMO:une page vers le bas  : x%=left(n)+width(n)-10  y%=top(n)+height(0)-20
' MEMO:une ligne vers le bas : x%=left(n)+width(n)-10  y%=top(n)+height(0)-15
' MEMO:molette:                x%=left(n)+10  y%=top(n)+10

' COMBO:flèche:: x%=left(n)+width(n)-10  y%=top(n)+15

' OPTION:cocher:: x%=left(n)  y%=top(n)

' CHECK:cocher:: x%=left(n)  y%=top(n)

label labels : gosub labels
gosub constantes
gosub variables
gosub donnees
gosub form0
gosub menu
gosub GUI
gosub initialisations

end

labels:
  label constantes, variables, donnees
  label form0, menu, GUI, initialisations
  label form_s_up, form_s_down

  return

constantes:
  dim dll$ : dll$ = "MouseOperations.dll"
  dim M1% : M1% = 0 - 1
  return
 
variables:
  dim no%, no1%, no2%, i%, x0%, y0%
  dim no_form%
  dim no_b_sup%, no_b_sdown%

  return

donnees:
  return

form0:
  caption 0,"Test MouseOperations"
  width 0,900 : height 0,600
  return

menu:
  return

GUI:
  no% = no% + 1 : button no% : top no%,40 : left no%,520 : width no%,150
    caption no%,"Form scroll UP" : on_click no%,form_s_up : no_b_sup% = no%
  no% = no% + 1 : button no% : top no%,40 : left no%,690 : width no%,150
    caption no%,"Form scroll DOWN" : on_click no%,form_s_down : no_b_sdown% = no%



  no% = no% + 1 : form no% : top no%,200 : left no%,width(0)+10 : no_form% = no%
    width no%,300 : height no%,180 : caption no%,"Client Area"
  no% = no% + 1 : alpha no% : parent no%,no_form%
    top no%,200 : left no%,50 : caption no%,"End of page - scroll up"
  no% = no% + 1 : alpha no% : parent no%,no_form%
    top no%,10 : left no%,50 : caption no%,"Start of page- scroll down"

   
  return

initialisations:
  return


form_s_up:
' required lines for mouse wheel operation
  dll_on dll$
  x0% = 0
  y0% = 0
  set_focus no_form%
  i% = dll_call3("MouseWheel",x0%, y0%, 1)
  dll_off
' lines for test program
  set_focus 0
  dll_on dll$
  x0% = left(no_b_sup%)
  y0% = top(no_b_sup%)
  i% = dll_call2("MousePosition",x0%, y0%)
  dll_off
  return

form_s_down:
' required lines for mouse wheel operation
  dll_on dll$
  x0% = 0
  y0% = 0
  set_focus no_form%
  i% = dll_call3("MouseWheel",x0%, y0%, M1%)
  dll_off
' lines for test program
  set_focus 0
  dll_on dll$
  x0% = left(no_b_sdown%)
  y0% = top(no_b_sdown%)
  i% = dll_call2("MousePosition",x0%, y0%)
  dll_off
  return

Ich werde versuchen, diesem Problem auf den Grund zu gehen, und werde es eventuell Jack vorlegen.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Severin




Nombre de messages : 547
Localisation : Braunschweig / Germany
Date d'inscription : 13/12/2010

Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyLun 16 Juil 2012 - 2:28

@ Klaus

hatte mir schon sowas gedacht. Panoramic steckt voller Überaschungen.
Leider hat Jack alle unsere Fragen noch nicht beantwortet.

Wie maximale Grösse von Objekten und viles mehr. Schade !!
Es wäre schön wenn Jack ein wenig gesprächiger wäre.

So das wars erstmal. Ich gehe jetzt wieder auf Dienstreise.

Severin
Revenir en haut Aller en bas
Severin




Nombre de messages : 547
Localisation : Braunschweig / Germany
Date d'inscription : 13/12/2010

Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyLun 20 Aoû 2012 - 1:22

@Klaus

Ich bin am Ende. Wie bekomme ich das Mausrad auf den Bar.
Seit 2 Tagen probiere ich.

Hier der Code:

Code:
' *** SCROLL BAR wenn nur VERTICAL *********************************************
BAR_VERTICAL_VE:
no% =      no% + 1
scroll_bar no%
scroll_bar_vertical%(n_client_area%) = no%
parent    no%,client_area%(n_client_area%)
vertical  no%
top        no%,0
left      no%,SCREEN_X-30
height    no%,SCREEN_Y-177
min        no%,0
max        no%, max_height% - height(client_area%(n_client_area%)) :' -20
on_change  no%,scroll_vertical
'
' Gosub Mausrad
'
RETURN

' *** DLL für Maus *************************************************************
Mausrad:

dll_on DATEIDLL004$

' x0% = left(no_memo%) + 10
x0% = left ,SCREEN_X-30

' y0% = top(no_memo%) + 10
y0% = top no%,0

i% = dll_call3("MouseWheel",x0%, y0%, M1%) : ' M1%)

x0% = left(no_b_sdown%)

y0% = top(no_b_sdown%)

i% = dll_call2("MousePosition",x0%, y0%)

dll_off

return


Was ist M1% ?

Danke Severin
Revenir en haut Aller en bas
Klaus

Klaus


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

Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyLun 20 Aoû 2012 - 9:23

1. Dein Kode ist richtig.
2. SCROLL_BAR reagiert NICHT aufs Maus-Rad. Versuche, manuell das Mausrad zu verwenden:
Code:
scroll_bar 1 : vertical 1
es geht nicht ! Also kann es auch die MouseWheel-Funktion nicht erreichen.
3. M1% steht für "-1". Ich bin gewohnt, negative Konstanten so zu definieren, da Panoramic nicht das alleinstehende Minuszeichen kennt:
Code:

dim M1% : M1% = 0 - 1
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Invité
Invité




Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyMer 29 Aoû 2012 - 18:30

Bonjour Klaus.
Je suis en train de faire les essais du déplacement de l'ascenseur de la fenêtre pour inclure par la suite la routine de fonction d'ancre dans la fenêtre. Le principe je l'ai trouvé, et je pense que cela devrait marcher.

Je fais seulement les essais, vu que pour l'instant je n'ai inplémenté que l'objet memo, car il y avait beaucoup de choses à mettre au point, et avec pleins de bugs de toutes sortes. Les bugs, fini! Mais c'est avec des alphas que je ferais les ancres.

J'ai vraiment eu du mal à faire ceci, car une chose que tu n'as pas dite: il faut à chaque fois lancer la DLL, et la fermer une fois l'opération réalisée. Quel est le problème? Est-ce qu'il y a une raison évidente de fermer la dll? Pour l'instant je n'ai fais l'essai qu'avec MouseOperation, mais si je me sers de KGF, est-ce vraiment une bonne idée. Si je clique en bas pour scroller l'écran, le clic suivant me met tout en bas dans l'horloge.

2ème point: tu as une fonction teste pour recevoir les messages de dimensions. Mais on obtient ceux-ci par un message, et cela est incompatible avec un programme qu'on poste. Le message est pour la mise au point de ta dll, je pense. La question qui est sans réponse pour moi: est-ce qu'une fenêtre avec la même résolution, a les mêmes valeurs, selon qu'on est sous XP, Vista, W7 ou autre. Si oui, la question est sans valeur, mais si il y a des différences, il faut pouvoir les intégrer aux programme.

A toi de voir! Shocked
Revenir en haut Aller en bas
Klaus

Klaus


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

Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyMer 29 Aoû 2012 - 18:52

Tu n'as pas besoin de décharger la DLL après chaque opération, puis de la recharger avant une une autre opération. Dans certains cas, c'est même impossible, comme au niveau de la gersion de l'imprimante (anciennement print.dll) au au niveau de la gestion des images dès l'instant qu'on utilise l'image interne qui est justement mémorisée dans la DLL.

Tu peux charger la DLL tout au début, juste avant le premier END par exemple, et tu la laisses ouverte et tu peux utiliser toutes les fonctions.

En ce qui concerne les fonctions de gestion de la souris, elles devraient être indépendantes du système. Les coordonnées relatives sont les coordonnées par rapport à l'objet dont le handle a été passé en paramètre (une form en général) et se rapportent à ce que Windows appelle la "client area", c'est-à-dire la zone utile entre (0,0) et (width(n),height(n)) si n est le numéro de la form. Les coordonnées absolues sont les adresses par rapport aux pixels directement sur l'écran, indépendamment de toute fenêtre. Il n'y a aucun rapport avec une version de Windows.

Je ne vois pas bien de quelle fonction de teste tu veux parler. Peux-tu me donner la référence exacte ?
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Invité
Invité




Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyMer 29 Aoû 2012 - 19:22

Je suis désolé, mais j'ai passé hier bien 2 heures pour faire marcher. Avec Pagiciel, ça ne marche pas. J'ai décodé ton programme, et retirant tout ce qui n'avait pas de rapport avec le clic sur le bas de l'ascenseur. Il n'y avait pas de différence entre le programme d'essai et Pagiciel. Chaque fois je me retrouvais sous l'horloge mais en ne fermant pas la dll.
J'ai eu l'idée de faire pareil, et de fermer à chaque fois, et là, ça fonctionne parfaitement. Il y a quelque chose que tu n'as pas du voir. Si il le faut je mettrais Pagiciel en ligne, mais j'aurai voulu faire un minimum d'explication avec.

En fin de compte je viens de modifier ton programme pour n'avoir qu'un appel de dll, et vois:

Dans le menu, il y a un clic pour asenceur, de façon à pouvoir cliquer en étant plus bas. Le premier coup c'est bon. Tous les autres coups, on est en dehors de la fenêtre.
Code:


' Test_MouseOperations.bas

' endroits spécifiques des objets à cliquer

' Windows XP:
' BUTTON:  x%=left(n)  y%=top(n)

' MEMO:une ligne vers le haut: x%=left(n)+width(n)-10  y%=top(n)+15
' MEMO:une page vers le haut:  x%=left(n)+width(n)-10  y%=top(n)+20
' MEMO:une page vers le bas  : x%=left(n)+width(n)-10  y%=top(n)+height(0)-20
' MEMO:une ligne vers le bas : x%=left(n)+width(n)-10  y%=top(n)+height(0)-15
' MEMO:molette:                x%=left(n)+10  y%=top(n)+10

' COMBO:flèche:: x%=left(n)+width(n)-10  y%=top(n)+15

' OPTION:cocher:: x%=left(n)  y%=top(n)

' CHECK:cocher:: x%=left(n)  y%=top(n)

label labels : gosub labels
gosub constantes
gosub variables

gosub form0

gosub GUI


end

labels:
  label constantes, variables
  label form0,  GUI
  label cible_G, clic_gauche, memo_up, memo_down, memo_context
  label memo_s_up, memo_s_down
  label combo_up, option_clic, check_clic
  label test
  label clic_down_zero
  label fin
 
  return

constantes:
  dim dll$ : dll$ = "E:\COURS_Pano\DLLs\MouseOperations.dll"
  dim M1% : M1% = 0 - 1
  return
 
variables:
  dim no%, no1%, no2%, i%, x0%, y0% ,dll%
  dim no_cible%, no_memo%, no_b_gauche%, no_b_up%, no_b_down%, no_b_right%
  dim no_b_sup%, no_b_sdown%
  dim no_b_combo%, no_combo%, no_check%, no_option%, no_b_check%, no_b_option%
 
return

form0:
  caption 0,"Test MouseOperations"
  width 0,900 : height 0,600  :full_space 0
  return

' ==============================================================================
GUI:


' check 14 : top 14,130 : left 14,530
'    width 14,150 : caption 14,"Check"

' option 15 : top 15,160 : left 15,530
'    width 15,60 : caption 15,"Option 1"

' option 16 : top 16,160 : left 16,600
'    width 16,60 : caption 16,"Option 2"

' =========
button 2 : top 2,40 : left 2,10 : width 2,150
    caption 2,"Mémo UP" :                              on_click 2,memo_up
   
button 3 : top 3,40 : left 3,180 : width 3,150
    caption 3,"Mémo DOWN" : on_click 3,memo_down

button 4 : top 4,40 : left 4,350 : width 4,150
    caption 4,"Mémo Context" : on_click 4,memo_context

button 5 : top 5,40 : left 5,520 : width 5,150
    caption 5,"Mémo scroll UP" : on_click 5,memo_s_up

  no% = no% + 1 : button 6 : top 6,40 : left 6,690 : width 6,150
    caption 6,"Mémo scroll DOWN" : on_click 6,memo_s_down

button 7 : top 7,70 : left 7,10 : width 7,150
    caption 7,"Test" : on_click 7,test
   
button 8 : top 8,100 : left 8,10 : width 8,150
    caption 8,"Combo flèche" : on_click 8,combo_up

' button 9 : top 9,100 : left 9,180 : width 9,150
'    caption 9,"Check" : on_click 9,check_clic

' button 10 : top 10,100 : left 10,350 : width 10,150
'    caption 10,"Option" : on_click 10,option_clic
' =========
button 1 : top 1,10 : left 1,10 : width 1,150
    caption 1,"Test clic sur Cible"
    on_click 1,clic_gauche
' =========
button 11 : top 11,200 : left 11,200
    width 11,200 : height 11,100 : caption 11,"Cible"
    on_click 11,cible_G
' =========  rajouté
picture 17:left 17,width(0)-50:width 17,20 :height 17,height(0) +1020 :color 17,255,255,0

main_menu 19:sub_menu 20:parent 20,19:caption 20,"teste clic"
sub_menu 18 :parent 18,20:caption 18,"ascenseur"
    on_click 18,clic_down_zero
sub_menu 21:parent 21,20:caption 21,"quitte":on_click 21,fin
' =========
memo 12 : top 12,300 : left 12,530
    width 12,150 : height 12,100 : bar_vertical 12
    for i%=1 to 30
      item_add 12,"Ligne "+str$(i%)
    next i%
' ==========
combo 13 : top 13,100 : left 13,530
    width 13,150 : height 13,100
    for i%=1 to 30
      item_add 13,"Ligne "+str$(i%)
    next i%
return
' ==============================================================================
clic_down_zero:
  if dll%=0 then dll_on dll$  :dll%=1
  x0% = left(0) + width(0)-20
  y0% = top(0) + height(0)-90 : ' 15=par ligne 20=par page
  '  i% = dll_call0("Test")
  i% = dll_call2("MouseLeftClick",x0%, y0%) :' clic gauche
 
 ' x0% = left(0)
 ' y0% = top(0)
 ' i% = dll_call2("MousePosition",x0%, y0%) :' place en x,y
 ' dll_off
return
' ==============================================================================
memo_up:
  if dll%=0 then dll_on dll$  :dll%=1
  x0% = left(12) + width(12)-10 :' 12=memo
  y0% = top(12) + 20              : ' 15=par ligne 20=par page
  i% = dll_call2("MouseLeftClick",x0%, y0%)
  x0% = left(2)
  y0% = top(2)
 ' i% = dll_call2("MousePosition",x0%, y0%)
 ' dll_off
  return
' ==============================================================================
memo_down:
  if dll%=0 then dll_on dll$  :dll%=1
  x0% = left(12) + width(12)-10
  y0% = top(12) + height(12)-20 : ' 15=par ligne 20=par page
  i% = dll_call2("MouseLeftClick",x0%, y0%)
  x0% = left(3)
  y0% = top(3)
  i% = dll_call2("MousePosition",x0%, y0%)
 ' dll_off
  return

memo_context:
  if dll%=0 then dll_on dll$  :dll%=1
  x0% = left(12) + width(12)-4
  y0% = top(12) + 4
  i% = dll_call2("MouseRightClick",x0%, y0%)
 ' dll_off
  return
' ==============================================================================
memo_s_up:
  if dll%=0 then dll_on dll$  :dll%=1
  x0% = left(12) + 10
  y0% = top(12) + 10
  i% = dll_call3("MouseWheel",x0%, y0%, 1)
  x0% = left(5)
  y0% = top(5)
  i% = dll_call2("MousePosition",x0%, y0%)
 ' dll_off
  return
' ==============================================================================
memo_s_down:
  if dll%=0 then dll_on dll$  :dll%=1
  x0% = left(12) + 10
  y0% = top(12) + 10
  i% = dll_call3("MouseWheel",x0%, y0%, M1%) : ' M1%)
  x0% = left(6)
  y0% = top(6)
  i% = dll_call2("MousePosition",x0%, y0%)
 ' dll_off
  return
' ==============================================================================


cible_G:
  message "clic gauche sur bouton"
  return

clic_gauche:
  if dll%=0 then dll_on dll$  :dll%=1
  x0% = left(11)
  y0% = top(11)
  i% = dll_call2("MouseLeftClick",x0%, y0%)
  x0% = left(1)
  y0% = top(1)
  i% = dll_call2("MousePosition",x0%, y0%)
'  dll_off
  return

test:
  if dll%=0 then dll_on dll$  :dll%=1
  i% = dll_call0("Test")
  i% = dll_call0("Test1")
 ' dll_off
  return

combo_up:
  if dll%=0 then dll_on dll$  :dll%=1
  x0% = left(13) + width(12)-10
  y0% = top(13) + 15
  i% = dll_call2("MouseLeftClick",x0%, y0%)
  x0% = left(8)
  y0% = top(8)
  i% = dll_call2("MousePosition",x0%, y0%)
 ' dll_off
  return

check_clic:
  if dll%=0 then dll_on dll$  :dll%=1
  x0% = left(14)
  y0% = top(14)
  i% = dll_call2("MouseLeftClick",x0%, y0%)
  x0% = left(9)
  y0% = top(9)
  i% = dll_call2("MousePosition",x0%, y0%)
  ' dll_off
  return

option_clic:
  if dll%=0 then dll_on dll$  :dll%=1
  x0% = left(15)
  y0% = top(15)
  i% = dll_call2("MouseLeftClick",x0%, y0%)
  x0% = left(10)
  y0% = top(10)
  i% = dll_call2("MousePosition",x0%, y0%)
  ' dll_off
  return

fin:
dll_off
terminate

Excuses moi d'avoir mis des n° à la place des noms, mais n'étant pas dans le programme je n'arrivais pas à comprendre.
Revenir en haut Aller en bas
Klaus

Klaus


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

Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyMer 29 Aoû 2012 - 20:08

Merci, Cosmos70, pour ce diagnostic très précis. Il y avait effectivement un bug au niveau du positionnement du curseur (une variable interne n'était pas remise à zéro).

La dll est mise à jour dans le WebDav - version V1.38 pour la correction du bug.

En ce qui concerne le bouton Test, en effet c'est un résidu de mes tests internes, et la fonction correspondante n'est plus accessible dans la DLL. Pardon pour l'oubli.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Invité
Invité




Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyMer 29 Aoû 2012 - 20:40

Merci Klaus.
Je téléchargerai tout à l'heure.
Revenir en haut Aller en bas
Klaus

Klaus


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

Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyMer 29 Aoû 2012 - 21:00

N'oublie pas: c'est KGF.dll, pas MouseOperations.dll qui n'est plus maintenue !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Invité
Invité




Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyLun 3 Sep 2012 - 15:49

Klaus, avant de te répondre sur l'autre post, je voulais faire un essai, mais il y a un problème avec ta dll concernant le clic, et la position. Avec Absolute, la souris reste au coin en haut à gauche. Je voulais incorporer un code en AutoIt ensuite, mais tant qu'il y a cette erreur, je ne peux rien faire.
Code:










' laisser 10 lignes
' left 0,500:top 0,300  :' une fois que cela marche, enlever l'aspostrophe.
dim dll$ , i%, x0%, y0%
x0%=20:y0%=200

dll$ = "E:\COURS_Pano\Dlls\KGF.dll"

dll_on dll$
wait 200
i%=dll_call2("AbsoluteMousePosition",x0%,y0%)
i%=dll_call2("AbsoluteMouseLeftClick",x0%,y0%)
' teste ensuite d'envoi de caractères à partir d'un programme autoit 
dll_off
Revenir en haut Aller en bas
Klaus

Klaus


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

Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyLun 3 Sep 2012 - 17:18

@Cosmos70:
J'ai fait une correction. Regarde si cela correspond à ce que tu souhaites.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Invité
Invité




Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyLun 3 Sep 2012 - 18:23

Je viens de la télécharger. Je ne vois aucun changement. Toujours en haut à gauche.
EDIT: c'est KGF que j'ai téléchargé.
Revenir en haut Aller en bas
Klaus

Klaus


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

Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyLun 3 Sep 2012 - 19:08

Chez moi, le curseur de place à environ 1 cm de gauche et 10 cm du haut, ce qui semble normal. Réessaie...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Invité
Invité




Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyLun 3 Sep 2012 - 19:39

Ok c'est bon. En fait j'ai un dossier E:\Dlls, et celui qui est dans le programme plus haut. Le premier je ne me souvenais pas qu'il existait.

Au fonctionnement du programme, avec l'éditeur Panoramic placé en 0,0, je me retrouve en ligne 7. Cette fois ça marche.
Merci.
Revenir en haut Aller en bas
Invité
Invité




Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyLun 3 Sep 2012 - 19:52

Donc je reprend mon exemple, et avec un programme AutoIt d'une ligne compilé:
Code:

Send("rem ceci est un envoi depuis AutoIt")

Avec le programme Panoramic et ta dll:
Code:











' laisser 10 lignes
 left 0,500:top 0,300
dim dll$ , i%, x0%, y0%
x0%=20:y0%=200

dll$ = "E:\COURS_Pano\Dlls\KGF.dll"

dll_on dll$
wait 200
i%=dll_call2("AbsoluteMousePosition",x0%,y0%)
i%=dll_call2("AbsoluteMouseLeftClick",x0%,y0%)
' i%=dll_call2("MousePosition",x0%,y0%)
 
dll_off
' panoramic@klausgunther
' panoramic123
execute "z:\envoi_clavier.exe"
et le programme autoIt: envoi_clavier.exe
Voir le Fichier : envoi_clavier.exe

Si tu fais l'essai en mettant les bons chemins, il me rajoute en ligne 8 sur l'éditeur: "rem ceci est un envoi depuis AutoIt".

Si ça ne marche pas avec Panoramic, c'est que Jack a utilisé une autre conception pour faire Panoramic.
Pour info: AutoIt est language de script.

Édit: je n'ai pas fait gaffe, je suis repartie ici sur la gestion de la souris. Quoiqu'on ait débordé sur le poste Nardo, et avec toutes mes excuses.
Revenir en haut Aller en bas
Klaus

Klaus


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

Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyLun 3 Sep 2012 - 20:48

Voici ce que ça donne chez moi (j'ai seulement adapté les chemins d'accès aux fichiers):
Dll permettant de gérer la souris - Page 2 Aa119

Cela me semble bon, non ?
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Invité
Invité




Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyLun 3 Sep 2012 - 21:30

Donc cela me donne en partie raison. Je ne connais pas le handle de l'éditeur Panoramic. J'ai juste avec la dll cliqué sur l'éditeur, et les touches du clavier vont directement sur le foreground actuel. Quand au n° de ligne, tout dépend des paramètres écran et taille de la police.

Maintenant est-ce que tu peux avoir le même résultat, là je ne peux pas répondre. Rien ne dit que Panoramic travaille comme AutoIt.
Revenir en haut Aller en bas
Yannick




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

Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: re   Dll permettant de gérer la souris - Page 2 EmptyLun 3 Sep 2012 - 22:31

@ Klaus,

une petite parenthèse... Laughing

ClickSetLink peut il être associé à un picture,
pour savoir si la souris est dedans ?


edit : grrrrr...j'ai encore écrit une c...., pas de handle sur picture... Crying or Very sad


Dernière édition par ygeronimi le Lun 3 Sep 2012 - 23:06, édité 1 fois
Revenir en haut Aller en bas
Invité
Invité




Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyLun 3 Sep 2012 - 22:53

@Klaus.
Dans le cas où tu arrive à simuler le clavier, il serait aussi bon de prévoir l'appui simultané sur les touches ALT CTRL WINDOW ou autre. Avec WINDOWS TAB, on peut ainsi passer d'un programme à un autre sans avoir besoin du handle.
Pour info, je mets l'aide donnée à SEND() d'AutoIt.
Je viens d'ouvrir un compte pour WebDAW. malheureusement à chaque fois QtWeb plante à l'envoi d'un fichier. Aussi je mets l'exemple ici:

Spoiler:

Au cas où? Moi je m'en fout, j'en A...t pour le faire Very Happy alien drunken
Revenir en haut Aller en bas
Klaus

Klaus


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

Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyLun 3 Sep 2012 - 23:27

Effectivement, Cosmos70. Mes fonctions permettent d'envoyer n'importe quelle touche, y compris Entrée, les flèches, les touches F1, F2, ... la touche TAB, ... et chacune de ces touches peut être affectée ou non de n'importe quelle combinaison de shift, control et alt. Je peux même envoyer uniquement une touche shift, control ou alt...

Et pour YGeronimi, je précise l'utilisation de l'interception de clics de souris Il y a deux fonctions pour mettre le mécanisme au point:
1. ClickSetHook déclare l'interception des clics et autres évènements de souris pour un objet dont on fournit le handle. Donc, pour cette raison, un picture ne peut pas être géré de cette manière. Cette routine donne aussi le lien vers un objet edit recevant les coordonnées précises du clic.
2. ClickSetLink lie un évènement souris à un objet bouton de Panoramic, dont l'évènement on_click sera déclenché comme si la souris avait agi sur ce bouton.

Ces deux fonctions ont une action complémentaire. La première permet d'intercepter l'action de la souris et de récupérer les coordonnées, et la seconde permet d'être averti par un évènement Panoamic qu'un tel évènement souris a eu lieu - peut-être dans une autre form, cela n'a pas d'importance.

Malheureusement, les objets PICTURE et ALPHA n'ont pas de handle car ce ne sont pas des contrôles fenêtrées dans le sens de Windows. Ces objets sont dessinés de façon interne par la form qui les contient, et c'est beaucoup plus compliqué d'y intervenir.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Invité
Invité




Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyJeu 6 Sep 2012 - 21:43

J'ai un problème avec Pagiciel, et je ne vois pas d'où cela vient.
Lorsque je me serts de la molette, celui-ci me fait un scroll sur un list, donc execute les items. Ne pourrais-tu faire une fonction qui désactive et active le scroll de la molette?
Merci.
Il doir y avoir une inter-action avec le timer. J'ai désactivé pratiquement tous les début de sous-programme, pour les réactiver à la fin, si c'est souhaitable, mais je ne vois quoi faire de plus.

Il y a peu de temps Jack nous a dit qu'il avait revu les return pour les limiter à mille. Je ne sais pas s'il y a un rapport, mais j'ai constaté que ce problème de: pas de repeat dans les messages d'erreurs, est maintenant monnaie courante. Je suis certain de ne pas les dépasser. Je ne sais pas comment cela est pour vous dans vos programmes, je me demande si il n'y a pas un bug qui a été fait. J'ai revu tous les appels, et sont même listés, et visible à la demande. mais....
Revenir en haut Aller en bas
Klaus

Klaus


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

Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyJeu 6 Sep 2012 - 22:27

Regarde ceci:
Code:
list 1
dim i%
for i%=1 to 100
  item_add 1,str$(i%)
next i%
end

Si tu ne cliques PAS dans la liste, même si le curseur est dessus, la molette n'a aucune action sur la liste.

Maintenant, tu cliques dedans - la ligne cliquée se mettra en bleu. En utilisant la molette, tu verras effectivement un scroll, mais la ligne bleue n'a PAS été déplacée ! Il n'y a donc pas d'autre sélection dans la liste.

Ceci est le fonctionnement normal de Windows. Je ne vois pas ce qu'on pourrait y faire, ni ce que ce comportement pourrait avoir de gênant. cela change simplement la visualisation de la liste, et non la sélection de la ligne active.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Invité
Invité




Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 EmptyJeu 6 Sep 2012 - 22:51

Le problème est que réellement je ne suis pas sur la liste, d'ailleurs mon programme le cache, pour montrer la feuille complète, et c'est en me rapprochant du bord gauche à 10 pixels que le list se montre pour choisir une autre feuille. De plus j'ai mis aux appels de cette list, un set_focus 0. On dirait que le timer ramène le focus sur cette liste.
Tant que je ne me sert pas de la molette, il n'y a pas de problème, non plus si je suis sur un memo en me servant de la molette. Peut-être, je vais essayer, envoyer un clic sur la forme 0. Il manque peut-être ce clic?
Merci quand-même.
Revenir en haut Aller en bas
Contenu sponsorisé





Dll permettant de gérer la souris - Page 2 Empty
MessageSujet: Re: Dll permettant de gérer la souris   Dll permettant de gérer la souris - Page 2 Empty

Revenir en haut Aller en bas
 
Dll permettant de gérer la souris
Revenir en haut 
Page 2 sur 3Aller à la page : Précédent  1, 2, 3  Suivant
 Sujets similaires
-
» Outil interactif pour gérer un fichier ILB
» Gérer les fenêtres Internet
» Gérer les dates de péremption
» V2.82 du 15/02/2014 - possibilité de gérer plusieurs WB
» Gérer un moteur 2D utilisant DirectX dans KGF ?

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