Images in Panels darstellen

  • VB.NET

    Images in Panels darstellen

    Hallo ^^

    Ich habe in meinem Programm ein Panel, dass in mehreren Paneln die Seiten eines bestimmten Dokuments untereinander anzeigt. Anfangs hat das auch noch funktioniert. Im Moment zeigt er aber in allen Paneln nur die letzte Seite. Welche Seite angezeigt werden soll entscheidet eigentlich die Methode: "selectActiveFrame".



    VB.NET-Quellcode

    1. Public Sub bilderSammeln(sPfad As String)
    2. If Mid(sPfad, sPfad.Length - 3) <> ".pdf" Then
    3. seitenPanel.Controls.Clear()
    4. firstPanel = True
    5. Dim img As Image = Image.FromFile(sPfad)
    6. iSeitenAnzahl = img.GetFrameCount(Imaging.FrameDimension.Page)
    7. iAktuelleSeite = 1
    8. For i As Integer = 0 To iSeitenAnzahl - 1
    9. Dim pnl As New Panel()
    10. If firstPanel Then
    11. pnl.BackColor = System.Drawing.Color.PeachPuff
    12. pnl.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
    13. pnl.Location = New System.Drawing.Point(15, 10)
    14. pnl.Size = New System.Drawing.Size(224, 200)
    15. firstPanel = False
    16. Else
    17. pnl.BackColor = Color.PeachPuff
    18. pnl.BorderStyle = BorderStyle.FixedSingle
    19. pnl.Location = New System.Drawing.Point(DirectCast(PanelContainer(PanelContainer.Count - 1), Panel).Left, DirectCast(PanelContainer(PanelContainer.Count - 1), Panel).Bottom + 5)
    20. pnl.Size = New System.Drawing.Size(224, 200)
    21. End If
    22. pnl.Name = i.ToString
    23. AddHandler pnl.Click, AddressOf panelKlick
    24. pnl.Visible = True
    25. pnl.TabIndex = PanelContainer.Count
    26. pnl.BackgroundImage = img
    27. img.SelectActiveFrame(FrameDimension.Page, i)
    28. pnl.BackgroundImageLayout = ImageLayout.Zoom
    29. seitenPanel.Controls.Add(pnl)
    30. PanelContainer.Add(pnl)
    31. Next
    32. End If


    ~blaze~: Thema verschoben
    We are all suckerz for something ...

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „~blaze~“ ()