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
» Planétarium virtuel.
par Jack Hier à 20:59

» ajouter des blancs dans un TXT
par lepetitmarocain Mer 15 Aoû 2018 - 13:00

» 11 (en analyse): commandes sur TAB et SUB_MENU.
par Jack Mar 14 Aoû 2018 - 14:10

» 10 (en analyse): Erreur sur variable locale.
par Jack Mar 14 Aoû 2018 - 14:05

» Métamatière, éternité et renouvellement
par Oscaribout Mar 14 Aoû 2018 - 12:40

» De retour...
par Yannick Lun 13 Aoû 2018 - 15:11

» bug SEVERE fnc+sub : (35)name already defined
par Oscaribout Dim 12 Aoû 2018 - 23:55

» Encadrement
par Jean Claude Dim 12 Aoû 2018 - 11:53

» Des rectangles...
par JL35 Dim 12 Aoû 2018 - 10:53

» TRIGGER_KEY_COMBINED_TOUCH
par Jean Claude Mar 7 Aoû 2018 - 20:58

» ITEM_SELECT N,L pour synedit
par Jean Claude Mar 7 Aoû 2018 - 19:11

» amélioration panoramic
par silverman Dim 5 Aoû 2018 - 18:34

» Commande file_readln.
par Pedro Alvarez Dim 5 Aoû 2018 - 17:08

» Klaus ?
par Jack Sam 4 Aoû 2018 - 22:48

» Défragmentation du disque dur
par JL35 Sam 4 Aoû 2018 - 21:06

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Août 2018
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
2728293031  
CalendrierCalendrier

Partagez | 
 

 KGF.dll - demandes ou suggestions de modifications ou ajouts

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

avatar

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

MessageSujet: Re: KGF.dll - demandes ou suggestions de modifications ou ajouts   Sam 16 Déc 2017 - 10:15

Merci ! Je vais continuer...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Klaus

avatar

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

MessageSujet: Re: KGF.dll - demandes ou suggestions de modifications ou ajouts   Sam 16 Déc 2017 - 10:48

La locution
en el año de gracia
n'existe pas dans le texte proposé. Ni aucune des locutions, d'ailleurs.

Pour le texte proposé, et pour les locutions proposés, peux-tu me dire où il faudrait trouver quoi et quel devrait être le résultat ? La, je nage...

D'ailleurs, ton texte comprend des guillemets. On ne peut pas le charger tel quel dans une combo. Qu'est-ce qu'il faut faire avec les gullemets ? Tu sais bien que Panoramic a un problème avec ça. Et, faut-il séparer le texte en lignes individuelles ? Faut-il retourner, outre que la partie droite d'une locution éventuellement trouvée, une indication de la ligne dans laquelle elle a été trouvée ?
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Klaus

avatar

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

MessageSujet: Re: KGF.dll - demandes ou suggestions de modifications ou ajouts   Sam 16 Déc 2017 - 11:18

Avec un combo, les guillemets posent problème. Mais il paraît qu'on peut le charger dans un mémo. Cela te conviendrait-il ? Et, vraiment, faut-il séparer les phrases en ligne, ou fait-il considérer le texte donné comme une seule chaîne de caractères ? Car dans ce cas, pourquoi avoir proposé une combo en entrée, pour le texte ? Une seule chaîne suffirait, alors, comme je l'avais imaginé au début...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

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

MessageSujet: Demande de nouvelle commande.   Sam 16 Déc 2017 - 15:24

Bonjour.

@Klaus.

En réponse à ta question, le texte de départ est contenu dans une unique variable.

Exemple

a$="Mirando al cielo desde cualquiera de los hemisferios, se pueden ver sin telescopio unas 4.500 estrellas. Esa minúscula muestra de los innumerables soles del universo ni siquiera es representativa de los mundos que existen. Las estrellas más abundantes, tres de cada cuatro en la Vía Láctea, son las enanas rojas y tienen un brillo tan tenue que no pueden contemplarse a simple vista. Ni siquiera la más cercana de ellas, Proxima Centauri, a solo 4,5 años luz, es visible en el cielo nocturno. Sin embargo, es en torno a esos astros donde se empieza a plantear que, por probabilidad, será más fácil encontrar mundos habitables. Precisamente en esa estrella vecina, los astrónomos acaban de encontrar un nuevo planeta que puede ofrecer una idea sobre la naturaleza de los refugios de la vida en el cosmos, bastante distintos de nuestro planeta o de lo que cabría imaginar si la Tierra es nuestra referencia."


Il faut donc passer en paramètre l'adresse de cette variable, et ne pas décomposer a$ en plusieurs lignes.


Code:
sin embargo , los diputados de la duma y el fiscal general tenían otra idea en mente : se expandió el alcance del registro , y el candidato más probable para supervisor es ahora roskomnadzor ( la agencia federal de supervisión para las telecomunicaciones y los medios de comunicación ) . ;locut; les députés de la douma et le procureur général , quoi qu ' il en soit , avaient d ' autres projets : la liste a été augmentée , et le candidat le plus probable à sa supervision est désormais roskomnadzor ( l ' agence fédérale de supervision pour les technologies de l ' information et les communications ) . ; locut;
sin embargo a alex tang le alivia ( ing ) que el problema de exceso de estudiantes de medicina sea reconocido , aunque siente que es demasiado tarde . ;locut; alex tang , toutefois , est soulagé que le problème du surnombre des étudiants en médecine ait été reconnu , mais il pense qu ' il est trop tard . ; locut;
sin embargo acumular bienes es peligroso en jaci . ;locut; cependant , accumuler de la richesse à jaci est très dangereux . ; locut;
sin embargo ahora ha cambiado de parecer : ;locut; cependant , il a désormais changé d ' avis : ; locut;
sin embargo ahora , con la reinauguración del ferrocarril del hijaz , hay un tren que conecta la ciudad de zarqa ' a con amman . ;locut; cependant , avec la réouverture de la ligne de hijaz railway , il existe un train qui relie la ville de zarqa ' a à amman . ; locut;

On recherche donc, dans la variable a$, la sous-chaîne suivante:
(1er item de la combo contenant les locutions)

Code:
sin embargo , los diputados de la duma y el fiscal general tenían otra idea en mente : se expandió el alcance del registro , y el candidato más probable para supervisor es ahora roskomnadzor ( la agencia federal de supervisión para las telecomunicaciones y los medios de comunicación ) .

Si la sous-chaîne ci-dessus est trouvée dans a$, on enregistre dans le second objet combo la ligne complète du 1er item indiqué, soit la partie gauche ci-dessus et sa partie droite.

On continué ensuite avec les autres items, sans vider évidemment le 2è combo.

Suis-je clair ?

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

avatar

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

MessageSujet: Demande de nouvelle commande.   Sam 16 Déc 2017 - 15:33

Bonjour.

@Klaus.

Voici un exemple plus court.

a$="aquí estoy !"

Liste des locutions contenues dans un fichier et non plus dans un objet combo:

Code:
aquí está ! ;locut; voilà ! ; locut;
aquí estoy ! ;locut; me voici ! ; locut;
aquí estoy ! ;locut; me voilà ! ; locut;

On recherche dans a$ la partie gauche de chacune des lignes du fichier.
Le séparateur étant ici ;locut;

Soit ici

Code:
aquí está !
aquí estoy !
aquí estoy !

On trouve donc 2 occurences dans a$.

Code:
aquí estoy !
aquí estoy !

Le second combo devra enregistrer les 2 lignes entières correspondantes, soit:

Code:
aquí estoy ! ;locut; me voici ! ; locut;
aquí estoy ! ;locut; me voilà ! ; locut;
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: KGF.dll - demandes ou suggestions de modifications ou ajouts   Sam 16 Déc 2017 - 17:41

Merci, Pédro. Là, c'est parfaitement clair. Je vais m'y mettre... ce ne sera pas long.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Klaus

avatar

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

MessageSujet: Re: KGF.dll - demandes ou suggestions de modifications ou ajouts   Sam 16 Déc 2017 - 18:24

Tu peux charger KGF.dll et essayer la fonction suivante:
Code:
res% = dll_call4("FindMultipleStringsInString",adr(InString$),adr(Separator$),handle(SearchCombo%),handle(ResultCombo))
InString$ = chaîne de caractères contenant le texte à analyser
Sepoarator = chaîne de caractères contenant le séparateur des critères de recherche
SearchCombo% = numéro d'un objet Combo Panoramic contenant la liste des critères à chercher
ResultCombo% = numéro d'un objet Combo Panoramic recevant toutes les lignes dont la partie gauche est dans le texte à analyser

De façon interne, aussi bien le texte à analyser que les critères sont transformés en minuscules.

Chez moi, ça marche avec le petit exemple. ¨Pour l'exemple plus long, il y a un problème: le texte proprement-dit parle d'astronomie, alors que les locutions parlent de politique, et on ne trouve aucune correspondance. Mais il y a des chances que ça marche chez toi, dans ton contexte.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

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

MessageSujet: Demande de nouvelle commande.   Sam 16 Déc 2017 - 18:45

Bonsoir.

@Klaus.

Voici le test que je viens de réaliser.
Le fichier des locutions est téléchargeable à l'adresse indiquée dans le code.

Code:
' https://mon-partage.fr/f/KDwYj4Ga/

dll_on "kgf"

dim a$, Separator$
a$="Mirando al cielo desde cualquiera de los hemisferios, se pueden ver sin telescopio unas 4.500 estrellas. Esa minúscula muestra de los innumerables soles del universo ni siquiera es representativa de los mundos que existen. Las estrellas más abundantes, tres de cada cuatro en la Vía Láctea, son las enanas rojas y tienen un brillo tan tenue que no pueden contemplarse a simple vista. Ni siquiera la más cercana de ellas, Proxima Centauri, a solo 4,5 años luz, es visible en el cielo nocturno. Sin embargo, es en torno a esos astros donde se empieza a plantear que, por probabilidad, será más fácil encontrar mundos habitables. Precisamente en esa estrella vecina, los astrónomos acaban de encontrar un nuevo planeta que puede ofrecer una idea sobre la naturaleza de los refugios de la vida en el cosmos, bastante distintos de nuestro planeta o de lo que cabría imaginar si la Tierra es nuestra referencia."

Separator$=";locut;"

combo 1
left 1,-200
file_load 1,"fichiers\locutions_espagnol_français.txt"
combo 2
width 2,600

res%=dll_call4("FindMultipleStringsInString",adr(a$),adr(Separator$),handle(1),handle(2))

Je n'obtiens malheureusement aucun résultat, ou alors le temps de traitement est excessivement long.
D'ailleurs, la 2è combo n'apparaît même pas.

Pourrais-tu tester le code de ton côté ?
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: KGF.dll - demandes ou suggestions de modifications ou ajouts   Sam 16 Déc 2017 - 20:05

Le problème vient de ton fichier qui est beaucoup trop grand pour pouvoir être chargé dans une ComboBox. Même 1000 enregistrements posent problème. Alors, ne parlons pas de ton fichier...

J'ai testé mon objet StringList de KGF.dll, et là, le chargement se fait, allez, disons 3 secondes maxi.

Je suis donc en train d'adapter cette fonction pour pouvoir utiliser un StringList de KGF.dll au lieu d'une Combo.

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

avatar

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

MessageSujet: Demande de nouvelle commande.   Sam 16 Déc 2017 - 20:24

Bonsoir.

@Klaus.

Merci d'avoir pris le temps de tester.
Oui, en effet, je pense que l'utilisation d'un objet StringList à la place d'une combo serait bénéfique.

J'entrevois une solution encore plus rapide.


Code:
dim d$, e$, f$, ftf%, i%, k%, tampon$, posact%, res%, t$, te$, taille%, x%
dim tab$(1000)

t$="Mirando al cielo desde cualquiera de los hemisferios , se pueden ver sin telescopio unas 4.500 estrellas . Esa minúscula muestra de los innumerables soles del universo ni siquiera es representativa de los mundos que existen . Las estrellas más abundantes , tres de cada cuatro en la Vía Láctea , son las enanas rojas y tienen un brillo tan tenue que no pueden contemplarse a simple vista . Ni siquiera la más cercana de ellas , Proxima Centauri , a solo 4,5 años luz , es visible en el cielo nocturno . Sin embargo , es en torno a esos astros donde se empieza a plantear que, por probabilidad , será más fácil encontrar mundos habitables . Precisamente en esa estrella vecina , los astrónomos acaban de encontrar un nuevo planeta que puede ofrecer una idea sobre la naturaleza de los refugios de la vida en el cosmos , bastante distintos de nuestro planeta o de lo que cabría imaginar si la Tierra es nuestra referencia ."
t$=lower$(t$)

