TPaintBox wird in TGroupBox nicht angezeigt?



  • Ich habe eine TGroupBox und darin eine TPaintBox. Wenn ich jetzt in die PaintBox was reinzeichne wird es aber nicht angezeigt. Woran liegt das? Kann man das gar nicht machen?

    Dann habe ich probiert, eine PaintBox zu erstellen, deren Position innerhalb der GroupBox liegt, die aber hierarchisch nicht innerhalb der GroupBox ist. Hat aber nichts geholfen.

    Hat vielleicht jemand einen Tip?



  • Wie hast Du denn in die PaintBox gepinselt ? Ich hatte hier keine Probleme, auch wenn die PaintBox in ner GroupBox liegt.

    PaintBox1->Canvas->Pen->Color=clBlack;
    PaintBox1->Canvas->MoveTo(0, 0);
    PaintBox1->Canvas->LineTo(50, 50);
    


  • Ich habe meine Frage leider etwas falsch formuliert. Nachdem was du geschrieben hast, habe ich das so probiert und das funktioniert auch. Mein Problem ist allerdings, dass ich innerhalb einer Clipping-Region zeichnen will:

    bitmapSpieler1 = new Graphics::TBitmap;
    bitmapSpieler1->LoadFromFile("e:\\projekte\\defaultStein1.bmp");
    HRGN hRgn = CreateEllipticRgn(520, 192, 520+Spielstein_Groesse, 192+Spielstein_Groesse);
    SelectClipRgn(PaintBox2->Canvas->Handle, hRgn);
    PaintBox2->Canvas->Draw(0, 0, bitmapSpieler1);
    

    Wenn ich es so mache, dann wird nichts dargestellt.
    Kommentiere ich die 3. und 4. Zeile aus, so wird das Bitmap in der PaintBox gezeichnet, aber ich möchte ja, eben die Clipping-Region benutzen, so dass nur ein runder Aussschnitt des Bitmaps gezeichnet wird.

    Außerhalb einer GroupBox funktioniert das auch.



  • Hmm, kann jetzt nur spekulieren da ich momentan nix ausprobieren kann. HDC in SelectClipRgn ist ein Handle auf einen Device Context. Mußt Du Dir vielleicht mit GetDC(PaintBox2->Canvas->Handle); zuesrt einen solchen besorgen und dann mit diesem "handlen" ?


Anmelden zum Antworten