Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 2 odgovora
  • 2.313 pregleda

Najnovija ↓

Generisanje pritiska na taster tastature 08.03.2007. u 12:52 · pre 239 meseci #1
Zdravo,
Da li postoji nacin da iz mog programa u Delphiju generisem pritisak na odredjeni taster u nekom drugom programu koji je trenutno aktivan?
Treba da popunjavam neki web formular sa gomilom podataka, pa sam mislio da bi to moglo na ovaj nacin. (posaljem neka slova i brojeve, pa onda jedan TAB za prelazak na drugo polje itd)

Pozdrav,
Nenad
Re: Generisanje pritiska na taster tastature 08.03.2007. u 15:21 · pre 239 meseci #2
> Da li postoji nacin da iz mog programa u Delphiju generisem pritisak na odredjeni taster u nekom drugom programu koji je trenutno aktivan?

Pritisak na tastaturu možeš da simuliraš sa:

Code:


procedure SimulateKey(const AKey: Word; const AShift: TShiftState);
type
  TShiftKeyInfo = record
    Shift: Byte;
    VKey: Byte;
  end;
  ByteSet = set of 0..7;
const
  ShiftKeys: array[0..2] of TShiftKeyInfo = ((Shift: Ord(ssCtrl); VKey: VK_CONTROL), (Shift: Ord(ssShift); VKey: VK_SHIFT), (Shift: Ord(ssAlt); VKey: VK_MENU));
var
  bShift: ByteSet absolute AShift;
  i: Integer;
begin
  for i := 0 to High(ShiftKeys) do
    if ShiftKeys[i].Shift in bShift then
      keybd_event(ShiftKeys[i].VKey, MapVirtualKey(ShiftKeys[i].VKey, 0), 0, 0);

  keybd_event(AKey, MapVirtualKey(AKey, 0), 0, 0);
  keybd_event(AKey, MapVirtualKey(AKey, 0), KEYEVENTF_KEYUP, 0);

  for i := High(ShiftKeys) downto 0 do
    if ShiftKeys[i].Shift in bShift then
      keybd_event(ShiftKeys[i].VKey, MapVirtualKey(ShiftKeys[i].VKey, 0), KEYEVENTF_KEYUP, 0);
end;



Prvi parametar ti je virtuelni kod tastera, npr. za 'a' i 'A' je 65, AShift označava koji specijalni taster takođe treba simulirati (shift, alt, control).
Potpis
Do not be a help vampire (http://slash7.com/pages/vampires), use the google.

How to ask questions the smart way:
http://www.catb.org/~esr/faqs/smart-questions.html
http://solair.eunet.rs/~fangor...stions/smart-questions.sr.html
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme