Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | Calendrier |
|
|
| KGF_dll - nouvelles versions | |
|
+12JL35 Oscaribout bignono Pedro pascal10000 silverman Jicehel papydall Minibug Marc Yannick Klaus 16 participants | |
Auteur | Message |
---|
pascal10000
Nombre de messages : 812 Localisation : Troyes Date d'inscription : 05/02/2011
| Sujet: Re: KGF_dll - nouvelles versions Mar 19 Déc 2017 - 14:16 | |
| oui je l'ai téléchargé a partir de l'icon de ton poste en bas de ta page kgf.dll (forma zip)
| |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Mar 19 Déc 2017 - 14:23 | |
| Comme tu peux le voir sur ma capture, ça marche. Cela ne peut venir que de l'installation de la DLL, ou alors du code que tu utilises. ET si c'est la dernière démo que j'ai postée et que je remts ici, alors vérifie bien le chemin vers la nouvelle DLL que tu as téléchargé et décomprimé: - 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%, BarIndexT% BarIndexT% = -1
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,300 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_call5("InitSpeakerControl",67,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%))
progress_bar 1001 : parent 1001,1000 : top 1001,225 : left 1001,200 : width 1001,200 ' scroll_bar 1001 : parent 1001,1000 : top 1001,225 : left 1001,200 : width 1001,200 ' track_bar 1001 : parent 1001,1000 : top 1001,225 : left 1001,200 : width 1001,200 min 1001,0 : max 1001,100 : position 1001,0 BarIndexT% = dll_call4("AutoUpdateBar",object_internal(1001),BarIndexT%,handle(1001),adr(Volume%)) 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
C'est certain - ce code-là fonctionne. | |
| | | pascal10000
Nombre de messages : 812 Localisation : Troyes Date d'inscription : 05/02/2011
| Sujet: Re: KGF_dll - nouvelles versions Mar 19 Déc 2017 - 14:44 | |
| c'est bon la demo fonctionne maintenant c'est mon poste perso qui ne fonctionne plus
no correct arithmetic expression
en mettant la commande juste après le progress_bar
source: ligne 58 Progress_Bar 6 Left 6,20: Top 6,120 Width 6,222: Height 6,10 Min 6,0 :Max 6,65535 res% = dll_call1("CreateAutoUpdater",100) BarIndexT% =-1 BarIndexT% = dll_call4("AutoUpdateBar",object_internal(6),BarIndexT%,handle(6),adr(Volume%))
je ne pense pas avoir fait d'érreur!!!
| |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Mar 19 Déc 2017 - 14:53 | |
| fais stp: - Code:
-
min 6,0 : max 6,100 et ça marchera. | |
| | | pascal10000
Nombre de messages : 812 Localisation : Troyes Date d'inscription : 05/02/2011
| Sujet: Re: KGF_dll - nouvelles versions Mar 19 Déc 2017 - 15:02 | |
| meme erreur ps je n'ai as de vumetre de créer | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Mar 19 Déc 2017 - 15:26 | |
| Le message d'erreur montre clairement que tu n'es pas sur la bonne dll. En plus, pour que ça fonctionne, bien que tu n'aies pas de VuMeter, il faut initialiser la surveillance du haut-parleur auparavant, comme ceci: - Code:
-
res% = dll_call5("InitSpeakerControl",67,100,adr(GaucheVol%),adr(DroitVol%),adr(Volume%)) Dans ton cas, seule la variable Volume% sera utilisée par AutoUpdateBar, mais les deux autres doivent être présentes. D 'ailleurs, as-tu défini la variable BarIndexT% ? Ca peut aussi être une raison...Suis-je bête - si c'était le cas, l'erreur serait en ligne 63 et pas en 64. Par contre, la variable Volume%, est-ce qu'elle est définie ? | |
| | | pascal10000
Nombre de messages : 812 Localisation : Troyes Date d'inscription : 05/02/2011
| Sujet: Re: KGF_dll - nouvelles versions Mar 19 Déc 2017 - 16:56 | |
| ouf ça fonctionne une fois que j'ai eu l'idée de mêtre ça juste avant en esperant que je n'aurai plus de prb res% = dll_call5("InitSpeakerControl",67,100,adr(GaucheVol%),adr(DroitVol%),adr(Volume%)) merci vraiment kgf est une vrai mine d'or | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Mar 19 Déc 2017 - 17:06 | |
| Super ! Merci !
Je me bats toujours avec le volume du canal droit - c'est en cours. Le canal gauche fonctionne. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Mer 20 Déc 2017 - 1:58 | |
| En avant-première, un nouvel objet: une progress_bar circulaire ! On peut paramétrer les dimensions, la largeur de la bande colorée, les 4 couleurs de fond général, l'intérieur du cercle, la partie non significative de la bande et la partie significative de la bande. En voici une démo: - Code:
-
' test_CirclePrgressbar.bas
' bref mode d'emploi des fonctions: ' CPB% = dll_call1("CreateCircleProgressBar",handle(dest%) ' res% = dll_call1("DeleteCircleProgressBar",CPB%) ' res% = dll_call5("LocateCircleProgressBar",CPB%,x%,y%,w%,h%) ' res% = dll_call2("SetCircleProgressBarPosition",CPB%,pos%) ' res% = dll_call3("SetCircleProgressBarLimits",CPB%,min%,max%) ' res% = dll_call3("SetCircleProgressBarColor",CPB%,typ%,R%,G%,B%) ' typ%: 1=fond 2=barre non significative 3=barre significative
label creer, supprimer, changer, demarrer, arreter, tick
dim res%, CPB%, cnt%, d% cnt% = 0 d% = 1
dll_on "KGF.dll"
button 1 : caption 1,"Créer" : on_click 1,creer button 2 : left 2,width(1) : caption 2,"Supprimer" : on_click 2,supprimer spin 3 : left 3,left(2)+width(2)+10 : width 3,80 : min 3,0 : max 3,100 : position 3,0 on_change 3,changer button 4 : left 4,left(3)+width(3)+10 : caption 4,"Start" : on_click 4,demarrer button 5 : left 5,left(4)+width(4) : caption 5,"Stop" : on_click 5,arreter
timer 11 : timer_off 11 : on_timer 11,tick : timer_interval 11,100
res% = dll_call1("CreateAutoUpdater",100) res% = dll_call1("ManageAutoUpdater",0)
end
creer: if CPB%<>0 then return CPB% = dll_call1("CreateCircleProgressBar",handle(0)) res% = dll_call5("LocateCircleProgressBar",CPB%,40,40,200,200) ' limites des valeurs res% = dll_call3("SetCircleProgressBarLimits",CPB%,0,100) ' couleur de fonc res% = dll_call5("SetCircleProgressBarColor",CPB%,1,255,255,0) ' couleur au-delà de la position res% = dll_call5("SetCircleProgressBarColor",CPB%,2,255,0,0) ' couleur jusqu'à la position res% = dll_call5("SetCircleProgressBarColor",CPB%,3,0,0,255) res% = dll_call2("AutoUpdate",CPB%,adr(cnt%))
return supprimer: CPB% = dll_call1("DeleteCircleProgressBar",CPB%) return changer: cnt% = position(3) res% = dll_call2("SetCircleProgressBarPosition",CPB%,position(3)) return demarrer: timer_on 11 res% = dll_call1("ManageAutoUpdater",1) return arreter: timer_off 11 res% = dll_call1("ManageAutoUpdater",0) return tick: timer_off 11 off_change 3 cnt% = cnt% + d% if cnt%=100 then d% = 0 - d% if cnt%=0 then d% = 0 - d% position 3,cnt% timer_on 11 on_change 3,changer return Cliquez sur "Créer", et la barre s'affiche en position 0. Utilisez le spin pour changer la position, ou cliquez sur "Start" pour automatiser, et "Stop" pour arrêter, etc. Et oui, en plus de faire une simple progress_bar ronde, on peut l'attacher au AutoUpdater, comme les VuMeter, le Scope ou les 3 barres de Panoramic ! Une breve défition des fonctions est dans les commentaires au début du code. La publication officielle et la doc suivront sous peut. Joyeux NOEL à vous tous ! EDITPrésentation améliorée, configuration en peu plius simple... | |
| | | pascal10000
Nombre de messages : 812 Localisation : Troyes Date d'inscription : 05/02/2011
| Sujet: Re: KGF_dll - nouvelles versions Mer 20 Déc 2017 - 9:14 | |
| | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Mer 20 Déc 2017 - 9:39 | |
| Bonjour Klaus !
J'ai relevé une imperfection avec un petit diamètre. par exemple 20 et les valeurs couleurs suivantes :
CPB% = dll_call1("CreateCircleProgressBar",handle(0)) res% = dll_call5("LocateCircleProgressBar",CPB%,40,40,20,20) ' limites des valeurs res% = dll_call3("SetCircleProgressBarLimits",CPB%,0,100) ' couleur de fonc res% = dll_call5("SetCircleProgressBarColor",CPB%,1,240,240,240) ' couleur au-delà de la position res% = dll_call5("SetCircleProgressBarColor",CPB%,2,240,240,240) ' couleur jusqu'à la position res% = dll_call5("SetCircleProgressBarColor",CPB%,3,200,200,200) res% = dll_call2("AutoUpdate",CPB%,adr(cnt%))
Si les valeurs sont entre 1 et 4 la barre s'affiche à 100% !? | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Mer 20 Déc 2017 - 16:41 | |
| Essaie comme ceci: - Code:
-
CPB% = dll_call1("CreateCircleProgressBar",handle(0)) res% = dll_call5("LocateCircleProgressBar",CPB%,40,40,20,20) ' limites des valeurs res% = dll_call3("SetCircleProgressBarLimits",CPB%,0,100) ' couleur de fonc res% = dll_call5("SetCircleProgressBarColor",CPB%,1,240,240,240) ' couleur au-delà de la position res% = dll_call5("SetCircleProgressBarColor",CPB%,2,241,241,241) ' couleur jusqu'à la position res% = dll_call5("SetCircleProgressBarColor",CPB%,3,200,200,200) res% = dll_call2("AutoUpdate",CPB%,adr(cnt%)) Les trois couleurs doivent être différentes, même si l'oeil be fait pas la différence. C'est le problème du FloodFill que j'utilise pour dessiner ce composant. Change la couleur 2 (ou la 1, ça ne fait pas de différence), puis clique sur "Start" - tu verras la chenille se déployer. EDITAvec tes paramètres, juste après la création, tu ne vois strictement rien, car le cercle non couvert par le segment représentant la valeur a la même couleur que le centre du cercle. Mais en choisissant 3 couleurs différentes (nécessité technique), même si deux d'entre elles sont proches, tu verras le bandeau apparaître dès que tu cliques sur "Start", ou si tu utilises SetCircleProgressBarPosition pour imposer une valeur non nulle. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Mer 20 Déc 2017 - 18:36 | |
| Nouvelle version: KGF.dll V8.16 du 19/12/2017Nouveautés: - SelectWindowsPrinter: nouvelle fonctionnalitéModules modifiés: KGF.dll KGF.chmLa doc et les sources sont à jour. Cette fonction ouvrait un dialogue de sélection d'imprimante, changeait éventuellement l'imprimante par défaut et retournait le nom de l'imprimante choisie. Syntaxe: - Code:
-
res% = DLL_call2("SelectWindowsPrinter",adr(nom$),len(nom$)) Maintenant, en plus, si le premier paramètre est passé comme 0 (zéro), le second paramètre est interprété comme un numéro d'imprimante (1, 2, ...) et cette imprimante est choisie comme imprimante par défaut. Syntaxe: - Code:
-
res% = DLL_call2("SelectWindowsPrinter",0,num%) J'en ai profité pour faire un mini-utilitaire. J'ai généré le EXE et placé un raccourci vers cet EXE sur mon bureau. Il affiche une liste avec toutes les imprimantes installées dans le système, et l'imprimangte par défaut actuelle est sélectionnée. Un clic sur une de ces imprimantes la désigne comme nouvelle imprimante par défaut, et elle le reste jusqi'à ce qu'on change cela. Très pratique: - Code:
-
' Select default Printer.bas
label choix
dim res%
border_small 0 caption 0,"Select Default Printer" width 0,200 : height 0,400 list 1 : full_space 1 : on_click 1,choix
dll_on "KGF.dll"
res% = DLL_call1("GetPrinterNames",handle(1)) if res%>0 then res% = dll_call2("SelectListBoxItem",handle(1),res%)
end
choix: res% = DLL_call2("SelectWindowsPrinter",0,item_index(1)) return | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Mer 20 Déc 2017 - 19:54 | |
| Bonsoir klaus
Le code et les couleurs que j'ai posté fonctionne bien !
Seulement les valeurs comprises entre 1 et 4 font 'bugguer' l'affichage de la Circle_Progress_bar Elle s'affiche a 100% puis revient à la normal dès le passage à 5 ou +.
C'est pas très grave mais bon c'est toi qui vois... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Mer 20 Déc 2017 - 20:51 | |
| Recharge la DLL et réessaye, mais en mettant stp 3 couleurs différentes, comme ceci: - Code:
-
CPB% = dll_call1("CreateCircleProgressBar",handle(0)) res% = dll_call4("LocateCircleProgressBar",CPB%,40,40,20) ' limites des valeurs res% = dll_call3("SetCircleProgressBarLimits",CPB%,0,100) ' couleur de fonc res% = dll_call5("SetCircleProgressBarColor",CPB%,1,240,240,240) ' couleur au-delà de la position res% = dll_call5("SetCircleProgressBarColor",CPB%,2,241,241,241) ' couleur jusqu'à la position res% = dll_call5("SetCircleProgressBarColor",CPB%,3,200,200,200) res% = dll_call2("AutoUpdate",CPB%,adr(cnt%))
La différence est invisible à l'oeil, mais essentielle pour le fonctionnement du programme. EDITOups... j'ai oublié de signaler que la fonction LocateCircleProgressBar a maintenant un paramètre de moins - comme dans le code posté ci-dessus... | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: KGF_dll - nouvelles versions Mer 20 Déc 2017 - 21:15 | |
| ok Klaus j'ai compris. comme ça tout fonctionne parfaitement. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Mer 20 Déc 2017 - 21:24 | |
| Super ! Alors, étape suivante, maintenant. Jusqu'à maintenant, la limite était codée à 100 dans le DLL, malgré la présence déjà de la fonction qui permettait de la changer. C'est opérationnel maintenant. Certes, plus la limite est grande, plus les variations de positions sont faibles - une évidence. Mais maintenant, on peut changer la limite en cours de fonctionnement,, même si AutoUpdate est activé. Regarde cette version du code démo: - Code:
-
' test_CirclePrgressbar.bas
' bref mode d'emploi des fonctions: ' CPB% = dll_call1("CreateCircleProgressBar",handle(dest%) ' res% = dll_call1("DeleteCircleProgressBar",CPB%) ' res% = dll_call4("LocateCircleProgressBar",CPB%,x%,y%,w%) ' res% = dll_call2("SetCircleProgressBarPosition",CPB%,pos%) ' res% = dll_call3("SetCircleProgressBarLimits",CPB%,min%,max%) ' res% = dll_call3("SetCircleProgressBarColor",CPB%,typ%,R%,G%,B%) ' typ%: 1=fond 2=barre non significative 3=barre significative
label creer, supprimer, changer, demarrer, arreter, tick, changerlimit
dim res%, CPB%, cnt%, d%, limit%, run% cnt% = 0 d% = 1 limit% = 100 run% = 0
dll_on "KGF.dll"
button 1 : caption 1,"Créer" : on_click 1,creer button 2 : left 2,width(1) : caption 2,"Supprimer" : on_click 2,supprimer spin 3 : left 3,left(2)+width(2)+10 : width 3,80 : min 3,0 : max 3,limit% : position 3,0 on_change 3,changer button 4 : left 4,left(3)+width(3)+10 : caption 4,"Start" : on_click 4,demarrer button 5 : left 5,left(4)+width(4) : caption 5,"Stop" : on_click 5,arreter alpha 6 : left 6,left(5)+width(5)+10 : caption 6,"Max:" spin 7 : left 7,left(6)+30 : width 7,80 : min 7,0 : max 7,65535 : position 7,100 on_change 7,changerlimit
timer 11 : timer_off 11 : on_timer 11,tick : timer_interval 11,100
res% = dll_call1("CreateAutoUpdater",100) res% = dll_call1("ManageAutoUpdater",0)
end
creer: if CPB%<>0 then return ' ***** mettre le IF et le END_IF en commentaires pour la version spéciale Minibug if 1=2 CPB% = dll_call1("CreateCircleProgressBar",handle(0)) res% = dll_call4("LocateCircleProgressBar",CPB%,40,40,20) ' limites des valeurs res% = dll_call3("SetCircleProgressBarLimits",CPB%,0,limit%) ' couleur de fonc res% = dll_call5("SetCircleProgressBarColor",CPB%,1,240,240,240) ' couleur au-delà de la position res% = dll_call5("SetCircleProgressBarColor",CPB%,2,241,241,241) ' couleur jusqu'à la position res% = dll_call5("SetCircleProgressBarColor",CPB%,3,200,200,200) res% = dll_call2("AutoUpdate",CPB%,adr(cnt%)) return end_if CPB% = dll_call1("CreateCircleProgressBar",handle(0)) res% = dll_call4("LocateCircleProgressBar",CPB%,40,40,200) ' limites des valeurs res% = dll_call3("SetCircleProgressBarLimits",CPB%,0,limit%) ' couleur de fonc res% = dll_call5("SetCircleProgressBarColor",CPB%,1,255,255,0) ' couleur au-delà de la position res% = dll_call5("SetCircleProgressBarColor",CPB%,2,255,0,0) ' couleur jusqu'à la position res% = dll_call5("SetCircleProgressBarColor",CPB%,3,0,0,255) res% = dll_call2("AutoUpdate",CPB%,adr(cnt%))
return supprimer: CPB% = dll_call1("DeleteCircleProgressBar",CPB%) return changer: cnt% = position(3) res% = dll_call2("SetCircleProgressBarPosition",CPB%,position(3)) return changerlimit: timer_off 11 limit% = position(7) max 3,limit% res% = dll_call3("SetCircleProgressBarLimits",CPB%,0,limit%) if run%=1 then timer_on 11 return demarrer: run% = 1 timer_on 11 res% = dll_call1("ManageAutoUpdater",1) return arreter: timer_off 11 run% = 0 res% = dll_call1("ManageAutoUpdater",0) return tick: timer_off 11 off_change 3 cnt% = cnt% + d% if cnt%>=limit% cnt% = limit% d% = 0 - d% end_if if cnt%<=0 cnt% = 0 d% = 0 - d% end_if position 3,cnt% display timer_on 11 on_change 3,changer return Bien sûr, il faut, encore, recharger la DLL... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Jeu 21 Déc 2017 - 10:03 | |
| Nouvelle version: KGF.dll V8.17 du 21/12/2017Nouveautés: - nouvel objet: CircleProgressBar et ses fonctions de gestion - nouvelle fonction: RichEditHtmlFileSave - changement de la fonction SelectWindowsPrinterModules modifiés: KGF.dll KGF.chmLa doc et les sources sont à jour. L'objet CircleProgressBar a déjà fait l'objet d'une publication provisoire. La définition des fonctions de service ayant légèrement changé, voici la démo actualisée: - Code:
-
' test_CirclePrgressbar.bas
' bref mode d'emploi des fonctions: ' CPB% = dll_call1("CreateCircleProgressBar",handle(dest%) ' res% = dll_call1("DeleteCircleProgressBar",CPB%) ' res% = dll_call4("LocateCircleProgressBar",CPB%,x%,y%,w%) ' res% = dll_call2("SetCircleProgressBarPosition",CPB%,pos%) ' res% = dll_call3("SetCircleProgressBarLimits",CPB%,min%,max%) ' res% = dll_call3("SetCircleProgressBarColor",CPB%,typ%,R%,G%,B%) ' typ%: 1=fond 2=barre non significative 3=barre significative
label creer, supprimer, changer, demarrer, arreter, tick, changerlimit
dim res%, CPB%, cnt%, d%, limit%, run% cnt% = 0 d% = 1 limit% = 100 run% = 0
dll_on "KGF.dll"
button 1 : caption 1,"Créer" : on_click 1,creer button 2 : left 2,width(1) : caption 2,"Supprimer" : on_click 2,supprimer spin 3 : left 3,left(2)+width(2)+10 : width 3,80 : min 3,0 : max 3,limit% : position 3,0 on_change 3,changer button 4 : left 4,left(3)+width(3)+10 : caption 4,"Start" : on_click 4,demarrer button 5 : left 5,left(4)+width(4) : caption 5,"Stop" : on_click 5,arreter alpha 6 : left 6,left(5)+width(5)+10 : caption 6,"Max:" spin 7 : left 7,left(6)+30 : width 7,80 : min 7,0 : max 7,65535 : position 7,100 on_change 7,changerlimit
timer 11 : timer_off 11 : on_timer 11,tick : timer_interval 11,100
res% = dll_call1("CreateAutoUpdater",100) res% = dll_call1("ManageAutoUpdater",0)
end
creer: if CPB%<>0 then return ' ***** mettre le IF et le END_IF en commentaires pour la version spéciale Minibug if 1=2 CPB% = dll_call1("CreateCircleProgressBar",handle(0)) res% = dll_call4("LocateCircleProgressBar",CPB%,40,40,20) ' limites des valeurs res% = dll_call3("SetCircleProgressBarLimits",CPB%,0,limit%) ' couleur de fonc res% = dll_call5("SetCircleProgressBarColor",CPB%,1,240,240,240) ' couleur au-delà de la position res% = dll_call5("SetCircleProgressBarColor",CPB%,2,241,241,241) ' couleur jusqu'à la position res% = dll_call5("SetCircleProgressBarColor",CPB%,3,200,200,200) res% = dll_call2("AutoUpdate",CPB%,adr(cnt%)) return end_if CPB% = dll_call1("CreateCircleProgressBar",handle(0)) res% = dll_call4("LocateCircleProgressBar",CPB%,40,40,200) ' limites des valeurs res% = dll_call3("SetCircleProgressBarLimits",CPB%,0,limit%) ' couleur de fonc res% = dll_call5("SetCircleProgressBarColor",CPB%,1,255,255,0) ' couleur au-delà de la position res% = dll_call5("SetCircleProgressBarColor",CPB%,2,255,0,0) ' couleur jusqu'à la position res% = dll_call5("SetCircleProgressBarColor",CPB%,3,0,0,255) res% = dll_call2("AutoUpdate",CPB%,adr(cnt%))
return supprimer: CPB% = dll_call1("DeleteCircleProgressBar",CPB%) return changer: cnt% = position(3) res% = dll_call2("SetCircleProgressBarPosition",CPB%,position(3)) return changerlimit: timer_off 11 limit% = position(7) max 3,limit% res% = dll_call3("SetCircleProgressBarLimits",CPB%,0,limit%) if run%=1 then timer_on 11 return demarrer: run% = 1 timer_on 11 res% = dll_call1("ManageAutoUpdater",1) return arreter: timer_off 11 run% = 0 res% = dll_call1("ManageAutoUpdater",0) return tick: timer_off 11 off_change 3 cnt% = cnt% + d% if cnt%>=limit% cnt% = limit% d% = 0 - d% end_if if cnt%<=0 cnt% = 0 d% = 0 - d% end_if position 3,cnt% display timer_on 11 on_change 3,changer return Voici une brève démo de la nouvelle fonction RichEditHtmlFileSave: - Code:
-
' test_RichEditHtmlFileSave.bas
label close0 dim res%, RTF$, HTML$, RE%
on_close 0,close0 dll_on "KGF.dll"
RE% = dll_call1("RichEditCreate",handle(0)) res% = dll_call5("RichEditGeometry",RE%,10,40,400,300)
RTF$ = "MonDocument.rtf" res% = dll_call2("RichEditFileLoad",RE%,adr(RTF$))
HTML$ = "MonDocument.html" res% = dll_call2("RichEditHtmlFileSave",RE%,adr(HTML$)) end
close0: res% = dll_call1("RichEditDelete",RE%) return
Mode d'emploi: - créer un fichier MonDocument.rtf avec du texte uniquement, mais ayant des attributs variés - lancer le programme - double-cliquer sur le fichier MonDocument.html créé par le programme Démo de la fonction SelectWindowsPrinter: - Code:
-
' Select default Printer.bas
label choix
dim res%
border_small 0 caption 0,"Select Default Printer" width 0,200 : height 0,400 list 1 : full_space 1 : on_click 1,choix
dll_on "KGF.dll"
res% = DLL_call1("GetPrinterNames",handle(1)) if res%>0 then res% = dll_call2("SelectListBoxItem",handle(1),res%)
end
choix: res% = DLL_call2("SelectWindowsPrinter",0,item_index(1)) return
Ce programme peut être généré en EXE. En plaçant un raccourci vers cet EXE sur le bureau, on a à tout moment un outil simple permettant de changer l'imprimante par défaut. Il suffit de cliquer sur une ligne de la liste des ilmprimantes qui s'affiche. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 23 Déc 2017 - 9:41 | |
| Nouvelle version: KGF.dll V8.18 du 23/12/2017Nouveautés: - nouvelle fonction: RichEditGetTextSizes - nouveau code 14 pour RichEditFunction: gerer des options par masque binaireModules modifiés: KGF.dllLa doc et les sources seront mis à jour dans quelques jours. Voici une doc provisoire: - Code:
-
res% = dll_call4("RichEditGetTextSizes",RE%,handle(obj%),adr-largeur%),adr(hauteur%)) largeur et hauteur du texte global du RichEdit seront déposées dans ces deux variables. l'objet obj% sera utilisé pour effectuer les mesures de la largeur. Code 14 pour RichEditFunction: dans le dernier paramètre, on passe un masque binaire, dont chasue bit commandes les options suivantes: - Code:
-
1 = visible 2 = Enabled 4 = ReadOnly 8 = WordWrap 16 = ScrollBar horizontale 32 = ScrollBar verticale | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 23 Déc 2017 - 16:15 | |
| Nouvelle version: KGF.dll V8.19 du 23/12/2017Nouveautés: - nouvelle fonction: RichEditImageLoad - nouvelle fonction: RichEditSetColumnsModules modifiés: KGF.dllLa doc et les sources seront mis à jour dans quelques jours. La fonction RichEditImageLoadest appelée comme suit: - Code:
-
res% = dll_call3('RichEditImageLoad",RE%,resize%,adr(fichier$)) resize%=0 ==> image chargée avec sa taille d'origine, non modifiable resize%=1 ==> image chargée avec sa taille d'origine, mais modifiable fichier$ = nom du fichier image (tous types: BMP, JPG, PNG, GIF, ...) La fonction RichEditSetColumns est appelée comme suit: - Code:
-
dim ntab% : ' nombre d'arrêts de tabulation ntab% = 3 : ' exemple: 3 arrêts = 4 colonnes dim ArretsTabulation%(ntab%-1) : ' (0...2) = position des arrêts de tabulation en caractères dim Justifications%(ntab%-1) : ' (0...2) = codes de justification ' 0 = normal (à gauche) ' 1 = centré ' 2 = à droite ' la position est spécifiée en pixels. res% = dll_call4("RichEditSetColumns ",RE%,ntab%,adr(ArretsTabulation%),adr(Justifications%)) Ensuite, il suffit de déposer des lignes entières dont les colonnes sont séparées par des tabulations, comme ceci: - Code:
-
ligne$ = '...colonne 1..." + chr$(9) + "...colonne 2..."+chr$(9)+"...colonne 3..."+chr$(9)+"...colonne4..." (Cette dernière fonction est encore en cours de mise au point...)JOYEUX NOEL !!! EDITNouvelle fonction: - Code:
-
res% = dll_call2("RichEditStringAppend",RE%,adr(url$)) Cette fonction ajoute une ligne dans le texte, à la fin du texte actuel La fonction RichEditSetColumns a été modifiée par le rajout d'un paramètre qui est l'adresse d'un tableau d'entiers donnant le type de cadrage à effectuer après l'arrêt de tabulation concerné: 0 = normal (à gauche) 1 = centré 2 = cadré à droite Voici le programme de démo adapté: - Code:
-
' test_RichEditBmpLoad.bas
label close0, charger, URLon, URLoff, dimensions dim Largeur%, Hauteur% dim res%, RE%, WB%, f$, RTF$, HTML$, URL$, ncar%
on_close 0,close0 full_space 0 dll_on "KGF.dll"
open_dialog 1 : filter 1,"Images (BMP,JPG,PNG,GIF)|*.bmp;*.jpg;*.png;*.gif"
alpha 21 : top 21,40 : left 21,10 : caption 21,"RichEdit" alpha 22 : top 22,40 : left 22,420 : caption 22,"WebBrowser" alpha 23 : top 23,40 : left 23,830 : caption 23,"HVIEWER" RE% = dll_call1("RichEditCreate",handle(0)) res% = dll_call5("RichEditGeometry",RE%,10,60,400,300)
RTF$ = "MonDocument.rtf" res% = dll_call2("RichEditFileLoad",RE%,adr(RTF$))
' if 1=2 : ' <============ mettre cette ligne en commentaire pour tester les tabulatins
ncar% = dll_call2("RichEditGetInformation",RE%,1) res% = dll_call3("SelectRichEditText",RE%,ncar%,0)
dim tabs%(4),justif%(4) tabs%(0) = 57 tabs%(1) = 140 tabs%(2) = 210 tabs%(3) = 250 tabs%(4) = 310 justif%(0) = 0 justif%(1) = 1 justif%(2) = 2 justif%(3) = 0 justif%(4) = 1
res% = dll_call4("RichEditSetColumns",RE%,5,adr(tabs%),adr(justif%)) url$ = "1"+chr$(9)+"2"+chr$(9)+"3"+chr$(9)+"4"+chr$(9)+"5"+chr$(9)+"6"+chr$(13)+chr$(10) ' res% = dll_call2("RichEditStringLoad",RE%,adr(url$)) res% = dll_call2("RichEditStringAppend",RE%,adr(url$))
url$ = "111"+chr$(9)+"222"+chr$(9)+"333"+chr$(9)+"444"+chr$(9)+"555"+chr$(9)+"666"+chr$(13)+chr$(10) res% = dll_call2("RichEditStringAppend",RE%,adr(url$)) ' end_if : ' <============ mettre cette ligne en commentaire pour tester les tabulatins
button 10 : caption 10,"Image" : on_click 10,charger button 11 : left 11,width(10) : caption 11,"URL on" : on_click 11,URLon button 12 : left 12,left(11)+width(11) : caption 12,"URL off" : on_click 12,URLoff button 13 : left 13,left(12)+width(12) : caption 13,"Dimensions" : on_click 13,dimensions
WB% = dll_call1("WB_Create",handle(0)) res% = dll_call5("WB_Locate",WB%,420,60,400,300) URL$ = "file:///C:\Users\klausgunther\Documents\Mes projets\Mes projets Delphi\KGF\MonDocument.html" res% = dll_call2("WB_Url",WB%,adr(url$))
hviewer 99 : top 99,60 : left 99,830 : width 99,400 : height 99,300
HTML$ = "MonDocument.html" file_load 99,HTML$
end
close0: res% = dll_call1("RichEditDelete",RE%) return
charger: f$ = file_name$(1) if f$="_" then return res% = dll_call3("RichEditImageLoad",RE%,0,adr(f$)) : ' image taille fixe ' res% = dll_call3("RichEditImageLoad",RE%,1,adr(f$)) : ' image modifiable
' HTML$ = "MonDocument.html" ' res% = dll_call2("RichEditHtmlFileSave",RE%,adr(HTML$)) return URLon: res% = dll_call3("RichEditFunction",RE%,15,1) return URLoff: res% = dll_call3("RichEditFunction",RE%,15,0) return dimensions: res% = dll_call4("RichEditGetTextSizes",RE%,handle(99),adr(Largeur%),adr(Hauteur%)) message "Résultat reçu: adr(Largeur%)="+str$(adr(Largeur%))+" Largeur="+str$(Largeur%)+" Hauteur="+str$(Hauteur%) return PS.Avez-vous vu la fonction qui permet d'insérer une image dans un RichEdit ? Elle fonctionne en insérant l'image dans le texte à la position du curseur, comme si elle était une gramde image comme une autre. En outre, un paramètre permet de pouvoir ajuster les dimensions de l'image par la souris... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Lun 25 Déc 2017 - 22:38 | |
| Toutes les noveautés sont maintenant documentées dans KGF.chm. La doc est à jour, et les sources sur le WebDav également. Ceci concerne: RichEditFunction code 14 RichEditGetTextSizes RichEditImageLoad RichEditSetColumns Avoir des images dans un RichEdit, et/ou avoir une représentation par colonnes, c'est sympa, non ? Note: actellement, KGF.dll exporte 1207 fonctions ! | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Mar 26 Déc 2017 - 13:22 | |
| Nouvelle version: KGF.dll V8.20 du 26/12/2017Nouveautés: - nouvelle fonction: ObjectMoverTarget - nouvel objet: Ruler et ses fonctions de support - correction du problème d'affichage initial de l'icône ObjectMover pour l'état normalModules modifiés: KGF.dll KGF.chmLa doc et les sources sont à jour. La nouvelle fonction ObjectMoverTarget permet de tenir compte du cas où l'on veut gérer le déplacement d'un objet autre que celui qui contient directement l'ObjectMover. Exemple: un Container contenant un Panel qui à son tour contient l'ObjectMover. On peut maiintenant déplacer le Container entier en tirant l'objectMover, en non seulement le Panel come c'est par défaut. Le nouvel objet Ruler est une aide la mise au point des interfaces graphiques. Il s'agit de 4 règles graduées en pixels que l'on peut déplacer librement à l'écran pour mesurer postions et dimensions des objets. Démo: - Code:
-
' test_Ruler.bas
label creerH, creerG, creerD, creerB, CreerC1, CreerC2, ecart, supprimer
dim res%, RUH%, RUG%, RUD%, RUB%, RUC1%, RUC2%
button 1 : caption 1,"Haut" : on_click 1,creerH button 2 : left 2,width(1) : caption 2,"Gauche" : on_click 2,creerG button 3 : left 3,left(2)+width(2) : caption 3,"Droite" : on_click 3,creerD button 4 : left 4,left(3)+width(3) : caption 4,"Bas" : on_click 4,creerB button 5 : left 5,left(4)+width(4) : caption 5,"Cercle 1" : on_click 5,creerC1 button 6 : left 6,left(5)+width(5) : caption 6,"Cercle 2" : on_click 6,creerC2 button 7 : left 7,left(6)+width(6) : caption 7,"Cercle 2-1" : on_click 7,ecart
button 8 : left 8,left(7)+width(7) : caption 8,"Supprimer" : on_click 8,supprimer
width 0,width(0)-width_client(0) + left(8)+width(8) height 0,height(0)-height_client(0) + height(8)
dll_on "KGF.dll"
end creerH: if RUH%=0 then RUH% = dll_call1("CreateRuler",0) return
creerG: if RUG%=0 then RUG% = dll_call1("CreateRuler",1) return creerD: if RUD%=0 then RUD% = dll_call1("CreateRuler",2) return creerB: if RUB%=0 then RUB% = dll_call1("CreateRuler",3) return creerC1: if RUC1%=0 then RUC1% = dll_call1("CreateRuler",4) return creerC2: if RUC2%=0 then RUC2% = dll_call1("CreateRuler",4) return ecart: res% = dll_call2("GetRulerDistance",RUC1%,RUC2%) message "Ecart: "+str$(res%)+" pixels" return supprimer: RUH% = dll_call1("DeleteRuler",RUH%) RUG% = dll_call1("DeleteRuler",RUG%) RUD% = dll_call1("DeleteRuler",RUD%) RUB% = dll_call1("DeleteRuler",RUB%) RUC1% = dll_call1("DeleteRuler",RUC1%) RUC2% = dll_call1("DeleteRuler",RUC2%) return EDITJ'ai ajouté un 5ème type de règle: un cercle formant un réticule pour viser un point précis. Et une nouvelle fonction GetRulerDistance retournant la distance entre Rulers en pixels. Le programme de démo a été modifié pour permettre de créer deux Rulers de type cercle et de mesurer la distance entre ces deux Rulers. Ceci dit, on peut mesurer également la distance entre deus Rulers verticaux, deux Rulers horizontaux ou un Ruler cercle et n'importe quel type de Ruler droit. Les règles sont maintenant translucides pour un positionnement plus facile.
Dernière édition par Klaus le Mar 26 Déc 2017 - 18:50, édité 2 fois | |
| | | pascal10000
Nombre de messages : 812 Localisation : Troyes Date d'inscription : 05/02/2011
| Sujet: Re: KGF_dll - nouvelles versions Mar 26 Déc 2017 - 14:26 | |
| sympas les règles ça peut être utile mrc | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Jeu 28 Déc 2017 - 18:24 | |
| Nouvelle version: KGF.dll V8.21 du 28/12/2017Nouveautés: - correction de la fonction InitSpeakerControl: rendre le canal droit opérationnelModules modifiés: KGF.dllLa doc est inchangée. Les sources sont à jour. Le problème technique à la base du disfonctionnement a pu être résolu grâce à la collaboration d'un membre d'un forum de Dveloppez.com, que je remercie sincèrement. Voici le résultat, avec une variante du programme de Radio FM. On voit le volume instantané des canaux gauche et droit, ainsi que le volume général (au centre): - 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%, BarIndexT% BarIndexT% = -1
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,300 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%,2) : ' 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%,2) : ' 1) res% = dll_call5("InitSpeakerControl",67,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%))
progress_bar 1001 : parent 1001,1000 : top 1001,225 : left 1001,200 : width 1001,200 ' scroll_bar 1001 : parent 1001,1000 : top 1001,225 : left 1001,200 : width 1001,200 ' track_bar 1001 : parent 1001,1000 : top 1001,225 : left 1001,200 : width 1001,200 min 1001,0 : max 1001,100 : position 1001,0 BarIndexT% = dll_call4("AutoUpdateBar",object_internal(1001),BarIndexT%,handle(1001),adr(Volume%)) 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 | |
| | | Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| Sujet: Re: KGF_dll - nouvelles versions Ven 29 Déc 2017 - 0:10 | |
| Testé avec succès ! Merci Klaus ! J'ai un peu de mal à trouver rapidement une fonction dans l'aide en ligne. Comment dois-je faire pour trouver par exemple InitSpeakerControl ? Je n'arrive pas à faire fonctionner la recherche. | |
| | | Contenu sponsorisé
| Sujet: Re: KGF_dll - nouvelles versions | |
| |
| | | | KGF_dll - nouvelles versions | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |