| |
|
|
p.specht
| Gridboxversuch: now too alphanumeric downward sortierbar ============================================== The sortierte GridBOX-Style sortiert automatically alphanumeric up. wants to the whole turn round, is a conversion in the not indicated first slot with the Sortierschlüssel vorzunehmen.
Info of Michael Wodrich: the Selectstring should too yet adjusted go, circa Germany and switzerland too with inverser Sorting To mark - and not fälschlicher point others Entries!
thanks, Michael, for Notes! too Search I yet after a Possibility, The actually Spaltenbreiten after a Veränderung with the mouse to ascertain. with the nachstehenden Variante stay The "Sensorfelder" to Änderung the Sortierreihenfolge in the obersten slot namely on the Values, The To Beginn tuned were... can very verwirrend his!
there Sonderzeichen z.B. (ÄäÖöÜüß) of GridBOX-Sortieralgorithmus as (AaOoUuss) treats go, circa telephonedirectory-Sorting To achieve, sufficient not, The characters simply as chr$(255-ord("x")) herumzudrehen. Letztlich stayed only over A...Z on Z...A, a...z on z...a and 0..9 on 9...0 To spiegeln. The Sonderzeichen must before self on AOUaouss gemappt go - a Behelfslösung hold, on Neudeutsch: One "Workaround"...
Window Title upper$("Gridboxtest Nr.3: Spaltensort up/down now too Alphanumerisch")
var data$=\
"01|Singapur|108|20.994 €|745 €|31,5 °C#"+\
"07|Schweiz|102|41.319 €|2.040 €|12,7 °C#"+\
"08|Niederlande|102|27.585 €|1.388 €|14,3 °C#"+\
"13|Kanada|101|22.761 €|1.366 €|7,4 °C#"+\
"14|Belgien|100|25.417 €|1.388 €|14,5 °C#"+\
"15|Deutschland|100|25.548 €|1.150 €|13,5 °C#"+\
"16|Vereinigtes Königreich|100|25.524 €|1.204 €|12,8 °C#"+\
"17|Österreich|100|26.442 €|1.456 €|13,0 °C#"+\
"200|osterinseln|100|26.442 €|1.456 €|13,0 °C#"+\
"20|Schweden|99|30.087 €|1.932 €|9,4 °C#"+\
"22|Dänemark|99|32.333 €|2.583 €|11,9 °C#"+\
"108|Äquatorialguinea|56|2.757 €|119 €|30,2 °C#"+\
"300|äquatorialguiness|56|2.757 €|119 €|30,2 °C"
Windowstyle 24':window 0,0-640,480
CLS
var srt$=""
var t$=\
";1;0;"+\
"Platz;1;40;"+\
"Land;0;180;"+\
"Ø IQ;2;80;"+\
"Ø Einkommen;1;80;"+\
"Bildungsausg/EW;2;110;"+\
"Ø Tageshöchsttemp;2;130"
var sort&=1:var multi&=2
var gbhdl&=@Create("GridBox",%hwnd,t$,sort&+multi&, 0,0,width(%hwnd),height(%hwnd))
declare tmp$[],mx%,my%,down&,spalte&
tmp$[]=explode(data$,"#"):clear data$
spalte&=2
MAKEGRID:
whileloop 0,sizeof(tmp$[])-1
Addstring(gbhdl&,num$(tmp$[&Loop],spalte&,down&)+"|"+tmp$[&Loop])
endwhile
@Select String(gbhdl&,-1,"Schweiz")
@Select String(gbhdl&,-1,"Deutschland")
@Select String(gbhdl&,-1,"Österreich")
repeat
waitmouse
mx%=%mousex:my%=%mousey
' Windowtitle st$(mx%)+","+st$(my%)
if my%<23 : down&=0:case my%<12:down&=1
if mx%<42:spalte&=1
elseif mx%<222:spalte&=2
elseif mx%<300:spalte&=3
elseif mx%<382:spalte&=4
elseif mx%<490:spalte&=5
elseif mx%>=490:spalte&=6
endif
clearlist gbhdl&
goto "MAKEGRID"
endif
until %key=27
END
proc num$ :parameters z$,sp&,down&
var s$=substr$(z$,sp&,"|")
s$=translate $(s$," €","")
s$=translate $(s$," °C","")
s$=translate $(s$,".","")
s$=translate $(s$,",","")
if val(s$)<>0
s$=right$("0000000000"+s$,10)
case down&:s$=st$(2147483647-val(s$))
else
s$=substr$(z$,sp&,"|")
s$=translate $(s$,"Ä","A")
s$=translate $(s$,"Ö","O")
s$=translate $(s$,"Ü","U")
s$=translate $(s$,"ä","a")
s$=translate $(s$,"ö","o")
s$=translate $(s$,"ü","u")
s$=translate $(s$,"ß","ss")
if down&=1
var y&=0:var p$=""
whileloop len(s$):y&=ord(mid$(s$,&loop,1))
if between(y&,65,90):y&=155-y&
elseif between(y&,48,57):y&=105-y&
elseif between(y&,97,122):y&=219-y&
endif
p$=p$+chr $(y&)
endwhile:s$=p$
endif
endif
return s$
endproc
|
|
|
| Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 05/27/21 ▲ |
|
|
|