![]() |
Wie viele Zeichen hat eine Tastataur? :)
hi leutz!
ich wollt nur mal fragen: ich hab ja vor, ein spiel zu prggen, das mit Tatsatur gesteuert wird, also ein Array wird angelegt (of boolean), um zu prüfen, ob ne taste gedrückt ist/wurde wie viele muss ich da beachten, bzw., wie soll ich den array aufbauen? Naja, jetzt dürft ihr schreiben ;) |
Re: Wie viele Zeichen hat eine Tastataur? :)
Also, je nach Tastatur-Layout und Sprach-Einstellung solltest du mal sicherheitshalber 65536 Werte behalten können (es kann ja rein Theoretisch der gesamte Unicodebreich vorkommen UCS2 = 2 Byte = 65536 Werte) :roll:
Ansonsten zähl doch einfach mal nach :zwinker: Also besser gesagt, lass das mit dem Array[0..65535] of Boolean... Außerdem können eh nicht zuviele Tasten gleichzeitig gedrückt werden (ab 3 - 5 asten wird es schon eng) Also, wenn schon ein Array, dann doch lieber Array of WideChar oder Array of Word wenn 'ne Taste gedrückt wird, dann diese an das Array anhängen und beim Loslassen wieder rauslöschen... |
Re: Wie viele Zeichen hat eine Tastataur? :)
ich würde als Nummerieruing ASCII-Zahlen nehmen.
![]() Mit Ord(string) bekommst du die Ascii-zahl und mit chr(int) das zugehörige Zeichen. |
Re: Wie viele Zeichen hat eine Tastataur? :)
mmh... kann mir da jemand mal ein beispiel geben?
wie kann ich denn auslesen, ob der buchstabe 'x' bei einem Char-Array drinnen ist? |
Re: Wie viele Zeichen hat eine Tastataur? :)
@yankee:
Stell mal deine Tastatur auf Japanisch, Koreanisch, Russisch, oder was auch immer, dann kommst du mit deinem ASCII (0..255) nicht mehr sehr weit > ![]() Es gibt zwar auch ScanCodes, aber die sind ja auch 2 Byte groß > die einhundertundeinpaarzerqutschte Testen, dann gibt es jede Taste nochmal in verschiedenen Strg/Alt/Shift-Kombinationen und NumLock on/off macht auch nochmal was dazu ... [add]
Delphi-Quellcode:
Var Tasten: Array of WideChar;
Function TasteDrin(Taste: WideChar): Boolean; Var i: Integer; Begin Result := False; For i := 0 to High(Tasten) do If Taste = Tasten[i] Then Begin Result := True; Break; End; End; Procedure TasteMerken(Taste: WideChar); Begin If not TasteDrin(Taste) Then Begin SetLength(Tasten, Length(Tasten) + 1); Tasten[High(Tasten)] := Taste; End; End; Procedure TasteVergessen(Taste: WideChar); Var i, i2: Integer; Begin For i := 0 to High(Tasten) do If Taste = Tasten[i] Then Begin For i2 := i to High(Tasten) - 1 do Tasten[i] := Tasten[i + 1]; SetLength(Tasten, Length(Tasten) - 1); Break; End; End; |
Re: Wie viele Zeichen hat eine Tastataur? :)
Hi,
um rauszufinden, ob ein x in nem Char-Array ist, gehe das Array durch, bis zu auf ein x stößt oder das Ende des Arrays erreichst :mrgreen: Gruß Stephan :dance: |
Re: Wie viele Zeichen hat eine Tastataur? :)
jetzt brauch ich ja nur mehr wissen, wie ich den array am besten durchgeh :)
ich schätze mal, dass ich einfach die elemente zähle und dann per for-schleife durchgeh, wa? :stupid: |
Re: Wie viele Zeichen hat eine Tastataur? :)
Zitat:
MfG Binärbaum |
Re: Wie viele Zeichen hat eine Tastataur? :)
oh, mist, hab ich übersehen :D
sorry, himitsu ;) gut, ich werd das mal ausprobieren, dann... yo, das thema wär erledigt ;) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:06 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz