KeyboardInkey

Anfängerfragen zum Programmieren mit PureBasic.
obar
Beiträge: 111
Registriert: 22.11.2007 19:47

KeyboardInkey

Beitrag von obar »

Hallo zusammen

nach langer Zeit hab ich endlich wieder mal Zeit gefunden, ein Bisschen mit PB rumzuspielen. Wie der Titel schon sagt liegt mein Problem nun bei
KeyboardInkey. Ich weiss, dass es diverse Threads zu diesem Thema gibt. Aber ich habs halt immer noch nicht begriffen.

Ich hab hier mal mein Beispiel:

Code: Alles auswählen

InitMouse()
InitSprite()
InitKeyboard()

;OpenScreen(1024, 768, 16, "") 
OpenWindow(1, 0, 0, 1024, 768, "Test", #PB_Window_Maximize | #PB_Window_BorderLess)
OpenWindowedScreen(WindowID(1), 0, 0, 1024, 768, 1, 0, 0)

Global Dim name.s(4)
Global TastDruck.b
Global vname.s


Repeat
    ClearScreen(0)
    ExamineKeyboard()
    ExamineMouse()
    If Len(vname) < 11
        vname + KeyboardInkey() 
    EndIf
    If KeyboardReleased(#PB_Key_Back)  
        vname = Left(vname, Len(vname)-1) 
    EndIf
    StartDrawing(ScreenOutput()) 
    DrawingMode(1) 
    DrawText(1024/2-160, 350, "Name von Spieler :",RGB(255,255,255)) 
    DrawText(1024/2, 350, vname,RGB(255,255,255)) 
    StopDrawing() 
    If KeyboardPushed(#PB_Key_Return) And vname <> "" And vname <> " "
        TastDruck = 1
    ElseIf TastDruck = 1
        TastDruck = 0
        Game = 10
    EndIf
    Delay(1)
    FlipBuffers()  
Until KeyboardPushed(#PB_Key_Escape)
Das Problem liegt bei der Shift-Taste. Diese wird nicht akzeptiert.
Ich versteh nun nicht wieso es mit 'openscreen' geht und mit 'openwindowedscreen' nicht.


Ich hoffe, es kann mir einer erklären was ich falsch mache.

Danke im voraus
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

:shock: faszinierend...

Problem bestätigt. Warum es so ist, weiß ich allerdings nicht.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7028
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Beitrag von STARGÅTE »

Ein WindowEvent() einbauen wenn es nur ein Windowed ist und es geht :allright:

Sonst ist das Fenster nämlich "Tod"
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

Bild
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
obar
Beiträge: 111
Registriert: 22.11.2007 19:47

Beitrag von obar »

Super. Funktioniert einwandfrei. :D
Sorry für die verspätete Anwort. Aber im Alter braucht man etwas mehr Schlaf.
Benutzeravatar
Fluid Byte
Beiträge: 3110
Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte

Beitrag von Fluid Byte »

:lol:
Windows 10 Pro, 64-Bit / Outtakes | Derek
Andesdaf
Moderator
Beiträge: 2671
Registriert: 15.06.2008 18:22
Wohnort: Dresden

Beitrag von Andesdaf »

Kaeru Gaman hat geschrieben:Bild
Mach nicht die Mauer kaputt :wink:
Win11 x64 | PB 6.20
Antworten