Français
Source/ Codesnippets

Lautstärkeregler Scrollbalken

 

KompilierenMarqueSéparation
Source wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Scrollbalken (z.B. für Lautstärkeregler)
Bei windows XP prof. funktioniert die Einstellung Balken ohne Kästchen seltsamerweise nicht
die Breite muss mindestens 10 sein, sonst wird bei xp garnichts angezeigt.
Def GetSysColor(1) !USER32,GetSysColor
SETTRUECOLOR 1
DECLARE ENDE%,PROGBAR&,plus&,minus&,fertig&,show&,volume&,target&,progstep!,TarStep!,handicap!
WINDOWSTYLE 528 bei anderem Windowstyle Doppelklick abfangen
WINDOWTITLE Lautstärke
WINDOW SUB(DIV(%MAXX,2),DIV(135,2)),SUB(DIV(%MAXY,2),DIV(251,2))-135,251
CLS GETSYSCOLOR(15)
USEFONT MS Sans Serif,13,0,0,0,0
SETDIALOGFONT 1
decimals 2
LET plus&=@CREATEBUTTON(%HWND,+,48,13,20,20)
let ProgBar&=@control(msctls_progress32,,$50800005,55,48,10,60,%Hwnd,1,%HInstance) =vertikal, $50000001=horizontal
LET minus&=@CREATEBUTTON(%HWND,-,48,124,20,20)
let show&=@CreateEdit(%Hwnd,,40,160,40,20)
enablewindow show&,0
LET fertig&=@CREATEBUTTON(%HWND,&Ende,3,190,120,25)
let target&=255 =100% Ziellautstärke
let Progstep!=5 =5% auf oder ab bei jedem Klick
let TarStep!=mul(div(target&,100),Progstep!) Progressbar und Lautstärke angleichen
Vorgabe, z.B. wenn man bisherige Lautstärke aus ini liest
let volume&=125 Wert muss natürlich zu dem Prozentwert passen

IFnot gt(volume&,target&) or lt(volume&,0) Falls Ini von Hand geändert wurde

    let handicap!=mul(div(100,target&),volume&) Vorgabe in Anzeige umrechnen

else

    handicap!=100
    let volume&=target&

endif

sendmessage(ProgBar&,$402,handicap!,0) auf Vorgabe setzten
settext show&,@str$(volume&)

WHILENOT ENDE%

    WAITINPUT

    If @EQU(%KEY,2)

        LET ENDE%= 1

    ELSEIF @GETFOCUS(plus&)

        sendmessage(ProgBar&,$403,progstep!,0)
        let volume&=volume&+TarStep!
        case equ(volume&,target&) or gt(volume&,target&):let volume&=target&
        settext show&,@str$(volume&)

    ELSEIF @GETFOCUS(minus&)

        Declare test$
        Let test$=@str$(Tarstep!)
        Let test$=right$(@Instr(.,test$),2)
        sendmessage(ProgBar&,$403,-ProgStep!,0)
        let volume&=volume&-TarStep!
        Case gt(val(test$),0):let volume&=Volume&+1 Korrektur bei Werten hinter dem Komma
        case equ(volume&,0) or lt(volume&,0):let volume&=0
        settext show&,@str$(volume&)

    ELSEIF @GETFOCUS(fertig&)

        let Ende%=1

    ENDIFclass=s4 href='./../../funktionsreferenzen/XProfan/Wend/'>WEND

 
16.07.2007  
 




Michael
W.
Aufgefrischt, mais là fehlt encore einiges. Fenêtre hat z.B. seulement 3 Werte...
'Source wurde am 15.07.2007 aus qui MMJ-Quellcodesammlung (Dietmar Horn) dans qui Babyklappe sur XProfan.Com abgelegt:
'Scrollbalken (z.B. pour Lautstärkeregler)
'chez windows XP prof. funktioniert qui Einstellung poutre sans Kästchen seltsamerweise pas
'qui Breite muss mindestens 10 son, sonst wird chez xp garnichts angezeigt.
Def GetSysColor(1) !USER32,GetSysColor
Set("TrueColor",1)
DECLARE ENDE%, PROGBAR&, plus&, minus&, fertig&, show&, volume&, target&, progstep!, TarStep!, handicap!
WINDOWSTYLE 528'chez anderem Windowstyle Double-cliquez sur intercepter
WINDOWTITLE Lautstärke
WINDOW SUB(DIV(%MAXX,2),DIV(135,2)),SUB(DIV(%MAXY,2),DIV(251,2))-135,251
CLS GETSYSCOLOR(15)
USEFONT "MS Sans Serif",13,0,0,0,0
SETDIALOGFONT 1
Set("Décimal",2)
plus& = Créer("Button",%HWND,"+",48,13,20,20)
ProgBar& = control("msctls_progress32",,$50800005,55,48,10,60,%Hwnd,1,%HInstance)'=vertikal, $50000001=horizontal
minus& = Créer("Button",%HWND,"-",48,124,20,20)
show& = Créer("Edit",%Hwnd,,40,160,40,20)
enablewindow show&,0
fertig& = Créer("Button",%HWND,&Ende,3,190,120,25)
target& = 255'=100% Ziellautstärke
Progstep! = 5'=5% sur ou bien ab chez chaque Klick
TarStep! = target& / 100 * Progstep!'Progressbar et Lautstärke angleichen
'Vorgabe, z.B. si on bisherige Lautstärke aus ini liest
volume& = 125'Wert muss naturellement trop dem Prozentwert passen

IFnot (volume& > target&) or (volume& < 0)'si Ini de main geändert wurde

    handicap! = 100 / target& * volume&'Vorgabe dans Anzeige umrechnen

d'autre

    handicap! = 100
    volume& = target&

endif

sendmessage(ProgBar&,$402,handicap!,0)'sur Vorgabe mettons
settext show&,str$(volume&)

WHILENOT ENDE%

    WAITINPUT

    Si %KEY = 2

        ENDE% = 1

    ELSEIF GETFOCUS(plus&)

        sendmessage(ProgBar&,$403,progstep!,0)
        volume& = volume& + TarStep!
        cas (volume& = target&) or (volume& > target&) : volume& = target&
        settext show&,str$(volume&)

    ELSEIF GETFOCUS(minus&)

        Déclarer test$
        test$ = str$(Tarstep!)
        test$ = right$(Instr(".",test$),2)
        sendmessage(ProgBar&, $403, -ProgStep!, 0)
        volume& = volume& - TarStep!
        Cas (val(test$) > 0) : volume& = Volume& + 1'Correction chez Werten derrière dem Komma
        cas (volume& <= 0) : volume& = 0
        settext show&,str$(volume&)

    ELSEIF GETFOCUS(fertig&)

        Ende% = 1

    ENDIF

Endwhile

 
System: Windows 8/10, XProfan X4
Programmieren, das spannendste Detektivspiel der Welt.
30.04.2016  
 




p.specht

Nochmal aufgefrischt. là beim enlever ici alle Anführungszeichen verschwinden, habe je vous trop § konvertiert. alors Rückkonvertierung pas oublier qc!
Gruss

'*** Scrollbalken, z.B. pour Lautstärkeregler ***
'qui Source wurde am 15.07.2007 aus qui MMJ-Quellcodesammlung de Dietmar Horn(+) dans qui
'Programme-Babyklappe sur XProfan.Com abgelegt et de M.Wodrich am 30.04.2016 aufgefrischt;
'2017-01 de P.Specht pour XProfan 11.2a (32bit) sous Win7-64 home SP1 courir gemacht.
Def GetSysColor(1) !§USER32§,§GetSysColor§:Set(§TrueColor§,1)
DECLARE ENDE%,PROGBAR&,plus&,minus&,fertig&,show&,volume&,target&,\
progstep!,TarStep!,handicap!,test$,BarBreite&
WINDOWSTYLE 528 'chez anderem Windowstyle Double-cliquez sur intercepter
WINDOWTITLE §Stärke§:WINDOW (%MAXX\2-135\2),(%MAXY\2-251\2) - 135,251
CLS GETSYSCOLOR(15):USEFONT §MS Sans Serif§,13,0,0,0,0:SETDIALOGFONT 1:Set(§Decimals§,2)

BarBreite&=18 '25 '10

ProgBar& = control(\
§msctls_progress32§,§§,$50800005,55-Barbreite&/3, 48,Barbreite&,60,%Hwnd,1,%HInstance)
' ^^^^ =vertikal, $50000001 = horizontal
minus& = Créer(§Button§,%HWND,§-§,48,124,20,20)
plus& = Créer(§Button§,%HWND,§+§,48,13,20,20)
show& = Créer(§Éditer§,%Hwnd,§§,40,160,40,20)
enablewindow show&,0

fertig& = Créer(§Button§,%HWND,§&Ende§,1,194,40,25)

target& = 255 '=100% Ziellautstärke
Progstep! = 5 '=5% sur ou bien ab chez chaque Klick
TarStep! = target& / 100 * Progstep! 'Progressbar et Lautstärke angleichen
'Vorgabe, z.B. si on bisherige Lautstärke aus ini liest:
volume& = 125 'Wert muss naturellement trop dem Prozentwert passen
IFnot (volume& > target&) or (volume& < 0) 'Falls Ini von Hand geändert wurde
handicap! = 100 / target& * volume& 'Vorgabe in Anzeige umrechnen
d'autre
handicap! = 100:volume& = target&
endif

sendmessage(ProgBar&,$402,handicap!,0) 'sur Vorgabe mettons
settext show&,str$(volume&)

WHILENOT ENDE%
WAITINPUT
Si %KEY = 2:ENDE% = 1
ELSEIF GETFOCUS(plus&)
sendmessage(ProgBar&,$403,progstep!,0)
volume& = volume& + TarStep!
cas (volume& = target&) or (volume& > target&) : volume& = target&
settext show&,str$(volume&)

ELSEIF GETFOCUS(minus&)
test$ = str$(Tarstep!)
test$ = right$(Instr(§.§,test$),2)
sendmessage(ProgBar&, $403, -ProgStep!, 0)
volume& = volume& - TarStep!
Cas (val(test$) > 0) : volume& = Volume& + 1'Correction chez Werten derrière dem Komma
cas (volume& <= 0) : volume& = 0
settext show&,str$(volume&)

ELSEIF GETFOCUS(fertig&):Ende% = 1
ENDIF
Endwhile
 
Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'...
03.01.2017  
 



Zum Quelltext


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

5.348 Views

Untitledvor 0 min.
Gast.081503.10.2024
Member 862464112.05.2024
H.Brill20.05.2023
p.specht18.11.2021
plus...

Themeninformationen

cet Thema hat 3 participant:

p.specht (1x)
Michael W. (1x)
unbekannt (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie