tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
5
ZUGRIFFE
1064
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    dsfad dsfad ist offline Mitglied Bronze
    Registriert seit
    Jul 2004
    Beiträge
    37
    ich habe ein Panel auf meinem Form (Wahnsin ich weiß)
    in diesem Panel sind viele andere Controls (das war die Vorgeschichte)

    nun zum Problem:
    Ich möchte das Panel mit einer zoom-Funktion ausstatten (das schaffe ich auch) aber man soll den gleichen Abschnitt sehen (nur vergrößert halt)...
    aber bei mir springt er immer wieder auf die 0:0 Kordinaten...

    so sieht bisher mein zoomen aus:
    Code :
    1
    2
    3
    
    panel1.Scale(Zoomfaktor);
    panel1.Size = new Size(400,400);
    panel1.Location = new System.Drawing.Point(40, 128);
     

  2. #2
    dsfad dsfad ist offline Mitglied Bronze
    Registriert seit
    Jul 2004
    Beiträge
    37
    kann mir da keiner helfen?!
     

  3. #3
    LieberNet LieberNet ist offline Mitglied Bronze
    Registriert seit
    Feb 2004
    Ort
    Wels
    Beiträge
    38
    Hi!
    Soweit ich weiß ist die Scale Methode nur dazu gedacht ein Resize einer Form zu behandeln, sodass die Controls auf die aktuelle Formgröße resized werden. Den View des Controls kannst Du so nicht scrollen.
    Was aber gehen würde ist, das Du beim Resize Event des Panels, Deine Controls neu plazierst und mittels Scrollbars den Ausschnitt des Panels definierst, der dargestellt werden soll. Ist aber ein ziemlicher Aufwand.
    Was anderes habe ich leider auch nicht (gefunden)
    Ciao
    LieberNet
     

  4. #4
    dsfad dsfad ist offline Mitglied Bronze
    Registriert seit
    Jul 2004
    Beiträge
    37
    danke..
    also das mit dem Zoomen mit scale funktioniert schon!
    weil alles wird um einen bestimmten Faktor vergrößert und die Positionen bleiben gleich!
    mit autoscroll werden auch die Scrollbalken angezeigt!

    Jedoch sieht man immer zuerst den Ausschnitt mit den 0:0 Koordinaten!

    Hast du ein Beispiel wie man die Scrollbalken Position festlegen kann?!
    und wird dabei auch der Ausschnitt verändert oder wirklich nur die Scrollbalken?
     

  5. #5
    LieberNet LieberNet ist offline Mitglied Bronze
    Registriert seit
    Feb 2004
    Ort
    Wels
    Beiträge
    38
    Hi!
    Auf die schnelle kannst Du mal probieren, ob
    Code :
    1
    
                    panel1.ScrollControlIntoView(button1);
    Dein gewünschtes Verhalten bringt.
    Ansonsten gibts beim Panel noch properties wie AutoScrollPosition. Ganz dahinter bin ich auch noch nicht gekommen wie das funktioniert. Aber vielleicht bringt Dich dieses Property etwas weiter.
    Habe mal testhalber einen Button (button1) im panel ganz rechts unten plaziert. Wenn Du folgenden Code verwendest scrolled Dein Panel im nach ganz rechts unten beim Zoomen.
    Code :
    1
    2
    3
    4
    
                    Point p = panel1.AutoScrollPosition;
                    p.X = button1.Location.X *2;
                    p.Y = button1.Location.Y * 2;
                    panel1.AutoScrollPosition = p;

    Ich hoffe das hilft Dir weiter!
    Ciao
    LieberNet
     

  6. #6
    dsfad dsfad ist offline Mitglied Bronze
    Registriert seit
    Jul 2004
    Beiträge
    37
    Super!
    das SrollIntoView **** zwar nicht, aber dafür das mit der Autosrollposition!

    Jedoch nur einmal! Also wenn ich mehrmals hintereinander zoomen möchte kommt wieder der alte Fehler (keine Fehlermeldung, sondern dass er wieder nicht richtig positioniert)!

    Hat da jemand ne Idee?
    Meine wäre: Die aktuelle Position zu speichern und dann später wieder mit der gewünschten zu addieren! Aber das klappt auch nicht
    Dazu hätte ich noch eine weitere Frage: worauf bezieht sich die Autosrollposition? Auf die ursprüngliche oder die aktuelle?!
     

Ähnliche Themen

  1. Image From Panel to Panel
    Von Aprikose im Forum .NET Windows Forms
    Antworten: 1
    Letzter Beitrag: 25.09.09, 13:54
  2. Antworten: 0
    Letzter Beitrag: 12.04.08, 15:43
  3. Panel in JTabbedPane, vom Panel aufs frame zugreifen.
    Von che nino im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 2
    Letzter Beitrag: 08.09.07, 21:00
  4. AWT: Panel durch anderes Panel ersetzen. Neuzeichnen-Problem
    Von Semmerl im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 2
    Letzter Beitrag: 22.05.05, 11:22
  5. Unterschied: 'setContentPane(panel)' und getContentPane().add(panel);
    Von the_skywalker im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 1
    Letzter Beitrag: 25.01.05, 12:23