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
» Button_picture
par pascal10000 Aujourd'hui à 11:41

» Pourquoi le compilateur stagne
par Minibug Aujourd'hui à 11:09

» 4 (en analyse): SYNEDIT_TARGET_IS_OBJECT devient inactif
par Jack Aujourd'hui à 10:09

» 3 (en analyse): Mauvaise interprétation du string "THEN"
par Jack Aujourd'hui à 10:03

» KGF.dll - demandes ou suggestions de modifications ou ajouts
par Marc Aujourd'hui à 10:00

» KGF_dll - nouvelles versions
par pascal10000 Hier à 17:27

» Mah-Jong européen new-look
par Minibug Mar 12 Déc 2017 - 22:31

» track_bar circulaire
par Klaus Mar 12 Déc 2017 - 13:54

» API Windows
par Klaus Mar 12 Déc 2017 - 3:21

» Cartes de voeux, menus, etc.
par JL35 Lun 11 Déc 2017 - 17:48

» a l'aide klaus
par Minibug Lun 11 Déc 2017 - 11:42

» bug SYNEDIT_TARGET_IS_OBJECT
par Jack Lun 11 Déc 2017 - 0:16

» Jukebox : Serge Reggiani
par papydall Sam 9 Déc 2017 - 5:58

» Ecouter la radio fm sur votre pc
par pascal10000 Sam 9 Déc 2017 - 3:42

» anomalie
par Klaus Sam 9 Déc 2017 - 3:21

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Décembre 2017
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
25262728293031
CalendrierCalendrier

Partagez | 
 

 Affichage de gif animé.

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

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: Affichage de gif animé.   Sam 8 Nov 2014 - 12:03

Bonjour.

Je viens de découvrir que Panoramic permettait d'afficher, par un moyen détourné, des gifs animés.

Ce qui permet d'égayer un peu les pages ternes des programmes.

@Klaus: serait-il possible de cacher la barre de défilement de l'objet html, qui me gêne un peu ?

Code:
dim hnd%, res%, url$

dll_on "kgf.dll"

afficher_gif_anime()
end

sub afficher_gif_anime()
    file_open_write 1,"gif.htm"
    file_writeln 1,"<html>"
    file_writeln 1,"<img src='gifs_animes/boussole.gif'>"
    file_writeln 1,"</html>"
    file_close 1

    hnd%=handle(0)
    url$="file://"+dir_current$+"/gif.htm"
    res%=dll_call1("WBCreate",hnd%)
    res%=dll_call4("WBLocate",20,20,130,130)
    res%=dll_call1("WBUrl",adr(url$))
end_sub
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5613
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: Affichage de gif animé.   Sam 8 Nov 2014 - 13:12

@Klaus: a écrit:
serait-il possible de cacher la barre de défilement de l'objet html, qui me gêne un peu ?

Il suffit d’agrandir la fenêtre de vision.
Par exemple, changer la ligne 18, comme ceci
Code:
res%=dll_call4("WBLocate",20,20,230,230)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Pedro Alvarez

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: Affichage de gif animé.   Sam 8 Nov 2014 - 13:18

Bonjour.

Merci Papydall.

Ok, mais ta solution ne me convient pas.

Je voudrais que la taille de la fénêtre de l'objet html ne dépasse pas la dimension de l'image gif.

Ceci afin de pouvoir inclure l'animation n'importe où sur l'écran de mon logiciel principal, sans interférer avec les autres objets.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5613
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: Affichage de gif animé.   Sam 8 Nov 2014 - 13:31

Je pense qu’il faut d'abord connaitre les dimensions de l’image à afficher pour ajuster les dimensions de la fenêtre de vision.

Code:
 res%=dll_call4("WBLocate",x1,y1,w+x1,h+y1)
' x1,y1 :  coordonnées du point haut gauche de la fenêtre de vision
' w et h : largeur et hauteur de l'image GIF
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Klaus

avatar

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

MessageSujet: Re: Affichage de gif animé.   Sam 8 Nov 2014 - 14:08

Télécharge la nouvelle version V3.84 du 8/11/2013 de KGF.dll. Il y a 2 nouvelles fonctions qui résolvent ton problème. Et voici ton code adapté à cela:
Code:
dim hnd%, res%, url$

dll_on "kgf.dll"

afficher_gif_anime()
end

sub afficher_gif_anime()
    file_open_write 1,"gif.htm"
    file_writeln 1,"<html>"
    file_writeln 1,"<img src='gifs_animes/boussole.gif'>"
    file_writeln 1,"</html>"
    file_close 1

    hnd%=handle(0)
    url$="file://"+dir_current$+"/gif.htm"
    res%=dll_call1("WBCreate",hnd%)
    res%=dll_call4("WBLocate",20,20,130,130)
    res%=dll_call1("WBUrl",adr(url$))
    res%=dll_call2("WBScrollBars",0,0) : ' <======NOUVEAU: absence des 2 barres
end_sub
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: affichage de gif animé.   Dim 9 Nov 2014 - 10:41

Bonjour.

Merci Klaus pour la nouveauté.

C'est beaucoup mieux maintenant.

Voici le code que j'utilise.

L'appel de la sub se fait ainsi:

afficher_gif_anime("ecole4",120,30,130,100,"#ffffa4",1)


Code:
sub afficher_gif_anime(nom_image$,x%,y%,l%,h%,couleur$,flag%)
    zz%=0
    file_open_write 1,nom_image$+".htm"
    file_writeln 1,"<html>"
    if flag%=0
      zz%=20
      file_writeln 1,"<body bgcolor='"+couleur$+"'>"
      file_writeln 1,"<img src='gifs_animes/"+nom_image$+".gif'>"
          else
      file_writeln 1,"<body background='gifs_animes/"+nom_image$+".gif'>"
    end_if
    file_writeln 1,"</html>"
    file_close 1

    hnd%=handle(160)
    url$="file://"+dir_current$+"/"+nom_image$+".htm"
    res%=dll_call1("WBCreate",hnd%)
    res%=dll_call4("WBLocate",x%,y%,l%+zz%,h%+zz%)
    res%=dll_call1("WBUrl",adr(url$))
    res%=dll_call2("WBScrollBars",0,0)
end_sub
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Pedro Alvarez

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: affichage de gif animé.   Dim 9 Nov 2014 - 12:56

Bonjour.

@Klaus.

Est-il possible de lancer une action (exécution d'une sub) en cliquant sur un objet html ?

Merci de la réponse.

Bon dimanche.

J'ai essayé le code suivant, mais il ne fonctionne pas.

Code:
dim hnd%, hndpos%, res%, url$, wb%

dll_on "kgf.dll"

label texte

afficher_gif_anime()
end

sub afficher_gif_anime()
    file_open_write 1,"gif.htm"
    file_writeln 1,"<html>"
    file_writeln 1,"<body background='gifs_animes/espagnol.gif'>"
    ' file_writeln 1,"<img src='gifs_animes/espagnol.gif' align=top border=0>"
    file_writeln 1,"</html>"
    file_close 1

    hnd%=handle(0)
    url$="file://"+dir_current$+"/gif.htm"
    wb%=dll_call1("WB_Create",hnd%)
    ' res%=dll_call1("WBCreate",hnd%)
    res%=dll_call5("WB_Locate",wb%,20,20,123,89)
    res%=dll_call2("WB_Url",wb%,adr(url$))
    res%=dll_call3("WB_ScrollBars",wb%,0,0)
   
    edit 2
    left 2,200
    on_click 2,texte
    hndpos%=handle(2)
    res%=dll_call2("ClickSetHook",wb%,hndpos%)
    res%=dll_call2("ClickSetLink",hndpos%,1)
end_sub

texte:
  message "hello"
return
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: Affichage de gif animé.   Dim 9 Nov 2014 - 14:56

Dans l'état actuel des choses, ce n'est pas possible. Et le problème est complexe. Je vais y réfléchir pour déterminer la faisabilité.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: affichage de gif animé.   Dim 9 Nov 2014 - 16:47

Bonjour.

@Klaus.

J'entrevois une solution, comme suit.
Le problème revient à intégrer cette méthode dans kgf.dll.

Code:
dim hnd%, hndpos%, res%, true%, url$, x%, y%, wb%

true%=1

dll_on "kgf.dll"

label texte

afficher_gif_anime()
end

sub afficher_gif_anime()
    file_open_write 1,"gif.htm"
    file_writeln 1,"<html>"
    file_writeln 1,"<body background='gifs_animes/espagnol.gif'>"
    file_writeln 1,"</html>"
    file_close 1

    hnd%=handle(0)
    url$="file://"+dir_current$+"/gif.htm"
    res%=dll_call1("WBCreate",hnd%)
    res%=dll_call4("WBLocate",20,20,123,89)
    res%=dll_call1("WBUrl",adr(url$))
    res%=dll_call2("WBScrollBars",0,0)
   
    while true%=1
          res%=dll_call3("GetMousePosition",hnd%,adr(x%),adr(y%))
          res%=dll_call6("IsPointInRectangle",x%,y%,20,20,123,89)
          caption 0,str$(x%)+","+str$(y%)+": "+str$(res%)
          if res%=1 then message "hello"
    end_while
   
end_sub

texte:
  message "hello"
return
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: Affichage de gif animé.   Dim 9 Nov 2014 - 17:24

Essaie plutôt comme ceci:

1. utilise
wbhnd% = dll_call1("WBFunction",Cool
pour récupérer le handle du browser

2. utilise
res% = dll_call5("ClickDefineRect",r%,x%,y%,w%,h%)
pour définir un rectangle, en passant 1 comme numéro du rectangle dans le paramètre r%

3. utilise
res% = dll_call3("ClickSetLinkRect",hnd_button%,typ%,r%)
pour intercepter un clic sur le browser, avec:
==> 1 comme numéro de rectangle r%
==> hnd_button% étant le handle d'un bouton (invisible) que tu as créé. Sa routine ON_CLICK sera déclenchée s'il y a un clic dans le rectangle 1
==> typ% prend les valeurs suivantes:
-5 = souris entre dans le rectangle
-6 = souris sort de le rectangle
-7 = souris bouge dans le rectangle
l faut donc faire 3 appels de ce genre.

Avec cela, tu interceptes si le curseur entre ou sort d'un rectangle spécifique. Mais cela ne détecte pas le clic proprement-dit.

Pour cela, tu peux essayer:
(1) comme ci-dessus

2. tu utilises
res% = dll_call2("ClickSetHook",hnd%,hndpos%)
==> hnd% étant le résultat de (1)
==> hndpos% étant le handle d'un bouton (invisible) que tu as créé et dont l'évènement on_click sera déclenché par un clic sur le browser

3. dans la routine on_click du bouton, tu récupères la position de la souris par
res% = dll_call3("GetMousePosition",hnd%,adr(xp%),adr(yp%))
avec xp% et yp% recevant les coordonnées (relatives) du clic sur l'objet de handle hnd% (le browser)

4. et, finalement, vérifies si les coordonnées du clic sont dans le rectangle voulu, par
res% = dll_call6("IsPointInRectangle",xp%,yp%,xr%,yr%,wr%,hr%)


Je continue à chercher un moyen de faire une fonction spécifique pour cela.

Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: affichage de gif animé.   Jeu 13 Nov 2014 - 20:09

Bonjour.

@Klaus.

Serait-il possible de regrouper les 4 commandes suivantes en une seule commande ?

Merci d'avance Klaus.

Code:
url$="file://"+dir_current$+"/"+nom_image$+".htm"

res%=dll_call1("WBCreate",handle(no%))
res%=dll_call4("WBLocate",x%*fl,y%*fh,int((l%+plusl%)*fl),int((h%+plush%)*fh))
res%=dll_call1("WBUrl",adr(url$))
res%=dll_call2("WBScrollBars",0,0)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: Affichage de gif animé.   Jeu 13 Nov 2014 - 21:03

Oui, comme ceci:
Code:

url$="file://"+dir_current$+"/"+nom_image$+".htm"
NewBrowser(no%,x%,y%,fl,fh,l%,plusl%,h%,plush%,url$)

...

sub NewBrowser(no%,x%,y%,fl,fh,l%,plusl%,h%,plush%,url$)
  res%=dll_call1("WBCreate",handle(no%))
  res%=dll_call4("WBLocate",x%*fl,y%*fh,int((l%+plusl%)*fl),int((h%+plush%)*fh))
  res%=dll_call1("WBUrl",adr(url$))
  res%=dll_call2("WBScrollBars",0,0)
end_sub
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: affichage de gif animé.   Jeu 13 Nov 2014 - 22:07

Bonsoir.

@Klaus.

Non, en fait, j'espérais la création d'une commande interne à KGF.DLL.

Car, la procédure que tu proposes, je sais faire.

Merci.

Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: Affichage de gif animé.   Jeu 13 Nov 2014 - 22:47

Impossible, Pedro, du fait du nombre de paramètres à passer. Panoramic ne peut pas passer plus de 6 paramètres à une fonction DLL. C'est pour cela que tout est découpé en petites unités fonctionnelles.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: Affichage de gif animé.   Jeu 13 Nov 2014 - 22:53

Bonsoir.

Ah, OK, pas de problème Klaus.

Merci de la précision.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Affichage de gif animé.   

Revenir en haut Aller en bas
 
Affichage de gif animé.
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Affichage sous IE des smileys et gif animés
» Erreur java affichage didacticiel fourni avec E-Anim
» Hebergement et affichage des jeux... e-anim
» [Résolu] e-anim fx ?
» [Résolu] Affichage images dans un mail

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: