---
title: "Emulera Tangentbord !!"
type: "forum-thread"
url: "https://www.webforum.nu/amne/programmering/27872-emulera-tangentbord"
topic: "Programmering"
topic_url: "https://www.webforum.nu/amne/programmering"
author: "Lasp"
published: "2001-01-22T12:26:00.000Z"
updated: "2002-09-05T19:13:45.000Z"
replies: 5
views: 594
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/programmering/27872-emulera-tangentbord"
---

# Emulera Tangentbord !!

## #1 — Lasp, 2001-01-22T12:26Z

Hur kan man ersätta ett antal tangentbordsnedtryckningar med ett antal från en förutbestämd sekvens?
Exempelvis Ctrl+E som startar en session med tab, tab "Ctrl+F4" samt pil ner paus  Invänta värde "Return"!

Permalänk: https://www.webforum.nu/p/27872

## #2 — jt, 2001-01-22T16:01Z

Ska tangenttryckningarna skickas till samma program som "emulerade" dessa?

Vad har du tänkt att uppnå med emuleringen?

\[Redigerat av jt den 22 jan 2001\]

Permalänk: https://www.webforum.nu/p/400581

## #3 — Lasp, 2001-01-22T18:10Z

Ja det är i samma delphi program som det skall ske.
Anledningen är att göra ett förutbestämt antal tab och dataifyllnad som upprepar sig dvs man trycker Ctrl+E och så fylls en massa data i på rätt ställen i formulären.
En annan gång kanske man trycker Ctrl+F och en del editboxar fylls med andra värden enkigt schema.

Permalänk: https://www.webforum.nu/p/400582

## #4 — jt, 2001-01-23T08:43Z

Kanske kan detta ge något tips.

begin
Keybd_event(VkKeyScan('a'),0,0,0);
Keybd_event(VK_TAB,0,0,0);
Keybd_event(VkKeyScan('b'),0,0,0);

//Väntar på Entertryck
while HiByte(GetKeyState(VK_RETURN)) = 0 do
begin
  Keybd_event(VK_TAB,0,0,0);
  Sleep(100);
  Application.ProcessMessages
end;
end;

Jag har brukat använda denna kod för att skifta focus mellan kontroller(typ TAB)
//Skifta focus framåt
Perform(WM_NEXTDLGCTL, 0, 0);
//Skifta focus bakåt
Perform(WM_NextDLGCTL, 1, 0);

Har för mig att jag sett någon funktion som brukar kallas Sendkeys som antagligen gör det du vill på ett hyfsat enkelt sätt. Senkeys finns i VB och någon ska ha skrivit något liknande för delphi.

Obs
Du bör nog kolla hur man ska använda parametrarna i Keybd_event.

\[Redigerat av jt den 23 jan 2001\]

Permalänk: https://www.webforum.nu/p/400583

## #5 — Lasp, 2001-01-23T18:05Z

\>\> jt  Tack för hjälpen
Nyckelordet var "SendKey".
Återkommer när det rullar som jag vill.

Permalänk: https://www.webforum.nu/p/400584

## #6 — Lasp, 2002-09-05T19:13Z

Jovisst var det rätt.
Sitter och går igenom en del gammalt och ser att jag skulle återkomma med svar!
Är det försent med ett och halvt år senare?

Permalänk: https://www.webforum.nu/p/773077

---

Tråden på webben: https://www.webforum.nu/amne/programmering/27872-emulera-tangentbord
