Gå til innhold

Anbefalte innlegg

Hei alle sammen! 8) 8)

 

Jeg begynte å programmere for noen måneder siden, og jeg har lært meg den del. Men jeg har 2 spørsmål som jeg håper dere vil hjelpe meg med:

 

1)Er det noen som har en liste over delphi 6.0 key constrants? altså kode for å for å gi taste-kommandoer til vinduer. F.eks: #13 gir en {Enter}. Og #65 for bokstaven "A".

 

2)Er det mulig å museklikke på et vindu? Automatisk..slik at innstiller programmet til å klikke på et bestemt punkt på et vindu?

 

 

Btw: når kommer oppfølgeren til "Delphi for nybegynnere"??

Lenke til kommentar
Videoannonse
Annonse

1)Er det noen som har en liste over delphi 6.0 key constrants? altså kode for å for å gi taste-kommandoer til vinduer. F.eks: #13 gir en {Enter}. Og #65 for bokstaven "A".

 

Slå opp i Hjelp på "virtual key codes", der finn du ei liste. T.d. er VK_RETURN det samme som #13.

 

2)Er det mulig å museklikke på et vindu? Automatisk..slik at innstiller programmet til å klikke på et bestemt punkt på et vindu?

 

På eit anna vindauge? Om du er ein nybyrjar, så er det kanskje litt vanskelig, men prøv med SendMessage (slå det opp i Win32 SDK/API) og med mouse events, det og i Win32 SDK/API. Det er fullt mogleg, om litt vanskelig.

 

Btw: når kommer oppfølgeren til "Delphi for nybegynnere"??

 

Det spørs litt kva eg får tid til, og kor mange som er interessert i dette. Eg har nok å driva med for tida, men eg kjem nok til å setje meg ned å skrive noko liknande ein eller anna gang i framtida. :)

Lenke til kommentar
  • 2 uker senere...

 

2)Er det mulig å museklikke på et vindu? Automatisk..slik at innstiller programmet til å klikke på et bestemt punkt på et vindu?

 

 

Hvorfor ønsker du å gjøre dett? Kan hende det finnes andre lettere måter enn å klikke med musa for å oppnå det samme.

 

Men forsøk mouse_event( )-funksjonen som finnes i windows.pas.

 

eks:

 


procedure TForm1.Button1Click(Sender: TObject);

var

 deltax, deltay: integer;

begin

 deltax := 65535 div 1600;

 deltay := 65535 div 1200;

 mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_MOVE, 

                      5 * deltax, 5 * deltay, 0, 0);

 mouse_Event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);

 mouse_Event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);

end;

 

mouse_event opererer med 'muse-pixler'. dvs at skjermen deles opp i 65535 punkter hver vei uavhengig av hvilken oppløsning du ellers kjører. Derfor må man ha en liten omregning for å få riktig posisjon. Jeg kjører 1600x1200 men man vet jo ikke hva andre har så der bør man nok spørre windows...

 

Koden flytter musa til punkt (5, 5) på skjermen (øvers venstre hjørne) og venstreklikker.

 

-Vegar

Lenke til kommentar
1)Jeg fant bare liste med :

Virtual Key Code	Corresponding key



VK_LBUTTON	Left mouse button

VK_RBUTTON	Right mouse button

VK_CANCEL	Control+Break

VK_MBUTTON	Middle mouse button

 

 

Fant ikke noe # greie

 

#-gria betyr bare at tallet som kommer er et hexadesimaltall og ikke et vanlig '10-talls-tall'. F.eks. er #13 det samme som 19 i titallssystemet.

 

En komplett ascii-tabell burde gå an å finne ett sted. Eller du kan lage deg et program som skriver en ut:

 


procedure TForm1.Button1Click(Sender: TObject);

var

 I: Integer;

begin

 for I := 0 to 255 do

 begin

   memo1.lines.add('#' + IntToHex(i, 2) + '=' + '''' + char(i) + '''');

 end;

end;

 

Siden esc, tab, crlf osv er litt vansklig å skrive ut vil du få litt 'rot' i lista i føsten, men alle bokstaver, tegn og tall blir bra.

Lenke til kommentar
  • 1 måned senere...

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...