Event #PB_EventType_ReturnKey findet nicht statt !

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
MVXA
Beiträge: 3823
Registriert: 11.09.2004 00:45
Wohnort: Bremen, Deutschland
Kontaktdaten:

Event #PB_EventType_ReturnKey findet nicht statt !

Beitrag von MVXA »

Hallo !
Ich programmiere ein kleines Programm und benötige dazu, dass mein Programm erkennt ob die Entertaste gedrückt wurde. hier mal der Code:

Code: Alles auswählen

    Repeat
        EventID.l = WindowEvent()
        EventType.l = EventType()
        
        If EventType <> -1
            Debug Str(EventType)
        EndIf
        
        If EventID <> 0
            Select EventID
                Case #PB_Event_Gadget
                    GadgetEventID   = EventGadgetID()
                    
                    Select GadgetEventID
                        Case #cmdQuit
                            Break
                        Case #txtCommand
                            Debug Str(GadgetEventID) + "/" + Str(EventType)
                    EndSelect
                Case #PB_Event_CloseWindow
                    Break
            EndSelect
        EndIf
        
        Delay(1)
    ForEver
Dabei wird aber keine Debugmessage ausgegeben, wenn ich die Entertaste drücke. Warum ?
Bild
Benutzeravatar
Franky
Beiträge: 1132
Registriert: 29.08.2004 16:31
Wohnort: Münsterland
Kontaktdaten:

Beitrag von Franky »

Was ist das denn für´n gadget? das geht nur bei stringgadgets


Sonst musst du mit #wm_keydown arbeiten und eventwparam() abfragen
#vk_return ist, wonach du da fragen musst
Falsch zugeordnetes Zitat des Tages: "O'zapft is" - Edward Snowden :)
Benutzeravatar
MVXA
Beiträge: 3823
Registriert: 11.09.2004 00:45
Wohnort: Bremen, Deutschland
Kontaktdaten:

Beitrag von MVXA »

Ja, ich benutze ein StringGadget /:->
Bild
Benutzeravatar
MVXA
Beiträge: 3823
Registriert: 11.09.2004 00:45
Wohnort: Bremen, Deutschland
Kontaktdaten:

Beitrag von MVXA »

was ist den jetz los ?
könnte das mal bitte jemand testen und wenn es funktioniert mir bitte den richtigen code senden ? Ist doch nur ne 5 Minuten arbeit /:->
Bild
Benutzeravatar
Deeem2031
Beiträge: 1232
Registriert: 29.08.2004 00:16
Wohnort: Vorm Computer
Kontaktdaten:

Beitrag von Deeem2031 »

Versuchs doch einfach mit AddKeyboardShortcut()...
Bild
[url=irc://irc.freenode.org/##purebasic.de]irc://irc.freenode.org/##purebasic.de[/url]
Benutzeravatar
MVXA
Beiträge: 3823
Registriert: 11.09.2004 00:45
Wohnort: Bremen, Deutschland
Kontaktdaten:

Beitrag von MVXA »

das muss ich aber dann wieder mit einem Menüpunkt verbinden und in meinem Programm werden keine menüs verwendet /:->. Außerdem ist die frage ob dieses event überhaupt von PB ausgelöst wird. hab gelsen, dass #PB_Event_MoveWindow auch nicht statt findet. was wird das jetzt :freak: ?
Bild
Benutzeravatar
Deeem2031
Beiträge: 1232
Registriert: 29.08.2004 00:16
Wohnort: Vorm Computer
Kontaktdaten:

Beitrag von Deeem2031 »

Um AddKeyboardShortcut() zu benutzen brauchst du kein Menü, das Event wird auch so ausgelöst.
Bild
[url=irc://irc.freenode.org/##purebasic.de]irc://irc.freenode.org/##purebasic.de[/url]
Benutzeravatar
MVXA
Beiträge: 3823
Registriert: 11.09.2004 00:45
Wohnort: Bremen, Deutschland
Kontaktdaten:

Beitrag von MVXA »

Auszug aus der Hilfe:
Syntax

AddKeyboardShortcut(#Window, Shortcut, EventID)
Beschreibung

Fügt einen Tastatur-Shortcut ("Tastenkürzel") zum angegebenen Fenster '#Window' hinzu. Ein Shortcut generiert ein Menü-Ereignis (wie ein Menü-Eintrag), da sie meistens im Zusammenhang mit Menüs benutzt werden. Der 'EventID' ist der Wert, welcher vom EventMenuID() Befehl zurückgegeben wird. Standardmäßig hat ein Fenster bereits die #PB_Shorcut_Tab und #PB_Shortcut_Tab|#PB_Shortcut_Shift Shortcuts, um die Tabulator und Shift-Tabulator Tasten(kombinationen) korrekt zu handhaben. Ein Shortcut kann mittels RemoveKeyboardShortcut() entfernt werden.
:freak: wie ich das sehe kann man das nur an ein Menüeintrag anhängen

edt:
habs getestet, es funzt ^^ :allright: danke, danke, danke ^^. aber das des Event trozdem nicht ausgelöst wird, ist schwachsinn, entweder fixt das fred oder andre löscht es aus der hilfe /:->
Bild
Benutzeravatar
Andre
PureBasic Team
Beiträge: 1765
Registriert: 11.09.2004 16:35
Computerausstattung: MacBook Core2Duo mit MacOS 10.6.8
Lenovo Y50 i7 mit Windows 10
Wohnort: Saxony / Deutscheinsiedel
Kontaktdaten:

Beitrag von Andre »

LittleFurz hat geschrieben:aber das des Event trozdem nicht ausgelöst wird, ist schwachsinn, entweder fixt das fred oder andre löscht es aus der hilfe /:->
Das entscheidet Fred 8)
Habe daher nochmal darauf hingewiesen...
Bye,
...André
(PureBasicTeam::Docs - PureArea.net | Bestellen:: PureBasic | PureVisionXP)
DarkDragon
Beiträge: 6291
Registriert: 29.08.2004 08:37
Computerausstattung: Hoffentlich bald keine mehr
Kontaktdaten:

Beitrag von DarkDragon »

Hat das Stringgadget auch #PB_String_MultiLine als Flag?

Code: Alles auswählen

#WindowWidth  = 200
#WindowHeight = 20
#WindowFlags  = #PB_Window_MinimizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered | #PB_Window_SystemMenu

hWnd = OpenWindow(0, 0, 0, #WindowWidth, #WindowHeight, #WindowFlags, "")

CreateGadgetList(WindowID())
StringGadget(0, 0, 0, 200, 20, "", #PB_String_MultiLine)

Repeat
  Event = WindowEvent()
  Select Event
    Case #PB_Event_Gadget
      If EventGadgetID() = 0 And EventType() = #PB_EventType_ReturnKey
        Debug GetGadgetText(0)
        SetGadgetText(0, "")
      EndIf
  EndSelect
  Delay(5)
Until Event = #PB_Event_CloseWindow
End
Andre hat geschrieben:
LittleFurz hat geschrieben:aber das des Event trozdem nicht ausgelöst wird, ist schwachsinn, entweder fixt das fred oder andre löscht es aus der hilfe /:->
Das entscheidet Fred 8)
Habe daher nochmal darauf hingewiesen...
Funzt doch, oder etwa nicht?
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Antworten