| |
|
|
p.specht
| Gridboxversuch: Jetzt auch alphanumerisch abwärts sortierbar ============================================== Der sortierte Gridbox-Style sortiert automáticamente alphanumerisch aufwärts. Will al todo umkehren, es una Umwandlung en el no angezeigten ersten Spalte con el Sortierschlüssel vorzunehmen.
Referencia de Michael Wodrich: Das Selectstring debería auch todavía adaptado voluntad, en Deutschland y Schweiz auch en inverser Sortierung a kennzeichnen - y no fälschlicher Weise otro Einträge!
Gracias, Michael, para el Hinweise! Auch búsqueda Todavía después de uno Möglichkeit, el aktuellen Spaltenbreiten después de uno Veränderung con ratón determinar. En nachstehenden Variante bleiben el "Sensorfelder" a Änderung el Sortierreihenfolge en el obersten Spalte nämlich en el Werten, el a Beginn eingestellt waren... Kann muy verwirrend ser!
Como Sonderzeichen z.B. (ÄäÖöÜüß) vom Gridbox-Sortieralgorithmus como (AaOoUuss) behandelt voluntad, en Telefonbuch-Sortierung a erreichen, genügt no, el Signo simplemente como chr$(255-ord("x")) herumzudrehen. Letztlich blieb sólo encima A...Z en Z...A, a...z en z...a y 0..9 en 9...0 a spiegeln. El Sonderzeichen necesario vorher incluso en AOUaouss gemappt voluntad - una Behelfslösung sólo, en Neudeutsch: Ein "Workaround"...
Título de la ventana upper$("Gridboxtest Nr.3: Spaltensort up/down ahora 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&=@Crear("GridBox",%hwnd,t$,sort&+multi&, 0,0,width(%hwnd),height(%hwnd))
declarar 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
@Seleccione String(gbhdl&,-1,"Schweiz")
@Seleccione String(gbhdl&,-1,"Deutschland")
@Seleccione String(gbhdl&,-1,"Österreich")
repeat
waitmouse
mx%=%mousex:my%=%mousey
' Windowtitle str$(mx%)+","+str$(my%)
if my%<23 : down&=0:caso 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
FIN
proc num$ :parámetros 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)
caso down&:s$=str$(2147483647-val(s$))
más
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$,&bucle,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
volver s$
ENDPROC
|
|
|
| Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 27.05.2021 ▲ |
|
|
|