Autor |
Beitrag |
wolle87
Hält's aus hier
Beiträge: 7
|
Verfasst: Fr 12.02.10 16:36
Hi,
wie der Titel schon verrät, suche ich eine Möglichkeit wie ich die Tastenkombination "ALT+DRUCK" simulieren kann.
Gruß
|
|
Xion
      

Beiträge: 1952
Erhaltene Danke: 128
Windows XP
Delphi (2005, SmartInspect), SQL, Lua, Java (Eclipse), C++ (Visual Studio 2010, Qt Creator), Python (Blender), Prolog (SWIProlog), Haskell (ghci)
|
Verfasst: Fr 12.02.10 18:26
Durch die Suche hab ich das gefunden:
www.delphi-forum.de/...reenshot+vom+fenster
Das verlinkt dorthin:
www.swissdelphicente.../showcode.php?id=259
Da steht der Code
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19:
| procedure ScreenShot(Bild: TBitMap); var c: TCanvas; r: TRect; begin c := TCanvas.Create; c.Handle := GetWindowDC(GetDesktopWindow); try r := Rect(0, 0, Screen.Width, Screen.Height); Bild.Width := Screen.Width; Bild.Height := Screen.Height; Bild.Canvas.CopyRect(r, c, r); finally ReleaseDC(0, c.Handle); c.Free; end; end; |
Wenn du da jetzt das Bild/Rect so anpasst, dass es so groß ist wie dein Fenster und Top/Left in das Rect schreibst => fertig 
_________________ a broken heart is like a broken window - it'll never heal
In einem gut regierten Land ist Armut eine Schande, in einem schlecht regierten Reichtum. (Konfuzius)
|
|
wolle87 
Hält's aus hier
Beiträge: 7
|
Verfasst: Fr 12.02.10 18:33
Danke für deine Antwort, allerdings wollte ich jetzt nicht wissen wie ich einen Screenshot machen kann sondern ich will diesen Tastendruck (ALT+Druck) simulieren.
|
|
Astat
      
Beiträge: 75
Erhaltene Danke: 1
Windows 2000
D6, D7, D2007, Lazarus
|
Verfasst: Fr 12.02.10 18:35
wolle87 hat folgendes geschrieben : |
..Möglichkeit wie ich die Tastenkombination "ALT+DRUCK" simulieren kann.
|
Hallo wolle87
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| keybd_event(VK_SNAPSHOT , 0, 0, 0); keybd_event(VK_SNAPSHOT , 0, KEYEVENTF_KEYUP, 0);
keybd_event(VK_MENU , 0, 0, 0); keybd_event(VK_SNAPSHOT , 0, 0, 0); keybd_event(VK_SNAPSHOT , 0, KEYEVENTF_KEYUP, 0); keybd_event(VK_MENU , 0, KEYEVENTF_KEYUP, 0); |
lg. Astat
|
|
wolle87 
Hält's aus hier
Beiträge: 7
|
Verfasst: Fr 12.02.10 21:59
Jo das isses
Besten Dank!
|
|
Bitburki
      
Beiträge: 28
|
Verfasst: Do 03.06.10 15:02
Könnte ich das jetzt auch direkt noch an den Standarddrucker senden?
Ich suche ein Coding, wo ich den Screenshot meiner Anwendung mache (oder einer Form) und dann direkt an den Drucker schicke... Vll. hat da jemand was...
|
|
jaenicke
      
Beiträge: 19314
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Fr 04.06.10 14:52
Bitburki hat folgendes geschrieben : | Ich suche ein Coding, wo ich den Screenshot meiner Anwendung mache (oder einer Form) und dann direkt an den Drucker schicke... |
Und was soll dann der Blödsinn mit dem simulierten Tastendruck? Das packt das in die Zwischenablage (noch dazu unnötig kompliziert), wo du es gar nicht haben willst... Was hat das denn damit zu tun was du machen willst?
Oben steht der Quelltext wie du an das Bild mit dem Screenshot kommst (musst eben den Device Context des betreffenden Fensters angeben) und das kannst du dann ganz normal in Delphi drucken, fertig...
|
|
|