k%=0
while 0=0
      x%=instr(t$," ")
      if x%=0 then exit_while
      k%=k%+1
      tab$(k%)=left$(t$,x%-1)
      t$=right_pos$(t$,x%+1)
end_while
taille%=k%

. On commence par décomposer la chaîne de départ en mots individuels, que l'on place dans un tableau.
On considère ensuite les mots par groupe de deux.
. (A) On recherche, dans le fichier des locutions, la 1ère ligne qui commence par le groupe de mots.
. Si aucune occurrence n'est trouvée, on retourne en (A).
. (B) Si au moins une occurrence est trouvée, on lit chaque ligne du fichier des locutions, à partir de la ligne trouvée.
. Si le début de la ligne lue commence par les deux mots, on enregistre cette ligne dans la combo, puis on retourne en (B).
. Si non, retour en (A).

Qu'en penses-tu ?

On devrait obtenir un gain de vitesse spectaculaire !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Pedro Alvarez

avatar

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

MessageSujet: Demande de nouvelle commande.   Sam 16 Déc 2017 - 20:45

Bonsoir.

@Klaus.

J'ai créé un petit code qui montre ce que devrait réaliser la commande.
Le temps d'exécution est encore beaucoup trop long.

Code:
dim a$, b$, d$, e$, f$, i%, k%, n%, res%, sep$, t$, te$, taille%, x%, y%
sep$=";locut;"

dim tab$(1000)

t$="Mirando al cielo desde cualquiera de los hemisferios , se pueden ver sin telescopio unas 4.500 estrellas . Esa minúscula muestra de los innumerables soles del universo ni siquiera es representativa de los mundos que existen . Las estrellas más abundantes , tres de cada cuatro en la Vía Láctea , son las enanas rojas y tienen un brillo tan tenue que no pueden contemplarse a simple vista . Ni siquiera la más cercana de ellas , Proxima Centauri , a solo 4,5 años luz , es visible en el cielo nocturno . Sin embargo , es en torno a esos astros donde se empieza a plantear que, por probabilidad , será más fácil encontrar mundos habitables . Precisamente en esa estrella vecina , los astrónomos acaban de encontrar un nuevo planeta que puede ofrecer una idea sobre la naturaleza de los refugios de la vida en el cosmos , bastante distintos de nuestro planeta o de lo que cabría imaginar si la Tierra es nuestra referencia ."
t$=lower$(t$)

' Tableau contenant les mots individuels.
k%=0
while 0=0
      x%=instr(t$," ")
      if x%=0 then exit_while
      k%=k%+1
      tab$(k%)=left$(t$,x%-1)
      t$=right_pos$(t$,x%+1)
end_while
taille%=k%

dll_on "kgf"

f$="fichiers\locutions_espagnol_français.txt"
dlist 1
file_load 1,f$  
i%=object_internal(1)

dlist 2

d$=time$

for k%=1 to taille%-1
    e$=tab$(k%)+" "+tab$(k%+1)+" "
    
    te$=" "
    ' On recherche la présence des 2 mots dans le fichier des locutions.
    n%=dll_call3("SearchStringList",i%,adr(e$),adr(te$))
    ' Occurrence trouvée ?
    if n%>0
       while 0=0
             ' Lecture des mots suivants.
             a$=item_read$(1,n%)
             if left$(a$,len(e$))<>e$ then exit_while

             y%=instr(a$,sep$)-1
             if y%>0
                b$=trim$(left$(a$,y%))
                if instr(t$,b$)>0 then item_add 2,a$
             end_if
             n%=n%+1
       end_while
    end_if
next k%        
        
message d$+" : "+time$
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: KGF.dll - demandes ou suggestions de modifications ou ajouts   Sam 16 Déc 2017 - 21:46

Je crois que je tiens quelque chose:
Code:
' test_Pedro_Locutions.bas
' https://mon-partage.fr/f/KDwYj4Ga/

dll_on "kgf.dll"

width 0,700

