Fuente/ Codesnippets | | | | | KompilierenMarcaSeparaciónSource 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, aber como fehlt todavía einiges. Ventana ha z.B. sólo 3 Werte...
'Source wurde al 15.07.2007 de el MMJ-Quellcodesammlung (Dietmar Horn) en el Babyklappe en XProfan.Com abgelegt:
'Scrollbalken (z.B. para Lautstärkeregler)
'En windows XP prof. funktioniert el Einstellung Balken sin Kästchen seltsamerweise no
'el Breite muss mindestens 10 ser, sonst se en xp garnichts adecuado.
Def GetSysColor(1) !USER32,GetSysColor
Conjunto("TrueColor",1)
DECLARE ENDE%, PROGBAR&, plus&, minus&, fertig&, show&, volume&, target&, progstep!, TarStep!, handicap!
WINDOWSTYLE 528'en anderem Windowstyle Haga doble clic en 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
Conjunto("Decimals",2)
plus& = Crear("Button",%HWND,"+",48,13,20,20)
ProgBar& = control("msctls_progress32",,$50800005,55,48,10,60,%Hwnd,1,%HInstance)'=vertikal, $50000001=horizontal
minus& = Crear("Button",%HWND,"-",48,124,20,20)
show& = Crear("Edit",%Hwnd,,40,160,40,20)
enablewindow show&,0
fertig& = Crear("Button",%HWND,&Ende,3,190,120,25)
target& = 255'=100% Ziellautstärke
Progstep! = 5'=5% en oder de cada Clic
TarStep! = target& / 100 * Progstep!'Progressbar y Lautstärke angleichen
'Vorgabe, z.B. si uno bisherige Lautstärke de ini liest
volume& = 125'Valor muss natürlich a el Prozentwert passen
IFnot (volume& > target&) or (volume& < 0)'Falls Ini a mano geändert wurde
handicap! = 100 / target& * volume&'Vorgabe en Anzeige umrechnen
más
handicap! = 100
volume& = target&
endif
sendmessage(ProgBar&,$402,handicap!,0)'en Vorgabe conjunto
settext show&,str$(volume&)
WHILENOT ENDE%
WAITINPUT
If %KEY = 2
ENDE% = 1
ELSEIF GETFOCUS(plus&)
sendmessage(ProgBar&,$403,progstep!,0)
volume& = volume& + TarStep!
caso (volume& = target&) or (volume& > target&) : volume& = target&
settext show&,str$(volume&)
ELSEIF GETFOCUS(minus&)
Declarar test$
test$ = str$(Tarstep!)
test$ = right$(Instr(".",test$),2)
sendmessage(ProgBar&, $403, -ProgStep!, 0)
volume& = volume& - TarStep!
Case (val(test$) > 0) : volume& = Volume& + 1'Corrección en Werten hinter el Komma
caso (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. Como beim Ablegen hier todos Anführungszeichen verschwinden, Yo ellos a § konvertiert. Also Rückkonvertierung no vergessen! Gruss
'*** Scrollbalken, z.B. para Lautstärkeregler *** 'El Source wurde al 15.07.2007 de el MMJ-Quellcodesammlung de Dietmar Horn(+) en el 'Programa-Babyklappe en XProfan.Com abgelegt y de M.Wodrich al 30.04.2016 aufgefrischt; '2017-01 de P.Pájaro carpintero para XProfan 11.2a (32bit) bajo Win7-64 home SP1 lauffähig gemacht. Def GetSysColor(1) !§USER32§,§GetSysColor§:Conjunto(§TrueColor§,1) DECLARE ENDE%,PROGBAR&,plus&,minus&,fertig&,show&,volume&,target&,\ progstep!,TarStep!,handicap!,test$,BarBreite& WINDOWSTYLE 528 'en anderem Windowstyle Haga doble clic en abfangen 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:Conjunto(§Decimals§,2)
BarBreite&=18 '25 '10
ProgBar& = control(\ §msctls_progress32§,§§,$50800005,55-Barbreite&/3, 48,Barbreite&,60,%Hwnd,1,%HInstance) ' ^^^^ =vertikal, $50000001 = horizontal minus& = Crear(§Button§,%HWND,§-§,48,124,20,20) plus& = Crear(§Button§,%HWND,§+§,48,13,20,20) show& = Crear(§Editar§,%Hwnd,§§,40,160,40,20) enablewindow show&,0
fertig& = Crear(§Button§,%HWND,§&Ende§,1,194,40,25)
target& = 255 '=100% Ziellautstärke Progstep! = 5 '=5% en oder de cada Clic TarStep! = target& / 100 * Progstep! 'Progressbar y Lautstärke angleichen 'Vorgabe, z.B. si uno bisherige Lautstärke de ini liest: volume& = 125 'Valor muss natürlich a el Prozentwert passen IFnot (volume& > target&) or (volume& < 0) 'Falls Ini von Hand geändert wurde handicap! = 100 / target& * volume& 'Vorgabe in Anzeige umrechnen más handicap! = 100:volume& = target& endif
sendmessage(ProgBar&,$402,handicap!,0) 'en Vorgabe conjunto settext show&,str$(volume&)
WHILENOT ENDE% WAITINPUT If %KEY = 2:ENDE% = 1 ELSEIF GETFOCUS(plus&) sendmessage(ProgBar&,$403,progstep!,0) volume& = volume& + TarStep! caso (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! Case (val(test$) > 0) : volume& = Volume& + 1'Corrección en Werten hinter el Komma caso (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 QuelltextThemeninformationenDieses Thema ha 3 subscriber: |