PictureBox PlugIn

  • VB.NET

Es gibt 13 Antworten in diesem Thema. Der letzte Beitrag () ist von Mangafreak1995.

    PictureBox PlugIn

    Hallo,
    Ich habe folgendes Problem:
    Es gibt zwei Formen
    1. Mainform

    2. PlugInManager



    So mein Problem ist nun, das ich mittels des Plugin Managers eine neu PictureBox hinzufügen möchte.
    Diese PictureBox soll einen Link beinhalten die eine . exe aufruft. (C://programme/testform/plugin/sample.exe)
    Habe schon etliches gegoogelt aber nichts brauchbares gefunden, außer vil. einen Hinweis auf eine dll verwendung.
    Es wäre sehr nett wenn mir jemand mal einen fertiges Sample coden könnte. Dies wäre glaube ich sehr hilfreich, auch für andere Benutzer des Forums.
    Denn ich habe festgestellt das PlugIns in VB2008 bzw. in der fertigen exe immer noch ein problem darstellen.
    Also das ganze geht so:

    VB.NET-Quellcode

    1. Dim sende as string
    2. Private Sub downpic(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) 'Das ist das event das aufgerufen wird wen eine deiner Pictureboxen angeklickt wird
    3. Try
    4. If e.Button = Windows.Forms.MouseButtons.Left Then
    5. sende = CType(sender, PictureBox).Name 'Hier wird der Name der picturebox in den String "sende" geschrieben
    6. End If
    7. Catch ex As Exception
    8. End Try
    9. End Sub
    10. Private Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox1.Click
    11. Dim p As New PictureBox
    12. Dim s As Integer = 0
    13. For Each a As Control In Panel1.Controls 'hab hier nun Panel1 als controls collection
    14. If Not TypeOf a Is Panel Then 'wen es kein Panel ist => s +=1 also am ende haben wir dan die anzahl der einzelnen Pictureboxen die schon erstellt sind
    15. s += 1
    16. End If
    17. Next
    18. p.Name = "picturebox" & s + 1 'Picturebox + anzahl der pictureboxen in den controls +1 damit wir keinen konflikt haben und sozusagen eine neue picturebox erstellen
    19. 'man kann nun auch die Picturebox auf x:0 und y: 0 stellen wen du willst
    20. 'p.Location = New Point(0, 0)
    21. AddHandler p.MouseDown, AddressOf downpic 'das klicken abhorchen
    22. Panel1.Controls.Add(p) 'Picturebox in die controlls collection hier panel1 hinzufügen
    23. End Sub

    Greetz Glossy
    Moderatorin: "Apropo ritzen.." Shin Chan: "hoho sie hat Po ritze gesagt"
    "saying to buy a mac because your anti-virus expired is like saying you're out of condoms so you're just going to go fuck dudes"
    "Wie auch in anderen Threads kann ich leider nichts bieten außer vielleicht spaß beim Skypen aber mehr leider auch nicht." - Sind kinder pornos nicht verboten?
    mhh tut mir leid hilft mir nicht viel weiter aber danke.
    Bräuchte den Code für meinen PlugIn Manager und denn der in die MainForm eingefügt wird.
    Oder am besten ein Sample projekt dann bitte posten als .zip
    Habe hier im Forum auch einen guten Artkel gefunden [VB.NET] Wie erstelle ich ein PlugIn System unter VB.NET (Framework 2) leider habe ich es nicht geschaft diesen in mein Vorhaben umzuwandeln.
    Bitte hilft mir bin seit einigen Tagen am Probieren doch nichts brauchbares bei rum gekommen :(
    Leider bin ich noch ein Blutiger Anfänger finde VB.net aber eine sehr gute Programmier sprache

    Einen Großen Dank geht an Glossy Cherry für deine schnelle hilfe, vil. hast ja noch mehr auf Lager und kannst mir helfen

    Beste Grüße von VB2011 gz. Peter
    Hier noch mal die Problemstellung :
    Plugin Manager soll die einzelnen PictureBoxen verwalten diese kann der user in die Mainform hizufügen bzw. entfernen ( waren glaube ich ganz gut Ideen Glossy)
    Diese PictureBoxen haben eine Verlinkung zu einer .exe ( C://programme/sample/plugin/text.exe

    Danke
    so ich habe mein Problem jetzt neu definiert


    - Listview -> listview items

    - Listview item auswählen neue picturebox wird bei der Mainform hinzugefügt

    - Diese einstellung sollten bei der nächsten benutzung erhalten bleiben.
    so das in der mainform neue pictureboxen hinzugefügt werden können und gelöscht.

    Diese PictureBoxen haben eine Verlinkung zu einer .exe ( C://programme/sample/plugin/text.exe
    Zu den Pictureboxen :

    Du könntest dir ne eigene Klasse schreiben, die von der Picturebox-Klasse erbt und eine Eigenschaft hat, welche den pfad von der Datei enthält ..
    dann erstellst du eine Instanz von der Klasse und weist dieser mit der .parent eigenschaft der Mainform zu .

    gruß, Trudi
    WOW danke das hört sich gut an, bloß wie geht das kannst du ein beispiel posten bitte. Da ich ein Blutiger Anfänger verstehe ich bis jetzt nur Bahnhof. Wäre nett wenn du mir ein Beispiel posten könntest.

    Danke jetzt schon einmal

    gruß Peter
    Du schreibst dir eine Klasse welche von der Klasse Picturbox erbt :

    VB.NET-Quellcode

    1. Public Class PictureBoxEx
    2. Inherits PictureBox 'Von der Klasse PictureBox erben
    3. Private m_path As String 'pfad
    4. Public Property ExecutablePath As String
    5. Get
    6. Return m_path
    7. End Get
    8. Set(value As String)
    9. m_path = value
    10. End Set
    11. End Property
    12. End Class


    Anzeigen tust du die wie folgt :

    VB.NET-Quellcode

    1. Dim pbNew AsNew PictureBoxEx
    2. pbNew.ExecutablePath = "Der Pfad zu .Exe"
    3. pbNew.Parent = Me
    4. pb.Location = New Point(0,0) 'Hier musst du die position angeben

    Code nicht getestet

    Gruß, Trudi

    Bitte keine PN mehr !
    Danke danke bin jetzt schon mal ein stück weiter. Muss nur noch hinbekommen das diese im PlugIn Manager geregelt wird mittels listview.
    Also das
    - Vordifinierte listviews items eine picturebox erstellen mit einem vorher definiertem Pfad.
    - Add und Delete möglichkeit
    - und eine Speicherung der einstellung in eine xml datei
    Damit diese Einstellungen auch nach der zweiten benutzung vorhanden sind.

    mfg Peter

    beispiel wie folgt planet-source-code.com/vb/scri…?txtCodeId=4166&lngWId=10
    planet-source-code.com/Upload_…s/PIC2005113165302531.JPG screenshot

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „vb2011“ ()

    Machs dir doch selber. Weiter oben ist der Link zum Tutorial von mikeb69. Dort definierst du noch in deine Schnittstelle eine Prozedur zum Speichern und lässt das Speichern über das PlugIn laufen. Das gleiche auch fürs Laden der Einstellungen. Am besten übergibst du dem PlugIn einen Dateinamen ums zu vereinfachen.
    Ja danke für deine Antwort, aber deshalb wende ich mich doch an dieses Forum. Da ich keine Ahnung habe wie ich dies bewerkstelligen soll.
    Wäre sehr nett wenn du mir einige Code Beispiele von deiner Idee hier in dieses Forum posten könntest


    Gruß

    Peter
    Ich gehe mal davon aus dass du das Projekt von mikeb69 getestet hast und selbst etwas damit rumgespielt hast (eigene Methode etc). Dort definierst du zB in der Schnittstelle (Interface) deine Methode wie ich sie nannte:

    VB.NET-Quellcode

    1. Interface Mein_Interface_von_Mangafreak1995_welches_ich_nicht_einfach_per_CtrlC_und_CtrlV_bei_mir_nutze
    2. ' deine eigenen Funktionen und Prozeduren
    3. Funktion Save(ByVal file As String) As Boolean
    4. Funktion Load(ByVal file As String) As Boolean
    5. End Interface


    vb2011 schrieb:

    - und eine Speicherung der einstellung in eine xml datei
    Damit diese Einstellungen auch nach der zweiten benutzung vorhanden sind.
    ich muss dir somit nicht erklären wie man am besten mit XML umgeht da du vermtl. einen genauen Plan hast das zu machen. Sonst hättest du dich wohl nicht für XML entschieden ;)