dim a$, Separator$, res%, file$
a$="Mirando al cielo desde cualquiera de los hemisferios, se pueden ver sin telescopio unas 4.500 estrellas. Esa minúscula muestra de los innumerables soles del universo ni siquiera es representativa de los mundos que existen. Las estrellas más abundantes, tres de cada cuatro en la Vía Láctea, son las enanas rojas y tienen un brillo tan tenue que no pueden contemplarse a simple vista. Ni siquiera la más cercana de ellas, Proxima Centauri, a solo 4,5 años luz, es visible en el cielo nocturno. Sin embargo, es en torno a esos astros donde se empieza a plantear que, por probabilidad, será más fácil encontrar mundos habitables. Precisamente en esa estrella vecina, los astrónomos acaban de encontrar un nuevo planeta que puede ofrecer una idea sobre la naturaleza de los refugios de la vida en el cosmos, bastante distintos de nuestro planeta o de lo que cabría imaginar si la Tierra es nuestra referencia."

Separator$=";locut;"

res% = dll_call2("CreateStringList",1, 0)
file$ = "locutions_espagnol_français.txt"
res% = dll_call2("LoadStringList",1,adr(file$))
res% = dll_call1("StringListItemCount",1)
message "Nombre de locutions: "+str$(res%)

combo 2 : top 2,300
width 2,600

' format: res% = dll_call4("FindMultipleStringsInString",adr(InString$),adr(Separator$),NSL%,handle(ResultCombo%))
res% = dll_call4("FindMultipleStringsInString",adr(a$),adr(Separator$),1,handle(2))
message "Trouvés: "+str$(res%)

res% = dll_call1("DeleteStringList",1)
end

Il faut créer une StringList de KGF.dll et charger le fichier des locutions dedans. Ultra-rapide. Puis, la fonction de recherche prend le numéro de la StringList en paramètre (ici, le 1). Voici le format général de la fonction:
Code:
res% = dll_call4("FindMultipleStringsInString",adr(InString$),adr(Separator$),NSL%,handle(ResultCombo%))
En un instant, elle trouve 60 lignes de résultat.

EDIT

Comme tu peux voir, il y a en fait 3 étapes:
1. création et chargement de la StringList - à faire une seule fois au lancement du programme
2. la recherche pour une chaîne de caractères donnée - à répéter autant que de besoin
3. la suppression de la StringList - à faire en sortie du programme

Ainsi, tu obtiendras des performances intéressantes, je pense !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

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

MessageSujet: Demande de nouvelle commande.   Dim 17 Déc 2017 - 8:00

Bonjour.

@Klaus.

Je viens de tester ton code, et j'obtiens le message d'erreur suivant:

Not correct arithmetic expression line 25.

Bien qu'ayant téléchargé la version 812 de kgf sur ton site à l'instant.

Code:
' test_Pedro_Locutions.bas
' https://mon-partage.fr/f/KDwYj4Ga/

dll_on "kgf.dll"
dim a$, Separator$, res%, file$, version%

version%=DLL_call1("KGFdllVersion",adr(version$))
message version%

width 0,700  

a$="Mirando al cielo desde cualquiera de los hemisferios, se pueden ver sin telescopio unas 4.500 estrellas. Esa minúscula muestra de los innumerables soles del universo ni siquiera es representativa de los mundos que existen. Las estrellas más abundantes, tres de cada cuatro en la Vía Láctea, son las enanas rojas y tienen un brillo tan tenue que no pueden contemplarse a simple vista. Ni siquiera la más cercana de ellas, Proxima Centauri, a solo 4,5 años luz, es visible en el cielo nocturno. Sin embargo, es en torno a esos astros donde se empieza a plantear que, por probabilidad, será más fácil encontrar mundos habitables. Precisamente en esa estrella vecina, los astrónomos acaban de encontrar un nuevo planeta que puede ofrecer una idea sobre la naturaleza de los refugios de la vida en el cosmos, bastante distintos de nuestro planeta o de lo que cabría imaginar si la Tierra es nuestra referencia."

Separator$=";locut;"

res%=dll_call2("CreateStringList",1,0)
file$="fichiers\locutions_espagnol_français.txt"
res%=dll_call2("LoadStringList",1,adr(file$))
' res% = dll_call1("StringListItemCount",1)
' message "Nombre de locutions: "+str$(res%)

combo 2 : top 2,300
width 2,600

res%=dll_call4("FindMultipleStringsInString",adr(a$),adr(Separator$),1,handle(2))
message "Trouvés: "+str$(res%)

res% = dll_call1("DeleteStringList",1)
end
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: KGF.dll - demandes ou suggestions de modifications ou ajouts   Dim 17 Déc 2017 - 9:36

J'ai refais les transerts... ça devrait marcher.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

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

MessageSujet: Demande de nouvelle commande.   Dim 17 Déc 2017 - 10:00

Bonjour.

Un grand merci Klaus.

Je télécharge la nouvelle version de kgf, et te tiens au courant de la suite, après intégration de la nouvelle commande dans mon big logiciel.

Bon dimanche.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Pedro Alvarez

avatar

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

MessageSujet: Demande de nouvelle commande.   Dim 17 Déc 2017 - 18:04

Bonsoir.

@Klaus.

J'ai finalement réussi à intégrer la nouvelle commande dans mon logiciel.
Et je t'informe que tout fonctionne à merveille.

Le gain de vitesse est remarquable, les résultats étant obtenus presque instantanément.

Un grand merci pour cette avancée.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: KGF.dll - demandes ou suggestions de modifications ou ajouts   Dim 17 Déc 2017 - 18:13

Super ! Je suis content. Tu verras: j'ai publié la version et j'ai fait la doc de la fonction.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
pascal10000

avatar

Nombre de messages : 703
Localisation : Troyes
Date d'inscription : 05/02/2011

MessageSujet: Re: KGF.dll - demandes ou suggestions de modifications ou ajouts   Lun 18 Déc 2017 - 22:44

bsr klaus
pourrai tu communique le niveau des vumetre avec un progress_bar
comme ça mon poste sera poste sera presque fini

as tu remarquer l'évolution du poste fm ?
j'y ai incorporer une case de favoris a 9 boutons
delà on enregistrer 9 stations pré-enregistrer
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: KGF.dll - demandes ou suggestions de modifications ou ajouts   Mar 19 Déc 2017 - 0:33

Citation :
pourrai tu communique le niveau des vumetre avec un progress_bar
C'est " dans les cartons"... ça viendra bientôt. Je suis en train d'étudier la possibilité d'étender l'objet AutoUpdater à d'autres objets, comme la Progess_Bar justement.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
pascal10000

avatar

Nombre de messages : 703
Localisation : Troyes
Date d'inscription : 05/02/2011

MessageSujet: Re: KGF.dll - demandes ou suggestions de modifications ou ajouts   Mar 19 Déc 2017 - 0:44

ok j’attends avec impatient
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: KGF.dll - demandes ou suggestions de modifications ou ajouts   Mar 19 Déc 2017 - 3:04

Ce sera publié demain soir avec la doc: ça marche pour les 3 types de barres; Scroll_Bar, Progess_Bar et Track_Bar.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Klaus

avatar

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

MessageSujet: Re: KGF.dll - demandes ou suggestions de modifications ou ajouts   Mar 19 Déc 2017 - 11:37

C'est fait. Nouvelle version de KGF.dll avec une fonction AutoUpdateBar s'appliquant aux SCROLL_BAR, PROGRESS_BAR et TRACK_BAR. Documentation à jour.

Il est chouette, ton poste avec les touches de présélection !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
pascal10000

avatar

Nombre de messages : 703
Localisation : Troyes
Date d'inscription : 05/02/2011

MessageSujet: Re: KGF.dll - demandes ou suggestions de modifications ou ajouts   Mar 19 Déc 2017 - 11:39

merci klaus

c'est super je le télécharge tout de suite
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Oscaribout



Nombre de messages : 189
Date d'inscription : 29/12/2016

MessageSujet: tester WindowTopMost, ChangeWindowSize SendSingleKey   Dim 11 Fév 2018 - 11:16

Bonjour,

Voila, je suis en train de concevoir un programme pour une personne pas doué avec le pc, qui ne connait pas le clavier, et lui permettre de voir ses comptes avec le maximum d'automatisation et sécurité.

Je me bât depuis hier après-midi (jusqu'à 4h) avec kgf pour les fonctions citées dans le titre de ce sujet.

Il s'agit de travailler avec Firefox. Extrêmement compliqué d'avoir le handle de ce celui-ci.

J'ai utilisé plein de choses: comme WindowToMost, GetProcessWindowHandle et tout un tas d'autre que je ne me souviens plus du nom.
Je me suis rendu compte avec les fonctions qui donne le nom des titres que finalement, le handle reçu venait de Panoramic_Editor, ensuite de kgf.chm, d'autre applications qui sont en arrière plan, et le pire d'un bloc-notes dans la barre de tâche qui y est depuis plusieurs jours sans servir. Finalement je m'en suis sorti en faisant une boucle, et la sortie sur le clic d'un textbox de firefox.

Ensuite j'ai du mal à placer la fenêtre en grand mais décalé de 25 pixels du haut, pour avoir une vue du programme avec un message, des boutons en haut.
Cela va bien la première fois, mais ensuite avec SendSingleKey, il y a systématiquement une modification des positions de firefox, et le programme en haut est caché.

Dans les proposition de ChangeWindowSize, on a 0: plein écran
 0 = maximiser la fenêtre
 1 = placer la fenêtre en (gauche%,haut%)
 2 = centrer la fenêtre à l'écran
 3 = placer la fenêtre en (haut%,gauche%) et imposer les dimensions largeur% et hauteur%
 4 = centrer la fenêtre à l'écran et imposer les dimensions largeur% et hauteur%

Moi je veux avoir plein écran mais avec le haut décalé pour voir les commandes du programme en haut, et là les essais ne sont pas optimum.

Je m'en suis sorti, mais je pense qu'il faudrait que tu jètes un œil  à ces commandes.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: KGF.dll - demandes ou suggestions de modifications ou ajouts   Dim 11 Fév 2018 - 12:01

As-tu essayé ChangeWindowSize en mode 3 = placer la fenêtre en (haut%,gauche%) et imposer les dimensions largeur% et hauteur%, avec largeur%=screen_x, hauteur%=screen_y-25, haut%=25 et gauche%=0 ? Le positionnement devrait être correct.

Par contre, je n'ai aucun moyen de "contraindre" Firefox de rester dans cette position. Si, pour une raison qui m'échappe, il décide de se déplacer, je ne peux rien faire. Tu peux le faire à ton niveau, en faisant à nouveau un appel à ChangeWindowSize à des moments stratégiques, par exemple après avoir envyé une touche (suivi d'un petit délai, bien sûr).

Firefox n'est pas un siimple programme. Déjà, à la base, il ouvre un process pour chaque onglet ouvert, ainsi que pour chaque fenêtre Firefox ouverte. Laquelle choisir - pas simple. Puis, le handle trouvé pour Firefox n'est pas forcément celui auquel on peut envoyer des caractères. Je n'ai pas trouvé de méthode fiable pour identifier cela.

Mais tu peux essayer deux choses:

1. Capter Firefox à l'intérieur d'un objet Panoramic
Tu peux passer ton propre programme en full_space, placer un PANEL aux positions et dimensions comme indiquées ci-dessus, puis injecter Firefox dans ce panel. Ile y restera en ne pourra plus du tout se déplacer. Cette injection se fait par exemple par
Code:
res% = dll_call3("LoadBrowserToWindow",hnd%,adr(url$),mode%)
Tu peux aussi tenter
Code:
res% = dll_call2("AttachWindowToWindow",hnd_enfant%,hnd_parent%)
mais ceci impose de connaître le handle de Firefox, ce qui n'est pas le cas de la méthode LoadBrowserToWindow.

2. Créer un programme Panoramic séparé, destiné uniquement à recevoir Firefox.
Tu le dimensionnes et positionnes comme tu veux, puis tu utilises une des deux méthodes ci-dessus pour placer Firefox dans la form 0.

Dans les deux cas, il n'y aura plus de problème de déplacement intempestifs de Firefox.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé




MessageSujet: Re: KGF.dll - demandes ou suggestions de modifications ou ajouts   

Revenir en haut Aller en bas
 
KGF.dll - demandes ou suggestions de modifications ou ajouts
Revenir en haut 
Page 3 sur 5Aller à la page : Précédent  1, 2, 3, 4, 5  Suivant
 Sujets similaires
-
» conseiller du vin---suggestions
» quelques ajouts
» ? DEVENIR COPAINS. (demandes de partenariat)
» ? LES DEMANDES DE PARTENARIAT
» Liste de liens

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: Activité des sites créés par les Panoramiciens. :: Le site de Klaus-
Sauter vers: