Source/ Codesnippets | | | | | KompilierenMarqueSéparationSource 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
|
| | | | |
| | 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 QuelltextOptions du sujet | 5.370 Views |
Themeninformationencet Thema hat 3 participant: |