#!/boot/home/config/bin/yab // Daten dim alter(32) alter(0)=103 alter(1)=70 alter(2)=66 alter(3)=61 alter(4)=166 alter(5)=66 alter(6)=2166 alter(7)=66 alter(8)=166 alter(9)=66 alter(10)=166 alter(11)=66 alter(12)=0 alter(13)=0 alter(14)=1000 alter(15)=1000 alter(16)=1000 alter(17)=1000 alter(18)=1000 alter(19)=1000 alter(20)=1000 alter(21)=1000 alter(22)=1000 alter(23)=1000 alter(24)=1000 alter(25)=5 alter(26)=1000 alter(27)=1000 alter(28)=1000 alter(29)=1000 alter(30)=1000 alter(31)=5 ueberschrift$="Statistik V0.1" //**** Feststellen wie viele Einträge das Array hat und des höchsten Wertes im Array **** for groesseArray=0 to arraysize(alter(), 1)-1 if(alter(groesseArray)>maximum) maximum = alter(groesseArray) next groesseArray //*************************************************************************************** //**** Werte für die Views ermitteln ***** BreiteView=groesseArray*40 unten=maximum+100 //**** Werte für die Views ermitteln ***** window open 100,100 to 800,500, "MainView", "Statistik" view 0,0 to 685,385, "test1", "MainView" SCROLLBAR "Diagramm", 3, "test1" SCROLLBAR SET "Diagramm", "Vertical Range", 0, unten-370 SCROLLBAR SET "Diagramm", "Vertical Position",unten SCROLLBAR SET "Diagramm", "Horizontal Range", 0, BreiteView+130-685 SCROLLBAR SET "Diagramm", "Horizontal Position", 0 view 0,0 to BreiteView+130,unten+15, "test", "test1" draw set "bgcolor", 220,222,0, "test" draw set "Zurich,Bold,10", "test" view 50,60 to BreiteView+90,unten, "DrawView", "test" draw set "highcolor", 0,0,0, "DrawView" draw set "bgcolor", 255,255,255, "DrawView" Teilungslinien_links() Raster() Balken() Waagerechte_linie() Teilungslinien_unten() Teilungsbeschriftung_unten() Teilungsbeschriftung_links() Gesamtanzahl_auf_den_Balken() Ueberschrift() //**************** Waagerechte_linie ******************* sub Waagerechte_linie() DRAW LINE 10,unten-70 TO BreiteView+40,unten-70, "DrawView" end sub sub Teilungslinien_unten() for i = 0 to BreiteView step 40 draw line i+10,unten-70 to i+10,unten-60, "DrawView" next i draw set "highcolor", 0,0,0, "DrawView" end sub //****************************************************** //**************** Raster ********************* sub Raster() for i1 = 0 to maximum+10 step 10 draw set "highcolor", 225,225,225, "DrawView" draw line 11,unten-80-i1 to BreiteView+40,unten-80-i1, "DrawView" next i1 draw set "highcolor", 0,0,0, "DrawView" end sub //****************************************************** //**************** Waagerechter Text ******************* sub Teilungsbeschriftung_unten() startpunkt=40 for h = 0 to BreiteView-20 step 40 if (h=0) then minusx=0 elseif(h>0 and h<100) minusx=4 elseif(h>99) then minusx=4 endif draw text startpunkt+58+h-minusx, unten+10, str$(j), "test" j=j+10 next h end sub //****************************************************** //**************** Teilungslinien_links **************** sub Teilungslinien_links() DRAW LINE 10,unten-70 TO 10,unten-90-maximum, "DrawView" for l = 0 to maximum+20 step 10 draw set "highcolor", 0,0,0, "DrawView" draw line 0,unten-70-l to 10,unten-70-l, "DrawView" next l draw set "highcolor", 0,0,0, "DrawView" end sub //****************************************************** //**************** Teilungsbeschriftung_links ********** sub Teilungsbeschriftung_links() for m = 0 to maximum+20 step 10 if (m=0) then draw text 20, unten-6-m, " "+str$(m), "test" elseif (m>0 and m<100) then draw text 20, unten-6-m, " "+str$(m), "test" elseif (m>90 and m<1000) then draw text 20, unten-6-m, " "+str$(m), "test" elseif (m>990) then draw text 20, unten-6-m, str$(m), "test" endif next m end sub //****************************************************** //**************** Balken ****************************** sub Balken() ix=40 for g=0 to groesseArray step 1 //draw line ix,300 to ix,300-alter(g), "DrawView" y2=unten-70-alter(g) //print ix draw set "highcolor", 255,0,255, "DrawView" draw set 0, "HighSolidFill" // draw rect ix+10-7.5,unten-70 to ix+10+7.5,y2, "DrawView" draw rect ix+10-7.5, y2 to ix+10+7.5, unten-70, "DrawView" ix=ix+40 next g draw set "highcolor", 0,0,0, "DrawView" end sub //****************************************************** //**************** Balken ****************************** sub Gesamtanzahl_auf_den_Balken() for n = 0 to groesseArray draw set "Zurich,Bold,8", "DrawView" if (alter(n)=0) then else draw text 45+f, unten-70-alter(n)-10, str$(alter(n)), "DrawView" endif f=f+40 next n draw set "Zurich,Bold,10", "test" end sub //****************************************************** //**************** Ueberschrift ************************ sub Ueberschrift() ue_laenge=len(ueberschrift$) draw set "Zurich,Bold,20", "test" draw text ((BreiteView+130)/2), 35, ueberschrift$, "test" end sub //****************************************************** zeitspannen() sub zeitspannen() wert1$="10.03.1926" wert2$="01.01.2027" dim teil_datum$(1) dim teil_datum2$(1) for rr=1 to 3 zn=split(wert1$, teil_datum$(), ".") nz=split(wert2$, teil_datum2$(), ".") next rr print teil_datum$(1) print teil_datum$(2) print teil_datum$(3) wert3=val(teil_datum$(3)) wert4=val(teil_datum2$(3)) wert5=wert4-wert3 print wert5 end sub while(not instr(msg$,"NextButton")) msg$ = message$ if(instr(msg$, "Quit")) then window close "test" end endif sleep 0.1 wend window close "MainView"