Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi ScrollBox mit Hintergrund (https://www.delphipraxis.net/128182-scrollbox-mit-hintergrund.html)

thomas2009 25. Jan 2009 21:19


ScrollBox mit Hintergrund
 
Hallo
ich weiß nicht ob es möglich ist, ein Bild als Hintergrund für ScrollBox zuzuweisen
Nicht unbedingt ein Bitmap. ich möchte damit einen Raster (Gitter) auf ScrollBox erstellen

hat jemand einen Vorschlag ?

himitsu 25. Jan 2009 21:58

Re: ScrollBox mit Hintergrund
 
etwas im OnPaint, der ScrollBox, zeichnen

oder z.B. ein TImage in die ScrollBox einfügen



Ja und soll der Hintergrund eigentlich mitgescrollt werden, oder feststehend sein?

thomas2009 25. Jan 2009 22:31

Re: ScrollBox mit Hintergrund
 
Aber leider die ScrollBox hat kein Canvas
sonst hätte ich folgendes gemacht:
Delphi-Quellcode:
procedure TForm1.FormPaint(Sender: TObject);
var
  i, j, k, n: Integer;
  ACanvas: TCanvas;
  R: TRect;
begin
  ACanvas := Form1.Canvas;
  R := Form1.ClientRect;
  ACanvas.Pen.Style := psSolid;
  ACanvas.Pen.width := 2;
  ACanvas.Pen.Color := clRed;
  //ACanvas.Brush.Color := clLtGray;
  ACanvas.Brush.Color := clBlue;

  for i := 0 to (R.Right - R.Left) div 32 do
    for j := 0 to (R.Bottom - R.Top) div 32 do
    begin
      n := Round(32 * i);
      k := R.Top + Round(32 * j);
      ACanvas.MoveTo(n, k);
      ACanvas.LineTo(n+1, k+1);
    end;
end;

himitsu 25. Jan 2009 22:56

Re: ScrollBox mit Hintergrund
 
Liste der Anhänge anzeigen (Anzahl: 1)
wie gesagt, du kannst immer noch TCanvas/TImage in die ScrollBox packen.

und soll das Muster nun fest stehen, oder mitscrollen?



Anhang:
hab da einfach nur 2 ScrollBoxen, darin ein paar Buttons (damit man des rumscrollen schön sieht) und im Hintergrund ein TCanvas

bei der linken TPaintBox wird (nachm Scrollen) .Left und .Top auf 0 gesetzt (OK, hab geschummelt, da läuft ein Timer, welcher das macht, aber irgendwie kann man bestimmt mitbekommen, ob gescrollt wurde? )

Florian H 25. Jan 2009 23:32

Re: ScrollBox mit Hintergrund
 
@himitsu: Naja, die linke Scrollbox ist ja ziemlich verbuggt: scrolle mal nach ganz rechts - falls du es schaffst, bis ganz nach rechts zu kommen :P
(selbiges gilt für "nach unten" - das Bild wird immer größer)

himitsu 26. Jan 2009 00:11

Re: ScrollBox mit Hintergrund
 
da müßte wohl noch etwas dran rumgebastelt werden, :stupid:
aber wenn man die Größe der PaintBox an die ScrollBox anpaßt, dann sollte sich dieses Problem beheben lassen.

ka klar erreicht man hier irgendwann z.B. das rechte ScrollBoxEnde ... bei mir so nach ca. 2000000 Bildschirmbreiten


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:11 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