Eingabefeld Untersuchung
Übersicht

![]() |
KabelbinderSieger des WM-Contest 2006Betreff: Eingabefeld Untersuchung |
![]() Antworten mit Zitat ![]() |
---|---|---|
Bei Konsolen oder beim DVD-Player kommt man manchmal in die Situation, einen Filmtitel oder Namen auf einem Tastenfeld eingeben zu müssen, über das man einen Curser mit Pfeiltasten oder einem Joystick steuern muss.
Unser DVD Player hat das Feature, dass er immer, wenn man ein Zeichen eingegeben hat zur Zelle für das Leerzeichen zurückspringt. Mir kam dieses Feature am Anfang nervig vor und ich glaube nicht, dass ich damit Zeit (oder was auch immer) beim Eingeben spare. Jetzt hab ich mal so ein Tastenfeld simuliert und tatsächlich: Mit dem Feature braucht man weniger Anschläge (Ich glaube, es liegt daran, dass das Leerzeichen zentral liegt). Sogar bei Titeln, mit vielen Doppelbuchstaben ist das System schneller, z.B. Bootterramm ![]() Probiert es aus. wenn ihr die Konstante "feature" auf 1 setzt, springt er zurück (schneller) wenn ihr sie auf 0 setzt springt er nicht zurück (langsamer). Je höher time ist, desto besser kann man's mitverfolgen und desto länger dauert's ![]() An hits könnt ihr nachher die Anzahl der Tastendrücke am Controler, der Fernbedienung etc. ablesen. Code: [AUSKLAPPEN] Graphics 640,480,16,2
SetBuffer BackBuffer() Const max = 9 Const time = 30 Const feature = 0 Dim exa$(max) For i = 1 To max Read exa(i) Next Data "Independence Day" Data "Rush Hour II" Data "Lion King" Data "Das grosse Krabbeln" Data "Bela B Tag mit Schutzumschlag" Data "Malcom Mittendrin" Data "Southpark der Film" Data "Stromberg Badminton" Data "American Dad Saudi Arabien" Global num,lnr,hits,cx,cy,titel$,sel Dim cell$(2,8) Data "abcdefghijklm nopqrstuvwxyz" Read abc$ For j = 0 To 8 For i = 0 To 2 cell(i,j) = Upper(Mid(abc,j*3+i+1,1)) Next Next Function entry() If num<=max Then For j = 0 To 8 For i = 0 To 2 If Upper(Mid(exa(num),lnr,1)) = cell(i,j) Then If cx<>i Then cx = cx + Sgn(i-cx) hits = hits + 1 ;(Steuern) ElseIf cy<>j Then cy = cy + Sgn(j-cy) hits = hits + 1 ;(Steuern) ElseIf (i = cx) And (j = cy) Then titel = titel + cell(i,j) hits = hits + 1 ;(Enter drücken) If lnr = Len(exa(num)) Then titel = titel + "-" lnr = 1 num = num + 1 Else lnr = lnr + 1 EndIf ;======================================== If feature = 1 Then sel = 13 cx = sel Mod 3 cy = sel / 3 EndIf ;======================================== EndIf sel = cy*3+cx EndIf Next Next EndIf End Function titel = "" sel = 13 cx = sel Mod 3 cy = sel / 3 num = 1 lnr = 1 hits = 0 Repeat entry() ;draw Color 255,0,0 Rect 90+(sel Mod 3)*20,40+(sel/3)*20,20,20 Color 255,255,255 For j = 0 To 8 For i = 0 To 2 Rect 90+i*20,40+j*20,20,20,0 Text 100+i*20,50+j*20,cell(i,j),1,1 Next Next Text 0,0,sel Text 0,20,"lnr: "+Str(lnr) Text 0,30,"num: "+Str(num) Text 0,40,"hits: "+Str(hits) s = 0 r = 0 For i = 1 To Len(titel) If Mid(titel,i,1)="-" Then r = r + 1 s = 0 Else s = s + 1 Text 50+s*10,300+r*10,Mid(titel,i,1) EndIf Next If feature = 1 Then Text 300,50,"Mit Rückspringen" Else Text 300,10,"Ohne Rückspringen" Flip Delay time Cls Until KeyHit(1) End Also, solltet ihr mal soein Feld programmieren, denkt mal drüber nach, das feature auch zu benutzen. |
||
<Wing Avenger Download> ◊◊◊ <Macrophage Download> |
![]() |
mabox |
![]() Antworten mit Zitat ![]() |
---|---|---|
Leider geht kein ä,ö und ü.
Sonst ist es echt gut! |
||
Fujitsu-Siemens Laptop, 2Ghz Intel Core2Duo Prozessor, 2GB Ram, 120GB Festplatte, ATI Mobility Radeon X1400, Windows Vista Ultimate
www.mausoft.de.tl Dönerfresser Homepage |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group