Autor Beitrag
Ecthelion
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 57



BeitragVerfasst: Fr 11.10.02 15:18 
Hi.

Ist es möglich, mit einem im Hintergrund laufenden Delphi-Programm Screenshots von eienr Windows-Oberfläche zu erstellen? Wenn ja, in welchem Format liegt das Ergebnis vor, und wie kann ich damit arbeiten?
Klabautermann
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Veteran
Beiträge: 6366
Erhaltene Danke: 60

Windows 7, Ubuntu
Delphi 7 Prof.
BeitragVerfasst: Fr 11.10.02 16:05 
Hallo,

ein Beispiel findest du bei den Schweizern.

Gruß
Klabautermann
Ecthelion Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 57



BeitragVerfasst: Fr 11.10.02 17:04 
Danke.

Ich bin Delphi-Neuling, daher noch eine Frage: das Ergebnis ist offenbar eine TBitMap. Wie kann ich dieses auslesen? Ist das nur ein 2dimensionales Array von Farbangaben für die einzelnen Pixel?

Und: mit welchen Funktionen finde ich die Ausmaße des so eingefangenen Bildes heraus?
Klabautermann
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Veteran
Beiträge: 6366
Erhaltene Danke: 60

Windows 7, Ubuntu
Delphi 7 Prof.
BeitragVerfasst: Fr 11.10.02 17:40 
Hallo,

du hast noch nicht viel Erfahrung mit der Delphi Hilfe oder?
Dann wollen wir dir die mal vermitteln ;):

Gebe einfach tBitmap im Delphi Editor ein und drücke F1. Je nach Delphi Version kannst du nun noch zischen der VCL und CLX Version wählen. Du benötigst die VCL Variante.
Jetzt erhällst du eine Beschreibung zu tBitmap. Besonders sind die Grünen Worte oben. Insbesondere Methoden, Eigenschaften und Ereignisse sind interessant. Diese zeigen dir wie du das Bitmap manipulieren kannst.
So findest du unter MEthoden z.B. SaveToFile, welche es dir erlaubt das ganze im BMP Format abzuspeichern.

Da das Ganze Methoden und Ereignisse kann es kein einfaches 2D Array sein. Es ist ein Objekt. Ich denke du wirst das eine oder andere Interessant in der Hilfe finden, wenn du dann noch Fragen hast, dann weißt du ja wo du sie Stellen kannst.

Gruß
Klabautermann
Ecthelion Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 57



BeitragVerfasst: Fr 11.10.02 22:26 
Jetzt hab ich mir die Hilfe zum Thema TBitMap angeguckt, weiß aber immer noch nicht, wie ich mit dem Inhalt des Bildes arbeite. Zwar existiert dort eine ScanLine-Eigenschaft, aber was ich damit anzufangen habe weiss ich auch nicht so recht. Ist vom Typ Pointer, und zeigt dann auf eine ganze Linie von Pixeln im Bitmap.

Wenn ich aber auf die einzelnen Pixel eingehen will, wie gehe ich das an?
Ecthelion Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 57



BeitragVerfasst: Sa 12.10.02 01:10 
Hmm, das sieht nicht schwer aus, und so schön vollständig, danke :)

Aber ich weiss immer noch nicht so recht, wie ich an die einzelnen Pixel rankomme. Bis jetzt sieht es immer so aus, als würde ich nur Bilder im ganzen kopieren können, ohne an den Inhalt ranzukommen, also an die Pixelinformation im Einzelnen.
Popov
Gast
Erhaltene Danke: 1



BeitragVerfasst: Sa 12.10.02 01:58 
In der Bitmap ist das Bild. Du kannst mit dem Bild machen was du willst. Löschen, speichern und vieles mehr. Über Canvas (TBitmap.Canvas. ...) kannst du drauf zeichnen und auch Pixel abfragen.

Außerdem war die Frage war: Screenshots

Wenn du eine neue Frage hast, dann erstell ein neuen Thread. Allerdings kann ich dir jetzt schon sagen, daß es ein sehr langer Weg sein wird. Du scheinst wahllos Fragen zu stellen ohne genau zu wissen was deine entgültige Frage ist. Konkretisiere deine Frage.
Ecthelion Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 57



BeitragVerfasst: Sa 12.10.02 12:08 
Ach, ich liebe herablassende Leute in mittelwertigen Boards :D

Meine konkrete Frage kenne ich durchaus, sie ist aber wahrscheinlich so komplex, dass es schwierig wäre, sie in eines dieser zahlreichen Sub-Foren einzuordnen. Und wenn ich für jede Frage einen neuen Thread aufmache, werd ich angeleiert, dass ich doch bitte nicht müllen sondern alles schön kompakt darstellen soll. Naja, ein anderer Titel hätte es vielleicht gebracht.

Das mit TBitMap.Canvas. ... zum Pixel angucken war doch mal ganz nett, dankeschön :)
Popov
Gast
Erhaltene Danke: 1



BeitragVerfasst: Sa 12.10.02 14:54 
Ob das Board "mittelwertig" ist, daß müssen die User selbst entscheiden. Allerdings glaube ich, daß du das schlecht beurteilen kannst. Ist auch nicht herablassend gemeint. Die Antwort auf deine Frage ist bereits in den ersten beiden Antwort-Beiträgen gegeben worden. Die erste sagte dir wo du ein fertigen Code findes, die zweite wie du die Antwort auf deine zweite Frage selbst finden kannst. Das waren die konkreten Antworten auf "Screenshot" und auf "wie arbeiten mit Bitmaps". Was erwartest du? Erwartest du, daß einer sich denkt, daß du auf den 5 von links und 14 Pixel von oben zugreifen wills und dort die Farbe haben wills? Das wird nicht klappen. Du hast die TBitmap gefunden, durgelesen und nicht verstanden und stellst dann wieder die Frage wie du mit Bitmaps arbeiten kannst. Was für eine Antwort erwartest du?

Also schön die eine große Frage in viele Einzelfragen aufteilen und es wird schon klappen.
Ecthelion Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 57



BeitragVerfasst: Sa 12.10.02 18:19 
Ich erwarte die Antwort "42". :lol:

OK, danke an alle (Klabauter & Popov) für Klärung dieser Frage.