Probleme beim Zentrieren des Image



  • Hallo Zusammen,

    ich habe folgendes Problem (BCB5):

    Ein Form + Image1 in ScrollBox1. Ich lade das Bild und möchte, daß es zentriert dargestellt wird. Wenn ich dann: Image1->Center = true setze, bekomme ich nur noch ein Stück des Bildes zu sehen aber nicht mehr das ganze. Ich habe alles mögliche ausprobiert und bin echt am verzweifeln.
    Die einzige Möglichkeit die ich zur Zeit habe ist mit Anchors [left, top] = true.
    Geht so etwas überhaupt Scrollbox und zentriertes Image?

    Vielen Dank!!!



  • Hallo

    Strech auf true setzen?



  • Mit Stretch = true bekomme ich ja nur eine Einpassung des Bitmap in die Größe des Image. Dann habe ich verzerrte Bilder. Ich wollte ein Bild in Originalgröße, zentriert und mit Schrollbalken.



  • Dann musst Du Align des Bildes auf alClient setzen. Der Parent ist natürlich die ScrollBox.

    Gruss



  • Vielen Dank für die Hilfe. Ich habe das auch schon ausprobiert und es funktioniert dann auch alles so wie ich es wollte (Bild in Originalgröße und zentriert) aber mit der Einschränkung, daß der Scrollbalken weg ist.

    Viele Grüße

    Helmuth



  • Warum funktioniert eigentliche Bild in Originalgröße (ohne Stretch), Zentriert und Scrollbalken nicht? Oder bin ich nur zu dumm?

    Grüße

    Helmuth



  • Kann jemand es mal bei sich ausprobieren ob er es schafft (BCB5) ein zentriertes Image in einer Scrollbox und das alles in einem größenveränderlichen Form. Ich finde keine Möglichkeit. Es funktioniert nicht die Scrollbalken zu bekommen, wenn man Image auf Client setzt.

    Vielen Dank!



  • Rostfrei[] schrieb:

    Dann musst Du Align des Bildes auf alClient setzen. Der Parent ist natürlich die ScrollBox.Gruss

    aber wenn das TImage genau die grösse der ScrollBox hat, hat die ScrollBox ja nichts zum hin und her scrollen. 😉
    passe die grösse deines TImage der grösse deines Bild an. (TImage::Autosize)

    Danach schausst du dir noch mal die Member der TScrollBox an.

    Ich habe es hingekriegt, dass ich über ein Bild scrollen konnte ohne das jemals gemacht zu haben.
    einfach mal den Objekt-Inspector etwas studiert..



  • Hallo BigNeal,

    ich bekomme es wie gesagt hin, daß das Bild links und oben anliegt und ich dann die ScrollBox1-Balken habe.
    Meiner Meinung nach bin ich so ziemlich alle Permutationen durchgegangen. Keine Chance ein Zentriertes Image in Originalgröße mit Scrollbalken zu bekommen. Das einzigste was ich noch durch probieren hinbekommen habe ist ein zentriertes Image, bei dem wenn es kleiner gemacht wird sofort der Scrollbalken erscheint. Allerdings wird dann das Image nicht mehr zentriert dargestellt und der Scrollbalken kommt auch, wenn das Image immer noch voll zu sehen ist.

    Kannst du mir deine Einstellungen sagen?

    Viele Grüße

    helmuth



  • so, ich habe etwas rumgespielt.
    was ich mich frage: warum willst du dein Image zentriert haben?
    ich nehme an, du meinst

    Image1->Center = true;
    

    Ich glaube ich versteh nicht so ganz, was du damit erreichen willst.

    Das einzigste was ich noch durch probieren hinbekommen habe ist ein zentriertes Image, bei dem wenn es kleiner gemacht wird sofort der Scrollbalken erscheint.

    Wieso machst du dein TImage kleiner? wenn du über das TImage Scrollen willst, musst du es in voller grösse haben.

    also evtl liege ich ja komplett falsch.
    aber was ich gemacht habe und vermute, dass du das willst:
    TScrollBox auf TForm platzieren
    ->Align = alClient;

    TImage auf ScrollBox platzieren
    -> Top/Left = 0/0;
    -> AutoSize = true;
    (-> Center = false;)
    -> Bild über Picture mit dem BildEditor laden.

    Compilieren.

    die Position der Aktuellen ansicht kannst du ja über die Position der ScrollBars in der ScrollBox ansteuern.

    Wie gesagt, evtl liege ich komplett falsch 😃

    [Edit] evtl auch noch relevant: benutze BCB6



  • Vielen Dank, daß du versuchst mein Problem zu verstehen. Ich habe gedacht, daß durch das Setzen von Image->Center = true das Image auch nach der Größenänderung des Forms (und Scrollbox) jedes Mal in das neue Zentrum gesetzt wird. Beim BCB5 (den ich nutze) kann ich über die Scrollbalken das Image nur in die rechte untere Ecke schieben aber nicht mittig. Oder ich muss nach einer Softwarelösung suchen... ich dachte jedenfalls es wäre mit ein paar Einstellungen erledigt.
    Die Idee die dahintersteckt ist rein visueller Schönheitswahn. Ich kann auch mit der anderen Lösung leben...

    Trotzdem danke ich allen die mir versucht haben zu helfen.

    Helmuth


Anmelden zum Antworten