Seite 1 von 1

Tastaturereignisse abfangen = Kaufentscheidung

Verfasst: 06.12.2005 22:02
von Daniel P.
Abend,
momentan "arbeite" bzw. probiere ich mit der Demoversion von PB herum und bin positiv überrascht. Als alter VBler hatte ich mir diese schon einmal vor einem Jahr angeschaut und muss sagen :allright: - da hat sich was getan.
Der Grund für den Umstieg auf ein anderes Basic ist einfach: VB ist zu teuer.
Warum ich es noch nicht kaufen möchte, sieht man an der obigen Gleichung :D
Meine Frage ist oder sind folgende:
  • kann ich mit PB alle Tastatur-Eingaben abfangen. Also auch die speziellen wie Windows, Kontext und Any Key
  • kann ich diese Tasteneingaben "verschlucken" und durch andere ersetzen
Die Suchfunktion hat zwar einige Treffer geliefert, aber nicht wirklich die Fragen beantwortet, an denen ich knabbere. Bei VB wäre Subclassing ein Lösungsansatz. Aber vielleicht geht es ja noch einfacher...

Gruß
Daniel

Verfasst: 06.12.2005 22:28
von Zaphod
mit pb alleine nicht, aber mit pb und winapi. dazu suchst du am besten auf msdn nach "hooks", das geht nur leider nicht mit der demo version und ist generell relativ kniffelig.

Verfasst: 07.12.2005 11:25
von Daniel P.
Ja, bei VB würde es auch nur über Subclassing oder Hooks, also über die WinAPI laufen. Ich habe sowas allerdings noch nie mit VB probiert. Kann ich denn auch die Windows-, Alt-, AltGr-, Kontext-Taste abfangen, verschlucken und stattdessen andere Tasten senden? Denn das ist es eigentlich, was mich interessiert...

Gruß

Verfasst: 07.12.2005 11:48
von Zaphod
habe ich nie probiert, da es aber entsprechende programme gibt, muß das mit der winapi lösbar sein.

Verfasst: 07.12.2005 13:32
von Daniel P.
OK, wenn es nicht funktioniert, schuldest du mir 60€ :lol: :wink:

Verfasst: 07.12.2005 14:20
von bobobo
try
http://www.purearea.net/pb/CodeArchiv/I ... essages.pb

Für die Demo sollte das

Code: Alles auswählen

GetCursorPos_(st.POINT) 
Debug st\x 
Debug st\y 
auskommentiert werden. Weiß eh nicht mehr, warum das das da
überhaupt drin ist.

Verfasst: 07.12.2005 14:52
von mueckerich
Hab auch noch was ausgegraben, vieleicht hilft es Dir weiter.
http://paste.phpfi.com/35030
http://paste.phpfi.com/35027

Verfasst: 07.12.2005 15:16
von Daniel P.
Ich vergaß zu sagen, dass das ganze auch ohne Fokus funktionieren muss. Kann ich ja machen, indem ich dieses andere WindowEvent-Dingens benutze; das wo das Programm nicht auf Windows-Ereignisse reagiert. Hab vergessen wie das heißt. Wichtig ist eben nur, das ich ausnahmslos alle Tasten abfangen kann - und wenn es geht mit Funktionen, die auch "standard" sind...