![]() |
Das Desktopbild unter meinem Formular
Trotz dem ich mich schon mal mit so einer ähnlichen Frage ins Fettnäpfchen gesetzt habe und eine einfache Funktion als Lösung bekam, frage ich trotz, vielleicht gibt es auch hier eine einfache Funktion.
Das ganze ist nur eine Idee, kein richtiges Programm, mehr eine Machbarkeitübung. Ich hab es vor Monaten mal gesehen und seit dem fällt es mir immer wider ein. Und zwar will ich de facto ein Screenshot von dem Bereich unter meinem Fenster machen. Ich hab mir das eigentlich einfacher vorgestellt als es dann tatsächlich wurde. Was ich gemacht habe war zuerst alle sichtbaren Fenster zu ermitteln, dann deren Rect Bereiche, dann überprüft ob die sich mit meinem Fenster überschneiden und wenn ja, Screenshot von dem überschneidendem Bereichen gemacht. Dann alle Screenshots passend zusammengefügt und fertig ist das Bild unter meinem Formular. Das klappt auch, aber sehr sehr langsam. Wenn ich mein Fenster bewege, dann ruckelt es stark. Also viel mehr optimieren kann man da kaum. Ein wenig, aber das wird es nicht bringen. Also entweder ist mein Ansatz falsch oder andere nutzen eine Funktion oder machen es ganz anders. |
AW: Das Desktopbild unter meinem Formular
Was heißt hier "andere"?
Was möchtest du denn eigentlich erreichen? Eine Form auf dem Bildschirm z.B. mit einer Textverarbeitung und dann den Bereich darunter abfotografieren? |
AW: Das Desktopbild unter meinem Formular
Der Desktop Window Manager von Vista und Win7 hält ja selber Screenshots von den sichtbaren Fenstern (visible und nicht minimiert), z.B. für dieses komische Win+Tab und die Taskleistenvorschaudinger.
Eventuell kann man diesen irgendwie nach seinen Bildern befragen? |
AW: Das Desktopbild unter meinem Formular
Du könntest vielleicht auf buttonclick die Form transparent machen und dann müsste man mit
![]() |
AW: Das Desktopbild unter meinem Formular
Zitat:
@newmusicslamer Das habe ich schon schon früher getestet. Machbar ist es, auch flüssig, aber das Fenster flackert. @himitsu Ich schätze auch, dass Windows irgendwas da bietet, und wenn man sich überlegt, so verkehrt ist meine Idee auch nicht. Nur aus irgendeinem Grund langsam. |
AW: Das Desktopbild unter meinem Formular
Windows bietet sogenannte Zugangsmöglichkeiten, z.B. über sogenannte Dupplicationstreiber, worüber man eine Kopie des Desktops bekommt. (mein kleiner USB-Beamer nutzt sowas)
Dann gibt es auch Möglichkeiten direkt in den Videopuffer zu schreiben, wie es z.B. bei Videos oft genutzt wird, wo man dann bei einem Screenshot vom Video nichts sieht. Man könnte auch mit mehreren Desktops arbeiten, also einem Zweiten, wo man nur eine Kopie des eigentlichen Desktops anzeigt und dazu dann noch mehr, wie eben diese Lupe. Oder man läßt sich alle Zeichenoperationen mitteilen, so wie es z.B. vom RDP genutzt wird. |
AW: Das Desktopbild unter meinem Formular
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe mal ein winziges Beispiel geschrieben, siehe Anhang. Das erhebt keinen Anspruch die beste Lösung zu sein, aber es funktioniert, vermutlich ab Vista. Unter alten Systemen wie XP funktioniert das nicht.
(Ich wollte damit gleichzeitig Generics für einen anderen Thread demonstrieren, deshalb der Record, eigentlich braucht man den natürlich nicht.) |
AW: Das Desktopbild unter meinem Formular
Ich habe das mal so gelöst, das ich das Fenster unsichtbar mache, dann einen Screenshot anfertige und dann das Fenster wieder sichtbar mache. Ein Dreizeiler und man merkt es kaum.
|
AW: Das Desktopbild unter meinem Formular
Die Lösung aus meinem Beispiel geht ja auch direkt. Da muss man nur noch an den Bildschirmrändern ein wenig prüfen, aber ansonsten funktioniert das doch so auch ohne derlei Tricks.
|
AW: Das Desktopbild unter meinem Formular
Zitat:
@Sebastian Also bei XP funktioniert es auch, allerdings weiß ich nicht ob richtig. Bei mir wird der Bereich neben dem Fenster vergrößert. Um mir den Code anzugucken ist noch zu früh, das Gehirn ist noch nicht angelaufen. Übrigens, ich hab ein wenig gesucht und so ein Teil gefunden: ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:19 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz