Markierung im pdf-Dokument

Anfängerfragen zum Programmieren mit PureBasic.
Angelo
Beiträge: 102
Registriert: 20.02.2010 14:47
Wohnort: Berlin

Markierung im pdf-Dokument

Beitrag von Angelo »

Wenn ich in einem pdf-Dokument ein Wort links vom Cursor markieren will, kann ich das in Windows mittels Tastenkomination aus strg-, shift- und "Pfeil-links"-Taste machen. Ich habe versucht, das mit PB hinzukriegen:

Code: Alles auswählen

keybd_event_(#VK_CONTROL, #Null, #Null, #Null)
keybd_event_(#VK_SHIFT, #Null, #Null, #Null)
keybd_event_(#VK_LEFT, #Null, #Null, #Null)
keybd_event_(#VK_CONTROL, #Null, #KEYEVENTF_KEYUP, #Null)
keybd_event_(#VK_SHIFT, #Null, #KEYEVENTF_KEYUP, #Null)
keybd_event_(#VK_LEFT, #Null, #KEYEVENTF_KEYUP, #Null)
Aber leider wandert der Cursor einfach nur ein Wort weiter nach links, ohne dass irgendetwas markiert wurde. Es scheint so zu sein, als ob das simulierte Drücken der shift-Taste keinen Effekt hat. Was mache ich da falsch?
PB 5.50; Win 7
Benutzeravatar
NicknameFJ
Beiträge: 324
Registriert: 03.06.2007 14:36
Wohnort: Von der Sonne aus gesehen der dritte Planet

Re: Markierung im pdf-Dokument

Beitrag von NicknameFJ »

Hallo Angelo,

ich habe noch keine Key Input Simulation gemacht, aber:

Code: Alles auswählen

keybd_event_(#VK_CONTROL, #Null, #Null, #Null)
keybd_event_(#VK_SHIFT, #Null, #Null, #Null)
keybd_event_(#VK_LEFT, #Null, #Null, #Null)
Du schickst kein #KEYEVENTF_KEYDOWN Event

oder ist das nicht nötig ?

Grüße

NicknameFJ
PS: Alle im Text enthaltenen Schreibfehler sind beabsichtigt und dienen der Belustigung aller

Bild
Angelo
Beiträge: 102
Registriert: 20.02.2010 14:47
Wohnort: Berlin

Re: Markierung im pdf-Dokument

Beitrag von Angelo »

Hallo NicknameFJ,
nein, einen "Keydown"-Parameter muss man nicht angeben!
Angelo
PB 5.50; Win 7
- chris -
Beiträge: 195
Registriert: 24.08.2005 19:52
Wohnort: Stadtallendorf

Re: Markierung im pdf-Dokument

Beitrag von - chris - »

Hallo Angelo

Probier das mal:

Code: Alles auswählen


keybd_event_(#VK_CONTROL, MapVirtualKey_(#VK_CONTROL, 0), #KEYEVENTF_EXTENDEDKEY, 0)
keybd_event_(#VK_SHIFT, MapVirtualKey_(#VK_SHIFT, 0), #KEYEVENTF_EXTENDEDKEY, 0)
keybd_event_(#VK_LEFT, MapVirtualKey_(#VK_LEFT, 0), #KEYEVENTF_EXTENDEDKEY, 0)

keybd_event_(#VK_LEFT, MapVirtualKey_(#VK_LEFT, 0), #KEYEVENTF_EXTENDEDKEY | #KEYEVENTF_KEYUP, 0)
keybd_event_(#VK_SHIFT, MapVirtualKey_(#VK_SHIFT, 0), #KEYEVENTF_EXTENDEDKEY | #KEYEVENTF_KEYUP, 0)
keybd_event_(#VK_CONTROL, MapVirtualKey_(#VK_CONTROL, 0), #KEYEVENTF_EXTENDEDKEY | #KEYEVENTF_KEYUP, 0)

Bei mir funktioniert das mit Text und PDF Dateien.
PB v5.72 x86/x64
Windows 10 Pro 64bit
Angelo
Beiträge: 102
Registriert: 20.02.2010 14:47
Wohnort: Berlin

Re: Markierung im pdf-Dokument

Beitrag von Angelo »

Hi, chris, sorry, dass ich mich erst jetzt melde. Habe Deinen Code inzwischen ausprobiert. Wunderbar! Es klappt einwandfrei. So konnte ich auch noch eine neue Api-Funktion (MapVirtualKey) kennenlernen. Vielen Dank und ein schönes Wochenende! - Angelo
PB 5.50; Win 7
Antworten