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
» Gestion d'un système client-serveur.
KGF_dll - nouvelles versions - Page 19 Emptypar Klaus Ven 17 Mai 2024 - 14:02

» item_index(résolu)
KGF_dll - nouvelles versions - Page 19 Emptypar jjn4 Mar 14 Mai 2024 - 19:38

» Bataille terrestre
KGF_dll - nouvelles versions - Page 19 Emptypar jjn4 Lun 13 Mai 2024 - 15:01

» SineCube
KGF_dll - nouvelles versions - Page 19 Emptypar Marc Sam 11 Mai 2024 - 12:38

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
KGF_dll - nouvelles versions - Page 19 Emptypar Marc Sam 11 Mai 2024 - 12:22

» Philharmusique
KGF_dll - nouvelles versions - Page 19 Emptypar jjn4 Ven 10 Mai 2024 - 13:58

» PANORAMIC V 1
KGF_dll - nouvelles versions - Page 19 Emptypar papydall Jeu 9 Mai 2024 - 3:22

» select intégrés [résolu]
KGF_dll - nouvelles versions - Page 19 Emptypar jjn4 Mer 8 Mai 2024 - 17:00

» number_mouse_up
KGF_dll - nouvelles versions - Page 19 Emptypar jjn4 Mer 8 Mai 2024 - 11:59

» Aide de PANORAMIC
KGF_dll - nouvelles versions - Page 19 Emptypar jjn4 Mer 8 Mai 2024 - 11:16

» trop de fichiers en cours
KGF_dll - nouvelles versions - Page 19 Emptypar lepetitmarocain Mer 8 Mai 2024 - 10:43

» Je teste PANORAMIC V 1 beta 1
KGF_dll - nouvelles versions - Page 19 Emptypar papydall Mer 8 Mai 2024 - 4:17

» bouton dans autre form que 0(résolu)
KGF_dll - nouvelles versions - Page 19 Emptypar leclode Lun 6 Mai 2024 - 13:59

» KGF_dll - nouvelles versions
KGF_dll - nouvelles versions - Page 19 Emptypar Klaus Lun 6 Mai 2024 - 11:41

» @Jack
KGF_dll - nouvelles versions - Page 19 Emptypar Jack Mar 30 Avr 2024 - 20:40

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Mai 2024
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
2728293031  
CalendrierCalendrier
Le Deal du moment :
Bon plan achat en duo : 2ème robot cuiseur ...
Voir le deal
600 €

 

 KGF_dll - nouvelles versions

Aller en bas 
+12
JL35
Oscaribout
bignono
Pedro
pascal10000
silverman
Jicehel
papydall
Minibug
Marc
Yannick
Klaus
16 participants
Aller à la page : Précédent  1 ... 11 ... 18, 19, 20 ... 29 ... 40  Suivant
AuteurMessage
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptySam 9 Déc 2017 - 12:46

Nouvelle version:
KGF.dll V8.09 du 09/12/2017

Nouveautés:
- Novel objet: MasterVolume
- Nouvelles fonctions: CreateMasterVolume, DeleteMasterVolume
- Nouvelles fonctions: SetMasterMute, GetMasterMute
- Fonctions réécrites: SetMasterVolume, GetMasterVolume


Modules modifiés:
KGF.dll

La doc et les sources sont à jour.

C'est une réécriture conplète des deux fonctions existantes, encapsulées maintenant dans un objet spécifique MasterVolume. Il convient donc de créer une fois l'objet en début de programme. Les autres fonctions peuvent alors être utilisées à volonté. Pour finir, avant de sortir du programme, il faut supprimer l'objet (dans l'évènement ON_CLOSE de la form 0, de préférence).

Cet objet est maintenant bi-directionnel. Il peut donc commander les valeurs du mixeur (niveau du volume principal et/ou l'état de l'indicateur actif/muet), mais peut également recevoir les changements d'état du mixeur si l'utilisateur utilise les contrôles directement dans la fenêtre du mixeur. Le programme peut alors ajuster ses propres contrôles. Pour ce faire, on USER_EVENT est généré pour chaque changement des valeurs du mixeur. Il est alors de la responsabilité du programme d'utiliser les informations retournées par le USER_EVENT pour mettre à jour ses propres informations.

Les fonctions ont la syntaxe suivante:
Code:
' nouvelles fonctions:
res% = dll_call0("CreateMasterVolume")
res% = dll_call0("DeleteMasterVolume")
mute% = dll_call0("GetMasterMute")
res% = dll_call1("SetMasterMute",mute%)
' fonctions réécrites, mais interface inchangé:
volume% = dll_call0("GetMasterVolume") : ' retourne une valeur entre 0 et 65535
res% = dll_call1("SetMasterVolume",volume%) : impose cette valeur comme volume principal

Informations retournées par le USER_EVENT:
USER_EVENT_WPARAM = identifiant de l'origine de l'évènement
hex("06010000") signifie: valeur de l'indicateur "muet" ==> WPARAM=1 si muet, et 0 sinon
hex("06020000") signifie: valeur du "volume" ==> WPARAM=0...65535
USER_EVENT_LPARAM = valeur en fonction du code de USER_EVENT_WPARAM
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptyDim 10 Déc 2017 - 17:11

Nouvelle version:
KGF.dll V8.10 du 10/12/2017

Nouveautés:
- Novel objet: Scope
- Nouvelle fonction: AutoUpdateScope


Modules modifiés:
KGF.dll
KGF.chm


La doc et les sources sont à jour.

Cet objet, entièrement conçu et réalisé par moi sans le concours d"un module extérieur, représente l'écran d'un oscilloscope à 4 canaux. On peut charger les valeurs manuellement et générer le tracé pas à pas, ou on peut attacher l'objet en tant que tel et ses canaux individuellement à l'objet AutoUpdater, de sorte à avoir un tracé automatique à partir du contenu de 1 à 4 variables Panoramic de type entier. Bien entendu, l'objet AutoUpdater peut gérer plusieurs de ces objets Scope, d'ailleurs simultanément avec les objets VuMeter.

Voici un programme de démo, intégré également dans la documentation. On peut créer un objet Scope. Il sera alors créé par le programme de démo avec 4 canaux. Le bouton "Tracer" permet de générer une étape d'affichage, avec des valeurs générées aléatoirement. Des clics successifs sur ce bouton produisent progressivement le diagramme de l'oscilloscope.

On peut également varier la distance de défilement. Plus oetit=plus serré, plsu grand=effet loupe. On peut aussin pour chaque canal, varier la taille totale en affichage, ainsi que son décalage vertical. Tel quel, les 4 canaux sont affichés sur une hauteur de 60 pixels, avec un décalage de 80 pixels les uns par rapport aux autres. Mais des scrollbars permettent de jouer avec cette représentation.

Puis, finalement, on peut démarrer l'automatisation en cliquant sur "Start". Le tracé est alors généré automatiquement par l'objet AutoUpdater, jusqu'à ce que l'on clique sur "Stop".

Chaque canal a sa largeur de trait spécifique (défaut: 3 pixels). Ainsi, les tracés montrent 4 tracés d'épaisseurs différentes.

Ah, j'oubliais: dans le code du programme de démo, l'automarisation du canal 3 est désactvé. Il apparaît donc comme une simple ligne horizontale...

Pour finir, voici le code:
Code:
' test_scope.bas

label CreerScope, SupprimerScope, Tracer, change
label changeW, changeD, StartAuto, StopAuto, tick


dim res%, Scope%, i%, v%, M1%
M1% = 0 - 1

' message "Coder d'abord un bouton pour autoupdate des 4 traces !"
' terminate

dll_on "KGF.dll"

width 0,1000
caption 0,"Oscilloscope 4 canaux"
button 1 : top 1,2 : left 1,2 : caption 1,"Créer" : on_click 1,CreerScope
button 2 : top 2,2 : left 2,left(1)+width(1) : caption 2,"Supprimer" : on_click 2,SupprimerScope
button 3 : top 3,2 : left 3,left(2)+width(2) : caption 3,"Tracer" : on_click 3,Tracer

timer 9 : timer_off 9 : timer_interval 9,400 : on_timer 9,tick

alpha 11 : top 11,30 : left 11,440 : caption 11,"Distance de défilement:"
scroll_bar 12 : top 12,50 : left 12,440 : width 12,200
  min 12,5 : max 12,100 : position 12,20 : on_change 12,change
 
alpha 21 : top 21,90 : left 21,440 : caption 21,"Largeurs des traces:"
alpha 22 : top 22,110 : left 22,420 : caption 22,"1"
alpha 23 : top 23,130 : left 23,420 : caption 23,"2"
alpha 24 : top 24,150 : left 24,420 : caption 24,"3"
alpha 25 : top 25,170 : left 25,420 : caption 25,"4"
scroll_bar 26 : top 26,110 : left 26,440 : width 26,200
  min 26,5 : max 26,300 : position 26,60 : on_change 26,changeW
scroll_bar 27 : top 27,130 : left 27,440: width 27,200
  min 27,5 : max 27,300 : position 27,60 : on_change 27,changeW
scroll_bar 28 : top 28,150 : left 28,440 : width 28,200
  min 28,5 : max 28,300 : position 28,60 : on_change 28,changeW
scroll_bar 29 : top 29,170 : left 29,440 : width 29,200
  min 29,5 : max 29,300 : position 29,60 : on_change 29,changeW
 
alpha 31 : top 31,90 : left 31,680 : caption 31,"Décalage des traces:"
alpha 32 : top 32,110 : left 32,660 : caption 32,"1"
alpha 33 : top 33,130 : left 33,660 : caption 33,"2"
alpha 34 : top 34,150 : left 34,660 : caption 34,"3"
alpha 35 : top 35,170 : left 35,660 : caption 35,"4"
scroll_bar 36 : top 36,110 : left 36,680 : width 36,200
  min 36,5 : max 36,300 : position 36,0 : on_change 36,changeD
scroll_bar 37 : top 37,130 : left 37,680: width 37,200
  min 37,5 : max 37,300 : position 37,80 : on_change 37,changeD
scroll_bar 38 : top 38,150 : left 38,680 : width 38,200
  min 38,5 : max 38,300 : position 38,160 : on_change 38,changeD
scroll_bar 39 : top 39,170 : left 39,680 : width 39,200
  min 39,5 : max 39,300 : position 39,240 : on_change 39,changeD


alpha 40 : top 40,220 : left 40,440 : caption 40,"Automatisation:"
button 41 : top 41,240 : left 41,440 : caption 41,"Start" : on_click 41,StartAuto
button 42 : top 42,240 : left 42,540 : caption 42,"Stop" : on_click 42,StopAuto

inactive 2
inactive 3
inactive 12
inactive 26
inactive 27
inactive 28
inactive 29
inactive 36
inactive 37
inactive 38
inactive 39
inactive 41
inactive 42

res% = dll_call1("CreateAutoUpdater",1000)
res% = dll_call1("ManageAutoUpdater",0)
end

CreerScope:
  Scope% = dll_call1("CreateScope",handle(0))
  res% = dll_call5("LocateScope",Scope%,10,30,400,300)
  res% = dll_call2("SetScopeTraceCount",Scope%,4)
  res% = dll_call5("SetScopeTraceColor",Scope%,1,255,0,0)
  res% = dll_call5("SetScopeTraceColor",Scope%,2,0,0,255)
  res% = dll_call5("SetScopeTraceColor",Scope%,3,255,255,0)
  res% = dll_call5("SetScopeTraceColor",Scope%,4,0,255,255)
  res% = dll_call2("SetScopeScrollWidth",Scope%,position(12))
  res% = dll_call6("SetScopeScaling",Scope%,1,M1%,M1%,position(26),position(36))
  res% = dll_call6("SetScopeScaling",Scope%,2,M1%,M1%,position(28),position(37))
  res% = dll_call6("SetScopeScaling",Scope%,3,M1%,M1%,position(28),position(38))
  res% = dll_call6("SetScopeScaling",Scope%,4,M1%,M1%,position(29),position(39))
'  res% = dll_call3("SetScopeTraceWidth",Scope%,1,3) : ' <=== largeur de 3 par défaut !
  res% = dll_call3("SetScopeTraceWidth",Scope%,2,1)
  res% = dll_call3("SetScopeTraceWidth",Scope%,3,5)
  res% = dll_call3("SetScopeTraceWidth",Scope%,4,10)
  res% = dll_call3("AutoUpdateScope",Scope%,1,adr(v%))
  res% = dll_call3("AutoUpdateScope",Scope%,2,adr(v%))
'  res% = dll_call3("AutoUpdateScope",Scope%,3,adr(v%))  : ' <=== ne pas automatiser cette ligne !
  res% = dll_call3("AutoUpdateScope",Scope%,4,adr(v%))
  res% = dll_call3("SetScopeTraceWidth",Scope%,4,adr(v%))

  inactive 1
  active 2
  active 3
  active 12
  active 26
  active 27
  active 28
  active 29
  active 36
  active 37
  active 38
  active 39
  active 41
  active 42
  return
 
SupprimerScope:
  Scope% = dll_call1("DeleteScope",Scope%)
  active 1
  inactive 2
  inactive 3
  inactive 12
  inactive 26
  inactive 27
  inactive 28
  inactive 29
  inactive 36
  inactive 37
  inactive 38
  inactive 39
  inactive 41
  inactive 42
  return
         
Tracer:
  for i%=1 to 4
    v% = int(rnd(300))
    ' v% = i%*60      : ' <======= pour tracer une ligne droite
    res% = dll_call3("AddValueToScopeTrace",Scope%,i%,v%)
  next i%
  res% = dll_call1("PerformScopeStep",Scope%)
  return
         
change:
  res% = dll_call2("SetScrollWidth",Scope%,position(12))
  return
           
changeW:
  if number_change=26 then res% = dll_call6("SetScopeScaling",Scope%,1,M1%,M1%,position(26),M1%)
  if number_change=27 then res% = dll_call6("SetScopeScaling",Scope%,2,M1%,M1%,position(27),M1%)
  if number_change=28 then res% = dll_call6("SetScopeScaling",Scope%,3,M1%,M1%,position(28),M1%)
  if number_change=29 then res% = dll_call6("SetScopeScaling",Scope%,4,M1%,M1%,position(29),M1%)
  return

changeD:

  if number_change=36 then res% = dll_call6("SetScopeScaling",Scope%,1,M1%,M1%,M1%,position(36))
  if number_change=37 then res% = dll_call6("SetScopeScaling",Scope%,2,M1%,M1%,M1%,position(37))
  if number_change=38 then res% = dll_call6("SetScopeScaling",Scope%,3,M1%,M1%,M1%,position(38))
  if number_change=39 then res% = dll_call6("SetScopeScaling",Scope%,4,M1%,M1%,M1%,position(39))
  return
 
StartAuto:
  timer_on 9
  res% = dll_call1("ManageAutoUpdater",1)
  return
 
StopAuto:
  timer_off 9
  res% = dll_call1("ManageAutoUpdater",0)
  return

Tick:
  v% = int(rnd(300))
  return
 
 
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
pascal10000

pascal10000


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptyDim 10 Déc 2017 - 21:22

brs klaus
a ta demo pour la
nouvelle version de kgf il y a une erreur des qu'on
veut utilisé distance de défilement

line 145 erreur dans la fonction
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptyDim 10 Déc 2017 - 21:56

Oups... le nom de la fonction a changé. Remplace la ligne par:
Code:
  res% = dll_call2("SetScopeScrollWidth",Scope%,position(12))
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Minibug

Minibug


Nombre de messages : 4566
Age : 57
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptyDim 10 Déc 2017 - 23:48

J'ai testé aussi. Wink
Pas d'utilité pour l'instant mais peut être plus tard pour un débogage par exemple avec des retours de valeurs...
En tout cas voila un objet de plus dans KGF. Bravo Klaus ! cheers
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptyMar 12 Déc 2017 - 14:47

Nouvelle version:
KGF.dll V8.11 du 12/12/2017

Nouveautés:
- Novel objet: Marquee

Modules modifiés:
KGF.dll
KGF.chm


La doc et les sources sont à jour.

Ce nouvel objet, purement visuel, permet de créer un effet similaire àcelui d'un élément Marquee HTML: une forme colorée sur laquelle défile un texte. Jouez avec le programme de démo qui permet de modifier toutes les (nombreuses) options de cet objet:
Code:
' test-Marquee.bas

label close0, CreerMarquee, SupprimerMarquee, DemarrerMarquee, ArreterMarquee
label ChangerDirection, ChargerImage, ChargerTexte, ChangerPolice, ChangerAttributs
label ChangerDelta, ChangerForme, ChangerFond, ChangerVitesse

dim res%, MQ%, f$, i%

dll_on "KGF.dll"

width 0,1200
caption 0,"Test Marquee"
button 1 : top 1,2 : left 1,2 : caption 1,"Créer" : on_click 1,CreerMarquee
  hint 1,"Créer un nouvel objet Marquee"
button 2 : top 2,2 : left 2,left(1)+width(1) : caption 2,"Supprimer" : on_click 2,SupprimerMarquee
  hint 2,"Supprimer le Marquee existant"
button 3 : top 3,2 : left 3,left(2)+width(2) : caption 3,"Démarrer" : on_click 3,DemarrerMarquee
  hint 3,"Lancer le défilement du texte"
button 4 : top 4,2 : left 4,left(3)+width(3) : caption 4,"Arrêter" : on_click 4,ArreterMarquee
  hint 4,"Arrêter le défilement du texte"
button 5 : top 5,2 : left 5,left(4)+width(4) : caption 5,"Fond d'image" : on_click 5,ChargerImage
  hint 5,"Charger une image de fond"
combo 11 : top 11,4 : left 11,440 : width 11,85 : on_change 11,ChangerDirection
  hint 11,"Sens de défilement du texte"
  item_add 11,"Ouest"
  item_add 11,"Est"
  item_add 11,"Nord"
  item_add 11,"Sud"
  item_add 11,"Nord-Ouest"
  item_add 11,"Nord-Est"
  item_add 11,"Sud-Ouest"
  item_add 11,"Sud-Est"
res% = dll_call2("SelectComboBoxItem",handle(11),1)
edit 6 : top 6,30 : left 6,440 : width 6,200 : text 6,"Panoramic"
  hint 6,"Texte pour le défilement"
button 7 : top 7,30 : left 7,left(6)+width(6) : caption 7,"Texte" : on_click 7,ChargerTexte
  hint 7,"Charger le texte dans le Marquee"
combo 8 : top 8,top(7)+height(7) : left 8,440 : width 8,200
  hint 8,"Liste des polices utilisables"
  font_names_load 8
for i%=1 to count(8)
  if item_read$(8,i%)="Arial"
    res% = dll_call2("SelectComboBoxItem",handle(8),i%)
    exit_for
  end_if
next i%
combo 9 : top 9,top(8) : left 9,Left(8)+width(8) : width 9,40
  hint 9,"Taille de la police"
  item_add 9,"8"
  item_add 9,"10"
  item_add 9,"12"
  item_add 9,"16"
  item_add 9,"20"
  item_add 9,"24"
  item_add 9,"28"
  item_add 9,"32"
  item_add 9,"36"
  item_add 9,"48"
res% = dll_call2("SelectComboBoxItem",handle(9),6)

combo 30 : top 30,top(11) : left 30,left(11)+width(11) : width 30,120 : on_change 30,ChangerForme
  hint 30,"Forme du fond du Marquee"
  item_add 30,"Rectangle"
  item_add 30,"Rectangle arrondi"
  item_add 30,"Ellipse"
res% = dll_call2("SelectComboBoxItem",handle(30),1)

alpha 40 : top 40,top(30)+2 : left 40,left(30)+width(30)+20 : caption 40,"Intervalle (ms):"
spin 41 : top 41,top(30) : left 41,left(40)+80 : width 41,60 : min 41,50 : max 41,5000 : position 41,300
  hint 41,"Intervalle du timer"
  on_change 41,ChangerVitesse

alpha 13 : top 13,top(9)+2 : left 13,left(9)+width(9)+10 : caption 13,"R:"
spin 14 : top 14,top(9) : left 14,left(13)+15 : width 14,50 : min 14,0 : max 14,255 : position 14,255
  hint 14,"Composante rouge de la couleur du texte"
alpha 15 : top 15,top(9)+2 : left 15,left(14)+width(14)+10 : caption 15,"G:"
spin 16 : top 16,top(9) : left 16,left(15)+15 : width 16,50 : min 16,0 : max 16,255 : position 16,0
  hint 16,"Composante verte de la couleur du texte"
alpha 17 : top 17,top(9)+2 : left 17,left(16)+width(14)+10 : caption 17,"B:"
spin 18 : top 18,top(9) : left 18,left(17)+15 : width 18,50 : min 18,0 : max 18,255 : position 18,0
  hint 18,"Composante bleur de la couleur du texte"
button 19 : top 19,top(9) : left 19,left(18)+width(18) : caption 19,"Police" : on_click 19,ChangerPolice
  hint 19,"Charger les paramètres de la police dans le Marquee"

alpha 33 : top 33,top(13)+height(13)+6 : left 33,left(13) : caption 33,"R:"
spin 34 : top 34,top(13)+height(13)+4 : left 34,left(33)+15 : width 34,50 : min 34,0 : max 34,255 : position 34,255
  hint 34,"Composante rouge de la couleur du fond"
alpha 35 : top 35,top(13)+height(13)+6 : left 35,left(34)+width(34)+10 : caption 35,"G:"
spin 36 : top 36,top(13)+height(13)+4 : left 36,left(35)+15 : width 36,50 : min 36,0 : max 36,255 : position 36,0
  hint 36,"Composante verte de la couleur du fond"
alpha 37 : top 37,top(13)+height(13)+6 : left 37,left(36)+width(34)+10 : caption 37,"B:"
spin 38 : top 38,top(13)+height(13)+4 : left 38,left(37)+15 : width 38,50 : min 38,0 : max 38,255 : position 38,0
  hint 38,"Composante bleur de la couleur du fond"
button 39 : top 39,top(13)+height(13)+4 : left 39,left(38)+width(38) : caption 39,"Fond" : on_click 39,ChangerFond
  hint 39,"Charger la couleur du fond dans le Marquee"

check 20 : top 20,top(9)+height(9)+height(33) : left 20,440 : width 20,40 : caption 20,"B" : font_bold 20
  hint 20,"Attribut Gras du texte"
check 21 : top 21,top(20) : left 21,left(20)+width(20) : width 21,40 : caption 21,"I" : font_italic 21
  hint 21,"Attribut Italique du texte"
check 22 : top 22,top(20) : left 22,left(21)+width(21) : width 22,40 : caption 22,"U" : font_underline 22
  hint 22,"Attribut Souligné du texte"
check 23 : top 23,top(20) : left 23,left(22)+width(22) : width 23,40 : caption 23,"S" : font_strike 23
  hint 23,"Attribut Barré du texte"
button 24 : top 24,top(20) : left 24,left(23)+width(23) : caption 24,"Attributs" : on_click 24,ChangerAttributs
  hint 24,"Charger les attributs graphiques dans le Marquee"

alpha 25 : top 25,top(24)+height(24)+2 : left 25,440 : caption 25,"Delta-X:"
spin 26 : top 26,top(24)+height(24) : left 26,left(25)+50 : width 26,60 : min 26,1 : max 26,300 : position 26,5
  hint 26,"Distance d'un pas de défilement horizontal"
alpha 27 : top 27,top(24)+height(24)+2 : left 27,left(26)+width(26)+20 : caption 27,"Delta-Y:"
spin 28 : top 28,top(24)+height(24) : left 28,left(27)+50 : width 28,50 : min 28,1 : max 28,300 : position 28,5
  hint 28,"Distance d'un pas de défilement vertical"
button 29 : top 29,top(24)+height(24) : left 29,left(28)+width(28)+20 : caption 29,"Delta" : on_click 29,ChangerDelta
  hint 29,"Charger les distances de défilement dans le Marquee"


open_dialog 12 : filter 12,"Images (BMP,JPG,PNG,GIF)|*.bmp;*.jpg;*.png;*.gif"

inactive 2
inactive 3
inactive 4
inactive 5
inactive 7
inactive 8
inactive 9
inactive 11
inactive 14
inactive 16
inactive 18
inactive 19
inactive 20
inactive 21
inactive 22
inactive 23
inactive 24
inactive 26
inactive 28
inactive 29
inactive 30

on_close 0,close0

f$ = "Placez le curseur sur chaque élément."+chr$(13)+chr$(10)
f$ = f$ + "Vous aurez une indication sur le sens ce cet objet."
message f$

end

close0:
  MQ% = dll_call1("DeleteMarquee",MQ%)
  return

CreerMarquee:
  MQ% = dll_call1("CreateMarquee",handle(0))
  res% = dll_call5("LocateMarquee",MQ%,10,30,400,300)
  inactive 1
  active 2
  active 3
  active 4
  active 5
  active 7
  active 8
  active 9
  active 11
  active 14
  active 16
  active 18
  active 19
  active 20
  active 21
  active 22
  active 23
  active 24
  active 26
  active 28
  active 29
  active 30
  return
 
SupprimerMarquee:
  MQ% = dll_call1("DeleteMarquee",MQ%)
  active 1
  inactive 2
  inactive 3
  inactive 4
  inactive 5
  inactive 7
  inactive 8
  inactive 9
  inactive 11
  inactive 14
  inactive 16
  inactive 18
  inactive 19
  inactive 20
  inactive 21
  inactive 22
  inactive 23
  inactive 24
  inactive 26
  inactive 28
  inactive 29
  inactive 30
  return
 
DemarrerMarquee:
  res% = dll_call3("ManageMarquee",MQ%,1,1)
  return
 
ArreterMarquee: 
  res% = dll_call3("ManageMarquee",MQ%,1,0)
  return
 
ChangerDirection:
  res% = dll_call3("ManageMarquee",MQ%,2,item_index(11))
  return
 
ChargerImage:
  f$ = file_name$(12)
  if f$="_" then return
  res% = dll_call3("ManageMarquee",MQ%,3,adr(f$))
  return 
 
ChargerTexte:
  f$ = text$(6)
  res% = dll_call3("ManageMarquee",MQ%,4,adr(f$))
  return 
 
ChangerPolice:
  f$ = item_index$(8)
  res% = dll_call6("SetMarqueeFont",MQ%,adr(f$),val(item_index$(9)),position(14),position(16),position(18))
  return 
 
ChangerAttributs:
  res% = dll_call5("SetMarqueeAtributes",MQ%,checked(20),checked(21),checked(22),checked(23))
  return 
 
ChangerDelta:
  res% = dll_call3("SetMarqueeTravelDelta",MQ%,position(26),position(28))
  return 
 
ChangerForme:
  res% = dll_call3("ManageMarquee",MQ%,5,item_index(30))
  return 
 
ChangerFond:
  res% = dll_call4("SetMarqueeBackColor",MQ%,position(34),position(36),position(38))
  return 
 
ChangerVitesse:
  res% = dll_call3("ManageMarquee",MQ%,6,position(41))
  return 

Petite remarque:
Pourquoi ai-je créé cet objet ? Pour le plaisir. Tout simplement parce que j'ai su le faire.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Minibug

Minibug


Nombre de messages : 4566
Age : 57
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptyMar 12 Déc 2017 - 20:17

bonsoir Klaus,

C'est pas mal du tout cette petite démo. Ça peut donner des idées de présentation ou d'aide !

Citation :
Pourquoi ai-je créé cet objet ? Pour le plaisir. Tout simplement parce que j'ai su le faire.
Eh bien Bravo pour tes compétences ! Laughing
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptyMar 12 Déc 2017 - 21:05

Merci, Minibug !
Ca peut servir à afficher un bandeau d'information pour les utilisateurs, une façon plus originale de présente une aide contextuelle, l'affichade d'informations de licence...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
pascal10000

pascal10000


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptyMer 13 Déc 2017 - 15:27

je viens d’essayer ta ptite démo
c'est tres intéressant et ça peut être très utille
pour nos programmes

"Pourquoi ai-je créé cet objet ? Pour le plaisir. Tout simplement parce que j'ai su le faire."

Lorsqu'on est mordu a une passion ça deviens une drogue mais c'est a consomer
a volonté lol! lol! lol! lol! lol! lol! lol!
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptyVen 15 Déc 2017 - 19:40

Nouvelle version:
KGF.dll V8.12 du 15/12/2017

Nouveautés:
- Novel objet: DialButton

Modules modifiés:
KGF.dll
KGF.chm


La doc et les sources sont à jour.

Cet objet représente un bouton rond, tournant, délivrant une valeur à la manière d'une SCROLL_BAR.

Voici une démo:
Code:
' test_DialButton.bas

label close0, Event, ChangeResultat

dim DB1%, DB2%, res%, f$
dim DB11%, DB12%, DB13%, DB14%
dim pos1%, pos2%, typ%, ID%, position%

dll_on "KGF.dll"

width 0,1200
caption 0,"Test de DialogButton"
on_close 0,close0

on_User_Event Event

alpha 1 : top 1,4 : left 1,10 : caption 1,"Résultat dans:"
combo 2 : top 2,2 : left 2,90 : width 2,200
  item_add 2,"../.."
  item_add 2,"USER_EVENT"
  item_add 2,"varable de type integer"
  item_add 2,"EDIT par handle"
  item_add 2,"SCROLL_BAR par handle"
  item_add 2,"PROGRESS_BAR par handle"
  item_add 2,"TRACK_BAR par handle"
  item_add 2,"caption(0)  (pour DEBUG)"
res% = dll_call2("SelectComboBoxItem",handle(2),1)
on_click 2,ChangeResultat
 
edit 11 : top 11,200 : left 11,10
scroll_bar 12 : top 12,230 : left 12,10 : min 12,0 : max 12,100
progress_bar 13 : top 13,260 : left 13,10 : min 13,0 : max 13,100
track_bar 14 : top 14,290 : left 14,10 : min 14,0 : max 14,100
edit 15 : top 15,320 : left 15,10


'  res% = dll_call3("SetDialButtonResultMode",DB1%,3,object_internal(13))
'  end


edit 21        : top 21,200 : left 21,230
scroll_bar 22  : top 22,230 : left 22,230 : min 22,0 : max 22,100
progress_bar 23 : top 23,260 : left 23,230 : min 23,0 : max 23,100
track_bar 24    : top 24,290 : left 24,230 : min 24,0 : max 24,100
edit 25        : top 25,320 : left 25,230 : width 25,150

container 30 : top 30,10 : left 30,450 : height 30,400 : width 30,500
caption 30,"4 boutons identiques de type 2" 

open_dialog 99 : filter 99,"Images (BMP,JPG,PNG,GIF)|*.bmp;*.jpg;*.png;*.gif"

f$ = file_name$(99)
if f$="_" then f$ = ""

res% = dll_call6("SetDialButtonDefaults",1,255,255,0,0,0)
res% = dll_call6("SetDialButtonDefaults",2,255,255,0,1,0)
res% = dll_call6("SetDialButtonDefaults",3,255,0,0,1,1)
res% = dll_call6("SetDialButtonDefaults",4,255,255,255,1,10)
res% = dll_call6("SetDialButtonDefaults",5,0,100,0,7,0)        : ' 7 = défaut: mode debug !
res% = dll_call6("SetDialButtonDefaults",6,0,100,0,7,adr(f$))  : ' 7 = défaut: mode debug !

DB1% = dll_call3("CreateDialButton",handle(0),1,1)    : ' ID=1
res% = dll_call4("LocateDialButton",DB1%,30,30,100) 
 
DB2% = dll_call3("CreateDialButton",handle(0),2,2)    : ' ID=2
' res% = dll_call6("SetDialButtonIndicator",DB2%,2,10,255,255,255)  : ' montrer la marque ligne SANS rotaton
' res% = dll_call6("SetDialButtonIndicator",DB2%,3,10,255,255,255)  : ' montrer la marque ligne ET rotaton
' res% = dll_call6("SetDialButtonIndicator",DB2%,4,10,255,255,255)  : ' montrer la marque cercle SANS rotaton
' res% = dll_call6("SetDialButtonIndicator",DB2%,5,10,255,255,255)  : ' montrer la marque cercle ET rotaton
res% = dll_call4("LocateDialButton",DB2%,230,30,150)

res% = dll_call6("SetDialButtonDefaults",6,0,100,0,1,adr(f$))  : ' 1 = défaut: USER_EVENT !
DB11% = dll_call3("CreateDialButton",handle(30),2,11)    : ' ID=11
res% = dll_call4("LocateDialButton",DB11%,20,20,100) 
DB12% = dll_call3("CreateDialButton",handle(30),2,12)    : ' ID=12
res% = dll_call4("LocateDialButton",DB12%,130,20,100) 
DB13% = dll_call3("CreateDialButton",handle(30),2,13)    : ' ID=13
res% = dll_call4("LocateDialButton",DB13%,240,20,100) 
DB14% = dll_call3("CreateDialButton",handle(30),2,14)    : ' ID=14
res% = dll_call4("LocateDialButton",DB14%,350,20,100) 

edit 35 : parent 35,30 : top 35,130 : left 35,20 : width 35,width(25)
edit 36 : parent 36,30 : top 36,150 : left 36,130 : width 36,width(36)
edit 37 : parent 37,30 : top 37,170 : left 37,240 : width 37,width(25)
edit 38 : parent 38,30 : top 38,190 : left 38,350 : width 38,width(25)


end

close0:
  res% = dll_call1("DeleteDialButton",DB1%)
  res% = dll_call1("DeleteDialButton",DB2%)
  return

Event:
' caption 0,hex$(USER_EVENT_WPARAM)
  if bin_and(USER_EVENT_WPARAM,hex("FF000000"))<>hex("07000000") then return
  typ% = bin_and(USER_EVENT_WPARAM,hex("00FF0000"))/65536
  id% = bin_and(USER_EVENT_WPARAM,hex("0000FFFF"))
  position% = USER_EVENT_LPARAM
  select ID%
  message str$(id%)
    case 1
      text 15,"UserEvent "+str$(typ%)+" ID "+str$(ID%)+" pos="+str$(position%)
    case 2
      text 25,"UserEvent "+str$(typ%)+" ID "+str$(ID%)+" pos="+str$(position%)
  end_select
  if (ID%>=11) and (ID%<=14)
      text 25+ID%-1,"UserEvent "+str$(typ%)+" ID "+str$(ID%)+" pos="+str$(position%)
  end_if
  return

ChangeResultat:
' pour type 1:
select item_index(2)-1
  case 0
  case 1
    res% = dll_call3("SetDialButtonResultMode",DB1%,1,0)          : ' USER_EVENT
  case 2
    res% = dll_call3("SetDialButtonResultMode",DB1%,2,adr(pos1%)) : ' variable
  case 3
    res% = dll_call3("SetDialButtonResultMode",DB1%,3,handle(11)) : ' EDIT
  case 4
    res% = dll_call3("SetDialButtonResultMode",DB1%,4,handle(12)) : ' SCROLL_BAR
  case 5
    res% = dll_call3("SetDialButtonResultMode",DB1%,5,handle(13)) : ' PROGRESS_BAR
  case 6
    res% = dll_call3("SetDialButtonResultMode",DB1%,6,handle(14)) : ' TRACK_BAR
  case 7
    res% = dll_call3("SetDialButtonResultMode",DB1%,7,0) : ' mode DEBUG
end_select 
' pour type 2:
select item_index(2)-1
  case 0
  case 1
    res% = dll_call3("SetDialButtonResultMode",DB2%,1,0)          : ' USER_EVENT
  case 2
    res% = dll_call3("SetDialButtonResultMode",DB2%,2,adr(pos2%)) : ' variable
  case 3
    res% = dll_call3("SetDialButtonResultMode",DB2%,3,handle(21)) : ' EDIT
  case 4
    res% = dll_call3("SetDialButtonResultMode",DB2%,4,handle(22)) : ' SCROLL_BAR
  case 5
    res% = dll_call3("SetDialButtonResultMode",DB2%,5,handle(23)) : ' PROGRESS_BAR
  case 6
    res% = dll_call3("SetDialButtonResultMode",DB2%,6,handle(24)) : ' TRACK_BAR
  case 7
  res% = dll_call3("SetDialButtonResultMode",DB2%,7,0) : ' mode DEBUG
end_select
return
Au lancement, le programme ouvre un dialogue pour choisir une image de bouton. Pour tester, utilisez une des images ci-dessous:
KGF_dll - nouvelles versions - Page 19 Type2k12
ou mieux:
KGF_dll - nouvelles versions - Page 19 Type2k13

Note pour ceux qui ont déjà essayé la version préliminaire:
La fonction CreateDialButton a maintenant un paramètre supplémentaire !


Dernière édition par Klaus le Sam 16 Déc 2017 - 0:52, édité 1 fois
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
pascal10000

pascal10000


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptyVen 15 Déc 2017 - 22:19

bsr klaus
c'est téléchargé merci
tu en es ou pour le vu metre et pour les gains grave et aigu
t'as une piste?
bon courage et encore merci
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptyVen 15 Déc 2017 - 22:29

les VuMeter sont complets et fonctionnels, à priori. Par contre, je n'ai pas trouvé de moyen de régler les aigus et graves de façon générale. Je n'ai trouvé que des éléments permettant de faire cela pour telle ou telle carte audio, avec des drivers particuliers. Donc, dans ce contexte, ça sort complètement du champ de KGF.dll. L'autre solution, c'est-à-dire de capter le son brut à la sortie du mixeur, le traiter et écrire ces réglages soi-même, ça revient à réécrire une partie importante de WinAmp, par exemple, ou d'autres logiciels, et c'est également hors de question dans le cadre de KGF.dll qui est une collection de fonctions générales de service, utilisables partout.

Si, par hasard, je tombe sur un composant libre de droit qui réalise cela, je l'intègre bien entendu dans KGF.dll et rends ces fonctions accessibles en Panoramic - c'est la démarche que j'ai faite avec deux des 3 modèles de VuMeter, avec ls QR-Code, avec le MasterVolume. Mais réaliser cela à partir de rien, c'est trop gros.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Marc

Marc


Nombre de messages : 2397
Age : 63
Localisation : TOURS (37)
Date d'inscription : 17/03/2014

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptyVen 15 Déc 2017 - 23:22

Bonjour à tous !

cheers Merci Klaus !  cheers

Ce que tu as fait est vraiment génial ! (comme d’habitude !)

Permets-moi trois deux petites remarques :
Le bouton de type 1 n’a pas les butées mini / maxi tel un potentiomètre analogique : si l’on dépasse le zéro, on repasse à la valeur max et inversement. Mais peut-être l’as-tu fait volontairement. Ce n’est pas le cas pour le type 2.

La course du  type 2 n’est pas parfaitement symétrique contrairement au type 1. Les butées mini / maxi ne sont pas situées symétriquement par rapport à l’axe vertical. Ainsi, lorsque que l’on met le bouton à "midi", on n’est pas à 50% de la valeur prédéfinie. Après différents essais, il s'avère que c'est l'image chargée n° 2 qui est la fautive...

Dans ton source d’exemple -qui est très pédagogique et très bien fait- les commentaires des lignes 75, 77 et 79 comporte une erreur sur le numéro de  l’ID (probablement un coup monté du copier-coller !).

Encore MERCI klaus !
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptySam 16 Déc 2017 - 0:59

Merci pour tes remarques, Marc ! Elles sont judicieuses.

Citation :
Le bouton de type 1 n’a pas les butées mini / maxi tel un potentiomètre analogique : si l’on dépasse le zéro, on repasse à la valeur max et inversement. Mais peut-être l’as-tu fait volontairement. Ce n’est pas le cas pour le type 2.
Non, je n'ai pas fait exprès? C'est le fonctionnement du composant que j'ai utilisé pour cela. Je ne l'ai pas modifié. En fait, c'était le premier que j'avais trouvé et j'avais bâti les fonctions de service autour ce cela. Mon idée était de d'adapter ce composant, par la suite, pour ajouter la possibilité d'image et d'autres fonctionnalités.

Puis, j'ai trouvé celui que je nomme type 2. Gestion de l'image impeccable, avec ou sans rotation de l'image - c'est parfait. Pour ne pas jeter trop tôt ce que j'avais fait pour le premier, j'ai ajouter l'autre sous forme de type 2 en gardant l'autre, mais sans y apporter plus de soin. Pour moi, le type 2 est de loin préférable, d'autant qu'il fait tout ce que le type 1 fait, et en mieux. Mais je veux garder la porte ouverte, pour le moment, pour un développement ultérieur.

Citation :
Dans ton source d’exemple -qui est très pédagogique et très bien fait- les commentaires des lignes 75, 77 et 79 comporte une erreur sur le numéro de l’ID (probablement un coup monté du copier-coller !).
Exact encore une fois, tout comme l'analyse des causes... J'ai corrigé, également dans mon post ci-dessus.

Merci encore pour les tests et les commentaires !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
pascal10000

pascal10000


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptySam 16 Déc 2017 - 6:21

bonjour klaus

tu dit que les vus mètres sont fonctionnel
peut tu nous expliquer comment fait on pour
les communiquer avec la carte son pour
enfin obtenir le niveau en décibel de chaque canal?

merci et bon week end
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptySam 16 Déc 2017 - 9:38

Ah oui... les deux canaux...
J'avais perdu cela de vue. Pour le moment, j'ai seulement le volume global, et on peut le reporter sur un VuMeter par l'objet AutoUpdater. Mais c'est vrai - il faut que je regarde les volumes des deux vanaux separément. Je vair faire une fonction pour cela et poster une démio avec les VuMeter. Parience encore...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
pascal10000

pascal10000


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptySam 16 Déc 2017 - 10:56

ok prend ton temps
Revenir en haut Aller en bas
Marc

Marc


Nombre de messages : 2397
Age : 63
Localisation : TOURS (37)
Date d'inscription : 17/03/2014

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptySam 16 Déc 2017 - 11:31

Bonjour à tous !

Objet : bouton rotatif

Bonjour Klaus !

Je ne sais pas si ce sera utile, mais j’ai une idée : transformer le type 1 en potentiomètre numérique : c’est un potentiomètre sans fin en rotation (encodeur rotatif).
Mécaniquement, on peut le tourner indéfiniment. Lors de la rotation, il fournit des impulsions qui permettent à l’électronique de connaître le sens de rotation. C’est à la partie informatique de l’électronique de fixer les butées de comptage mini / maxi.
Le nombre d’impulsions pour 360° est en général de 15.
Pour la DDL, plus de mini / maxi, mais plutôt une information du pas pour 360°.
Un tel potentiomètre possède des crans. Ainsi, il y a 24 positions fixes du bouton pour un pas de 15. (24x15=360°). Il serait peut-être possible de simuler ces crans à l’affichage lors de la rotation en obligeant le bouton à s’arrêter obligatoirement sur un pas (par exemple de 24° si on prend 15 impulsions par tour).
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptySam 16 Déc 2017 - 11:40

Une idée intéressante. Je la mets dans la TODO list et je verrai cela prochainement.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
pascal10000

pascal10000


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptySam 16 Déc 2017 - 21:07

klaus

j'ai essayé de faire un vu mètre et de mettre une ambiance (musique) à la
carte son mais rien ne se passe! ai' je oublié quelque chose ou bien mon programme est
mal codé?
j'ai utilisé un timer pour pas que ce soit décalé avec le tempo

source:
Code:
Dim Res%,VU1%,AG1%,vag%,dir%,LCD1a%,valeur%,etat%
Label ambiance

Container 1
Left 1,50 :top 1,50
width 1,200:height 1,100
dll_on "kgf.dll"
res% = dll_call1("CreateAutoUpdater",1000)

valeur%=3
    if dir%=0
      vag% = vag% + 2
      if vag%>100 then dir% = 1
    else
      vag% = vag% - 2
      if vag%<10 then dir% = 0
  end_if
    res% = dll_call2("SetVuMeterValue",AG1%,vag%)

  vag% = 0

  AG1% = dll_call3("CreateVUMeter",handle(1),1,0)
  res% = dll_call5("LocalizeVuMeter",AG1%,0,0,200,100)
  res% = dll_call2("SetVuMeterOrientation",AG1%,2)
timer 100 : on_timer 100,ambiance : timer_interval 100,1
end

ambiance:
timer_on 100
etat% = dll_call1("ManageAutoUpdater",etat%)
  res% = dll_call2("SetVuMeterValue",AG1%,vag%)            : ' sera remplacé par AutoUpdate !
  LCD1a% = dll_call2("AutoUpdate",AG1%,adr(valeur%))
etat% = dll_call1("ManageAutoUpdater",0)
timer_off 100
return
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptySam 16 Déc 2017 - 21:33

Ben, oui, c'est normal ! L'objet MasterVolume règle et retourne le réglage du volume principal, mais ne mesure pas les décibels qui passent en temps réel ! C'et l'équivalent du bouton de réglage de volume sur une chaîne stéréo. C'est pour cela que, dans la version Radio que j'ai postée, le réglage du poste se répercute sur le volume du mixeur, mais le réglage du mixeur se répercute également sur la scroll_bar de volume de la radio. Je suis en train de creuser le problème. J'ai essayé la l'API WaveOutGetVolume, mais elle retourne de façon constante 65536 pour les deux canaux. J'ai encore un peu de travail de recherche à faire...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptyDim 17 Déc 2017 - 11:51

Nouvelle version:
KGF.dll V8.13 du 17/12/2017

Nouveautés:
- Novelle fonction: FindMultipleStringsInString

Modules modifiés:
KGF.dll
KGF.chm


La doc et les sources sont à jour.

Cette fonction a été créée suite à une demande spécifique de Pedro Alvarez. Elle peut néanmoins avoir un intérêt général. Elle sert à chercher dans une chaîne de caractères, la présence, simultanée ou non, d'un nombre important de sous-chaînes (nommées "critères") et de retourner la liste des critères trouvés. Deux points particuliers peuvent rendre cette fonction intéressante, au-delà du contexte initial de sa création:
- le nombre de critères peut être très important: plusieurs dizaines, voire plusieurs centaines de milliers de critères !
- la recherche est extèmement rapide: moins de 2 secondes pour plus de 300.000 mille critères !

Un exemple d'utilisation:
Code:
' test_Pedro_Locutions.bas
' lien de téléchargement du fichier des critères: https://mon-partage.fr/f/KDwYj4Ga/

dll_on "kgf.dll"

width 0,700

dim a$, Separator$, res%, file$

' chaîne de caractères à traiter:
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)        : ' création de la StringList de KGF.dll
file$ = "locutions_espagnol_français.txt"        : ' fichier texte contenant les critères
res% = dll_call2("LoadStringList",1,adr(file$))  : ' chargement du fichier des critères

combo 2 : top 2,300                              : ' combo des critères validés
width 2,600

' analyse de la chaîne de caractères à traiter
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
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptyDim 17 Déc 2017 - 16:59

Nouvelle version:
KGF.dll V8.14 du 17/12/2017

Nouveautés:
- Novelle fonction: InitSpeakerControl

Modules modifiés:
KGF.dll

La doc et les sources seront mis à jour prochainement.

Cette fonction est une première version de récupértion du son des hauts-parleurs, de façon automatige, pour pouvoir le visualiser sun un VuMeter, par exemple. Pour le moment, l'état d'implémentation est le suivant:
- réupérer le volume global: fonctionnel
- récupérer individuellement les canaux gauche et droite: en cours de réalisation

Voici une démo à l'aide de la Radio FM de Pascal10000. On affiche une fenêtre supplémentaire contenant 3 VuMeter analogiques à cadran, pour le volume du canal gauche, le volume total etle volume du canal droit. Seul celui du centre indiquant le voluge global bouge.
Code:
Dim Station$,url$,Frequence%,Q%,LeftD% ,res%,WB%
Dim Volume%,GaucheVol%,DroitVol%,Min_Track5%,Max_Track5%,Hnd_Dll%
DIM TotalVol%
dim VUL%, VUT%, VUR%

Label Choix,Plus,Moin,Lecture,Etein
Label NiveauSon
label ChangeVolume, ChangeMute

Color 0,0,0,0
Height 0,180
Width 0,530
Caption 0,"Radio FM"
Font_Size 0,10
Font_Bold 0
Font_Color 0,0,255,0
On_Close 0,Etein

' resize off form 0
If File_exists("D:\Programmation\Projet Panoramic\poste radio\form.dll")=1
Dll_On "D:\Programmation\Projet Panoramic\poste radio\form.dll"
res% = DLL_CALL2("SetSize",HANDLE(0),0)
Width 0,531
Dll_Off
End_if

' création browser
' Dll_On "D:\Programmation\Projet Panoramic\poste radio\kgf.dll"
Dll_On "kgf.dll"
WB% = dll_call1("WB_Create",Handle(0))
res% = dll_call5("WB_Locate",WB%,10,50,0,0)

Alpha 1
Left 1,200

' liste des stations
List 2
Top 2,40
Left 2,260
Height 2,80
Color 2,0,0,0
Font_Color 2,0,255,0
' File_Load 2,"D:\Programmation\Projet Panoramic\poste radio\stations.txt"
File_Load 2,"stations.txt"
On_Click 2,Choix
Alpha 3
Left 3,260 : Top 3,20
Caption 3,"Stations:"

Check 7 : top 7,87
left 7,5
Track_Bar 5
Left 5,20: Top 5,85
Width 5,222: Height 5,26
Min 5,0 : Max 5,65535
On_Change 5,NiveauSon
Progress_Bar 6
Left 6,20: Top 6,120
Width 6,222: Height 6,10


' Tableau FREQUENCE
Container 10
Caption 10,"FREQUENCE"
Left 10,20 :Top 10,20
Width 10,200 : Height 10,52
Hide 10

LeftD%=-10
For Q%=11 to 16
LeftD%=LeftD%+30
DIGIT1 Q%
Parent Q%,10
Top Q%,15
Width Q%,20
Height Q%,34
Left Q%,LeftD%
Color Q%,0,255,0
Caption Q%,""
Next Q%
Show 10

Button 20
Left 20,221 : Top 20,28
Width 20,21 : Height 20,21
Font_Size 20,16
Font_Bold 20
Caption 20,"+"
On_Click 20,Plus

Button 30
Left 30,221 : Top 30,52
Width 30,21 : Height 30,21
Font_Size 30,20
Font_Bold 30
Caption 30,"-"
On_Click 30,Moin

Frequence%=0 

On_User_Event ChangeVolume
res% = dll_call0("CreateMasterVolume")
TotalVol% = dll_call0("GetMasterVolume")
position 5,TotalVol%
res% = dll_call0("GetMasterMute")
if res%=0 then mark_on 7
on_click 7,ChangeMute


form 1000 : caption 1000,"VuMeters" : left 1000,left(0)+width(0) : top 1000,top(0)
  width 1000,650 : height 1000,250
res% = dll_call1("CreateAutoUpdater",100)
 
VUL% = dll_call3("CreateVUMeter",handle(1000),1,0)
res% = dll_call5("LocalizeVuMeter",VUL%,0,0,200,200)
res% = dll_call3("SetVuMeterLimits",VUL%,65535,50000)
res% = dll_call2("SetVuMeterOrientation",VUL%,0)

VUT% = dll_call3("CreateVUMeter",handle(1000),1,0)
res% = dll_call5("LocalizeVuMeter",VUT%,200,20,200,200)
res% = dll_call3("SetVuMeterLimits",VUT%,65535,50000)
res% = dll_call2("SetVuMeterOrientation",VUT%,2)

VUR% = dll_call3("CreateVUMeter",handle(1000),1,0)
res% = dll_call5("LocalizeVuMeter",VUR%,400,0,200,200)
res% = dll_call3("SetVuMeterLimits",VUR%,65535,50000)
res% = dll_call2("SetVuMeterOrientation",VUR%,1)
   
res% = dll_call4("InitSpeakerControl",100,adr(GaucheVol%),adr(DroitVol%),adr(Volume%))
res% = dll_call2("AutoUpdate",VUL%,adr(GaucheVol%))
res% = dll_call2("AutoUpdate",VUT%,adr(Volume%))
res% = dll_call2("AutoUpdate",VUR%,adr(DroitVol%))

End

' changement du volume dans le panneau du mixeur Windows
ChangeVolume:
  if User_Event_WParam=hex("06020000") then position 5,User_Event_LParam
  if User_Event_WParam=hex("06010000")
    if User_Event_LParam=0
      Mark_On 7
    else
      Mark_Off 7
    end_if
  end_if
  return
 
' changement de l'état actif/muet du haut-parleur
ChangeMute:
  if checked(7)=1
    res% = dll_call1("SetMasterMute",0)
  else
    res% = dll_call1("SetMasterMute",1)
  end_if
  return

' selection des fréquences + ou -
Plus:
Set_Focus 10
Frequence%=Frequence%+1
If Frequence%=>42 Then Frequence%=1
Item_Select 2,Frequence%
Gosub Choix
Return

Moin:
Set_Focus 10
Frequence%=Frequence%-1                     
If Frequence%=<0 Then Frequence%=42
Item_Select 2,Frequence%
Gosub Choix
Return

' selection des stations
Choix:                                                   
 Caption 11,"" : Caption 12,"" : Caption 13,"" : Caption 14,"" : Caption 15,"" : Caption 16,""

If Clicked(2)=1 Then Frequence%=Item_Index(2)
Select Frequence%
 Case 1 : Station$="France-Inter"
          Caption 13,"8" : Caption 14,"7" : Caption 15,"-" : Caption 16,"8" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/france-inter/"
 Case 2 : Station$="Générations"
          Caption 13,"8" : Caption 14,"8" : Caption 15,"-" : Caption 16,"2" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/generations/"
 Case 3 : Station$="Nostalgie"
          Caption 13,"9" : Caption 14,"0" : Caption 15,"-" : Caption 16,"4" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/nostalgie/"
 Case 4 : Station$="Chante-France"
          Caption 13,"9" : Caption 14,"0" : Caption 15,"-" : Caption 16,"9" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/chante-france/"
 Case 5 : Station$="Contact-Fm"
          Caption 13,"9" : Caption 14,"1" : Caption 15,"-" : Caption 16,"4" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/contact-fm/"
 Case 6 : Station$="Cherie-Fm"
          Caption 12,"9" : Caption 13,"1." : Caption 14,"7" : Caption 15,"-" : Caption 16,"1" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/cherie/"
 Case 7 : Station$="France-Musique"
          Caption 12,"9" : Caption 13,"2." : Caption 14,"0" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/france-musique/"
 Case 8 : Station$="France-culture"   
          Caption 12,"9" : Caption 13,"3." : Caption 14,"5" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/france-culture/"
 Case 9 : Station$="Orient-Fm"   
          Caption 12,"9" : Caption 13,"4." : Caption 14,"3" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/orient/"
 Case 10 : Station$="Galaxie FM France"   
          Caption 12,"9" : Caption 13,"5." : Caption 14,"3" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/galaxie/"
 Case 11 : Station$="Puls Radio"   
          Caption 12,"9" : Caption 13,"5." : Caption 14,"4" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/puls/"
 Case 12 : Station$="Jazz"   
          Caption 12,"9" : Caption 13,"5." : Caption 14,"7" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/jazz/"
 Case 13 : Station$="Skyrock"   
          Caption 12,"9" : Caption 13,"6." : Caption 14,"0" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/skyrock/"
 Case 14 : Station$="Voltage"   
          Caption 12,"9" : Caption 13,"6." : Caption 14,"9" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/voltage/"
 Case 15 : Station$="Rire et chanson"   
          Caption 12,"9" : Caption 13,"7." : Caption 14,"4" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/rire-et-chanson/"
 Case 16 : Station$="Metropolys"   
          Caption 12,"9" : Caption 13,"7." : Caption 14,"6" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/metropolys/"
 Case 17 : Station$="FG DJ Radio"   
          Caption 12,"9" : Caption 13,"8." : Caption 14,"2" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/fg-dj/"
 Case 18 : Station$="Vibration FM"   
          Caption 12,"9" : Caption 13,"8." : Caption 14,"7" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/vibration/"
 Case 19 : Station$="Latina"   
          Caption 12,"9" : Caption 13,"9." : Caption 14,"0" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/latina/"
 Case 20 : Station$="France Maghreb 2 France"   
          Caption 12,"9" : Caption 13,"9." : Caption 14,"5" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/maghreb-2/"
 Case 21 : Station$="NRJ"   
          Caption 11,"1" : Caption 12,"0" : Caption 13,"0." : Caption 14,"3" : Caption 15,"-" : Caption 16,"1" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/nrj-france/"
 Case 22 : Station$="Alouette France"   
          Caption 11,"1" : Caption 12,"0" : Caption 13,"0." : Caption 14,"3" : Caption 15,"-" : Caption 16,"2" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/alouette/"
 Case 23 : Station$="Fun Radio"   
          Caption 11,"1" : Caption 12,"0" : Caption 13,"1." : Caption 14,"9" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/fun/"
 Case 24 : Station$="Oui FM"   
          Caption 11,"1" : Caption 12,"0" : Caption 13,"2." : Caption 14,"3" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$=""
 Case 25 : Station$="MFM Radio France"   
          Caption 11,"1" : Caption 12,"0" : Caption 13,"2." : Caption 14,"7" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/mfm/"
 Case 26 : Station$="Gold FM"   
          Caption 11,"1" : Caption 12,"0" : Caption 13,"3." : Caption 14,"3" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/gold-fm/"
 Case 27 : Station$="Virgin"   
          Caption 11,"1" : Caption 12,"0" : Caption 13,"3." : Caption 14,"5" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/virgin/"
 Case 28 : Station$="RFM"   
          Caption 11,"1" : Caption 12,"0" : Caption 13,"3." : Caption 14,"9" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/rfm/"
 Case 29 : Station$="Hit West France"   
          Caption 11,"1" : Caption 12,"0" : Caption 13,"4." : Caption 14,"1" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/hit-west/"
 Case 30 : Station$="RTL"   
          Caption 11,"1" : Caption 12,"0" : Caption 13,"4." : Caption 14,"3" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/rtl/"
 Case 31 : Station$="Europe 1"   
          Caption 11,"1" : Caption 12,"0" : Caption 13,"4." : Caption 14,"7" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
          url$="http://www.ecouterradioenligne.com/europe/"
 Case 32 : Station$="Radio FIP"   
        Caption 11,"1" : Caption 12,"0" : Caption 13,"5." : Caption 14,"1" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
        url$="http://www.ecouterradioenligne.com/fip/"
 Case 33 : Station$="France-Info"   
        Caption 11,"1" : Caption 12,"0" : Caption 13,"5." : Caption 14,"5" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
        url$="http://www.ecouterradioenligne.com/france-info/"
 Case 34 : Station$="RTL2"   
        Caption 11,"1" : Caption 12,"0" : Caption 13,"5." : Caption 14,"9" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
        url$="http://www.ecouterradioenligne.com/rtl2/"
 Case 35 : Station$="Beur FM France"   
        Caption 11,"1" : Caption 12,"0" : Caption 13,"6." : Caption 14,"7" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
        url$="http://www.ecouterradioenligne.com/beur/"
 Case 36 : Station$="France-Bleu"   
        Caption 11,"1" : Caption 12,"0" : Caption 13,"7." : Caption 14,"1" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
        url$="http://www.ecouterradioenligne.com/france-bleu/"
 Case 37 : Station$="RFI France"   
        Caption 11,"1" : Caption 12,"0" : Caption 13,"7." : Caption 14,"9" : Caption 15,"-" : Caption 16,"0" :Caption 1,Station$
        url$="http://www.ecouterradioenligne.com/rfi/"
 Case 38 : Station$="Radio Meuh France"   
        Caption 12,"9" : Caption 13,"9" : Caption 14,"9." : Caption 15,"0" : Caption 16,"1" :Caption 1,Station$
        url$="http://www.ecouterradioenligne.com/meuh/"
 Case 39 : Station$="Enjoy Radio"   
        Caption 12,"9" : Caption 13,"9" : Caption 14,"9." : Caption 15,"0" : Caption 16,"2" :Caption 1,Station$
        url$="http://www.ecouterradioenligne.com/enjoy/"
 Case 40 : Station$="La Grosse Radio France"   
        Caption 12,"9" : Caption 13,"9" : Caption 14,"9." : Caption 15,"0" : Caption 16,"3" :Caption 1,Station$
        url$="http://www.ecouterradioenligne.com/la-grosse/"
 Case 41 : Station$="Africa-1-France"   
        Caption 12,"9" : Caption 13,"9" : Caption 14,"9." : Caption 15,"0" : Caption 16,"4" :Caption 1,Station$
        url$="http://www.ecouterradioenligne.com/africa-1-france/"
 Case 42 : Station$="Swigg Radio"   
        Caption 12,"9" : Caption 13,"9" : Caption 14,"9." : Caption 15,"0" : Caption 16,"5" :Caption 1,Station$
        url$="http://www.ecouterradioenligne.com/ado/"
End_Select                                             
gosub Lecture
Return

Lecture:
res% = dll_call2("WB_Url",WB%,adr(url$))
NiveauSon()
Return

' / GESTIONS DU VOLUME        /
***********************************************************
NiveauSon:
    TotalVol%=position(5)
    If TotalVol%<0 Then TotalVol%=0
    If TotalVol%>65535 Then TotalVol%=65535
    res% = dll_call1("SetMasterVolume",TotalVol%)
Return

Sub NiveauSon()
' RECUPERE LE NIVEAU ACTUEL DU SON
    TotalVol% = dll_call0("GetMasterVolume")
    position 5,TotalVol% 
    End_Sub


************************************************************

Etein:
res% = dll_call0("DeleteMasterVolume")
res% = dll_call1("WB_Delete",WB%)
Dll_Off
Terminate
Return
Mais ça donne délà une idée, et ça montre comment attacher un VuMeter à ce genre d'information.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Minibug

Minibug


Nombre de messages : 4566
Age : 57
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptyDim 17 Déc 2017 - 19:40

Bonsoir klaus !

J'ai des difficultés (lenteur) pour télécharge KGF depuis le lien dans ta signature.
Et depuis le site http://klauspanoramic.esy.es/ j'ai une archive corrompue à chaque essai !

Pourrais tu remettre l'archive KGF à jour stp.

Merci d'avance. Wink
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 EmptyDim 17 Déc 2017 - 19:55

C'est fait - site principoal, site miroir et WebDav.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé





KGF_dll - nouvelles versions - Page 19 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 19 Empty

Revenir en haut Aller en bas
 
KGF_dll - nouvelles versions
Revenir en haut 
Page 19 sur 40Aller à la page : Précédent  1 ... 11 ... 18, 19, 20 ... 29 ... 40  Suivant
 Sujets similaires
-
» KGF_dll - nouvelles versions
» KGF_dll - nouvelles versions
» KGF_dll - nouvelles versions
» Synedit_Editor - nouvelles versions
» version instantanée PANORAMIC V 0.9.25i6 du 14/12/2013

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: