none
Screenshot funktioniert nicht !! RRS feed

  • Frage

  • Unter der Adresse "msdn.microsoft.com/de-de/library/bb
    979242.aspx" kommt folgendes Programm:
      public partial class Form1 : Form
      {
        public Form1()
        {
          Control Ctrl = new Control();
          InitializeComponent();
          Screenshot(Ctrl);
        }
        public Bitmap Screenshot(Control Ctrl)
        // Erstellt einen Screenshot des übergebenen Controls / der übergebenen Form.
        // Erfordert Microsoft .NET >= 2.0 (Control.DrawToBitmap)
        // Der Aufrufer ist für eine Entsorgung der returnierten Bitmap zuständig.
        {
          int w = Ctrl.Width;   // Breite des Controls / der Form
          int h = Ctrl.Height;  // Höhe des Controls / der Form
          // Bitmap für das Abbild des Controls / der Form bereitstellen
          Bitmap bmp = new Bitmap(w, h);
          // Screenshot vornehmen und zurückgeben
          Ctrl.DrawToBitmap(bmp, Rectangle.FromLTRB(0, 0, w, h));
          return bmp;
        }
      }
    Dieses Programm funktioniert so nicht: warum !!
    Dienstag, 3. Mai 2011 14:24

Antworten

  • Hallo,
    "funktioniert nicht" ist eine etwas dürftige Beschreibung. Die von Dir verwendete Screenshot Methode gibt ein Bitmap Objekt zurück, mit dem Abbild des angegeben Steuerelements. Du wertest diese Rückgabe nicht weiter aus, also kann dieser Screenshot nirgendwo in Erscheinung treten. Ferner ist Control nicht gerade ein Steuerelement, bei dem es viel zu sehen gäbe.  Stattdessen kannst Du dieses Bitmap jetzt in irgendeiner Form speichern oder bspw. in einer PictureBox ausgeben:
    pictureBox1.Image = Screenshot(this);
    

    Thorsten Dörfler
    Microsoft MVP Visual Basic
    vb-faq.de
    Dienstag, 3. Mai 2011 14:43
    Beantworter