Tastaturereignisse abfangen = Kaufentscheidung

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Daniel P.
Beiträge: 333
Registriert: 06.12.2005 21:49
Kontaktdaten:

Tastaturereignisse abfangen = Kaufentscheidung

Beitrag 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
Benutzeravatar
Zaphod
Beiträge: 2875
Registriert: 29.08.2004 00:40

Beitrag 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.
Benutzeravatar
Daniel P.
Beiträge: 333
Registriert: 06.12.2005 21:49
Kontaktdaten:

Beitrag 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ß
Benutzeravatar
Zaphod
Beiträge: 2875
Registriert: 29.08.2004 00:40

Beitrag von Zaphod »

habe ich nie probiert, da es aber entsprechende programme gibt, muß das mit der winapi lösbar sein.
Benutzeravatar
Daniel P.
Beiträge: 333
Registriert: 06.12.2005 21:49
Kontaktdaten:

Beitrag von Daniel P. »

OK, wenn es nicht funktioniert, schuldest du mir 60€ :lol: :wink:
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3873
Registriert: 13.09.2004 17:48
Kontaktdaten:

Beitrag 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.
‮pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Benutzeravatar
mueckerich
Beiträge: 220
Registriert: 13.09.2004 11:33
Wohnort: Am schönsten Flecken der Erde, zwischen PC und Motorrad

Beitrag von mueckerich »

Hab auch noch was ausgegraben, vieleicht hilft es Dir weiter.
http://paste.phpfi.com/35030
http://paste.phpfi.com/35027
"Wenn Sie glauben, mich verstanden zu haben, dann habe ich mich falsch ausgedrückt" ( Alan Greenspan)
Benutzeravatar
Daniel P.
Beiträge: 333
Registriert: 06.12.2005 21:49
Kontaktdaten:

Beitrag 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...
Antworten