Hintergrund per Button Änder.

  • VB.NET

    Hintergrund per Button Änder.

    Hallo,

    ich bin neu alser verzeiht mir wen ich die falche Ecke für das Thema erwischt habe. Also meine Frage: Ich will per Button der in Form2 ist, in For1 das Hintergrundbild Ändern. Das wäre eigentlich auch schon alles wenn vieleicht jemand wüsste wie ich das ganze mit einem Dateipfad machen könnte(Das selbe wie oben nur das man den Dateipfad von einem Bild in eine TextBox schreibt und es ändert sich in das Bild)wäre das auch cool.
    schau dir halt deine Elemente genau an...
    in Button_click event schreibste halt das rein was es machen soll:

    VB.NET-Quellcode

    1. DeineZielForm.BackgroundImage = Image.FromFile(DeinPfadAlsString)
    :!: "Leben heißt Veränderung" sagte der Stein zur Blume und flog davon." :!:
    :?: Wenn Sie glauben, permanente Weiterbildung sei teuer, versuchen Sie es mit Inkompetenz. :!: Winston Churchill 1874-1965
    :?: Man kann die Menschen nichts lehren, man kann ihnen nur helfen, es in sich selbst zu finden! :!: Galileo Galilei
    dort: msdn.microsoft.com/de-de/library/system.string.aspx
    und arbeite bitte mit relativen Pfaden.
    Bzw. mit Environment.CurrentDirectory und damit msdn.microsoft.com/de-de/library/system.io.path.aspx konkreter der Funktion "Combine(paramarray string)".
    msdn.microsoft.com/de-de/library/system.environment.aspx
    Strings werden in jeder Programmiersprache mit "double-Quotes", doppel Anführungszeichen, also das:

    Quellcode

    1. "
    erstellt.
    Die Links sind nur zur Vertiefung und Erlernung eines "guten" Programmier-Stils.
    Fragen zur Programmierung? Das Forum!
    Hast du grad Lambda gesagt? User.Any( u => u.Username.Equals(this.Username) ) ? User.Single( u => u.Username.Equals(this.Username)).Execute( e => e.Signature.Edit(SignatureEdit.NonStatic | SignatureEdit.WIP) ) : throw new UserNotFoundException();

    VB.NET-Quellcode

    1. Dim DeinPfadAlsString As String = "C:\Temp\MeinBild.bmp"

    Oder pack das Bild in die Ressourcen, dann geht es so:

    VB.NET-Quellcode

    1. DeineZielForm.BackgroundImage = My.Ressources.NAME_DES_BILDES
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    VB-Fragen über PN / Konversation werden ignoriert!
    Lege Deine Einstellungen in My.Settings ab, allerdings musst Du dort erst entsprechende Member bereitstellen:
    Projekt -> Eigenschaften -> Einstellungen
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    VB-Fragen über PN / Konversation werden ignoriert!

    Meinte Sie das so?

    Also Beispiels weise so:







    und dan in die Form1 Load



    VB.NET-Quellcode

    1. My.Settings.BackgroundImage = True



    oder



    VB.NET-Quellcode

    1. My.Settings.BackgroundImage = BackgroundImage

    Desweiteren gibt es Ein Problem Fehlermeldung Beim BG change
    Fehler 1 Der Wert vom Typ "String" kann nicht in "System.Drawing.Image" konvertiert werden. C:\Users\Marvin\documents\visual studio 2010\Projects\minetalAS\minetalAS\Optionen.vb 54 33 minetalAS

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

    TSchuldigung. Ressourcen, nicht aber Settings.
    Das Bild selbst musst Du den Ressourcen hinzufügen:
    Projekt->Ressourcen->vorhandene Datei hinzufügen, Namen zuweisen
    oder
    Projekt->Ressourcen->neues Bild->BMP oder so, Namen zuweisen
    und dann selbst malen.

    VB.NET-Quellcode

    1. Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    2. Me.BackgroundImage = My.Resources.MeinBild
    3. End Sub
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    VB-Fragen über PN / Konversation werden ignoriert!

    Settings Save

    Soll das dann bei der Settings Save geschichte so ausehen?



    VB.NET-Quellcode

    1. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles JellyfishButton.Click
    2. My.Setting.BackgroundImage = Me.BackgroundImage.MeinBild
    Dieser Text im Eröffnungspost. :thumbsup:

    VB.NET-Quellcode

    1. Dim bmp As New Bitmap(IRGENDWAS)
    2. bmp.SetPixel(x, y, FARBE)
    3. Me.BackgroundImage = bmp
    4. bmp.Save(DEIN_PFAD, System.Drawing.Imaging.ImageFormat.Bmp)
    5. My.Settings.Reload()
    6. My.Settings.BITMAP_PFAD = DEIN_PFAD
    7. My.Settings.Save()
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    VB-Fragen über PN / Konversation werden ignoriert!
    1. Variante

    Du liest es aus deinen Resources raus.

    Button-Click Abfrage:

    VB.NET-Quellcode

    1. MeineForm.BackGroundImage = My.Resources.DeinBild


    2. Variante ( nicht empfehlenswert , aber machbar )

    Du nimmst es aus einer versteckten Picturebox.

    VB.NET-Quellcode

    1. MeineForm.BackGroundImage = DeinePictureBox.image


    Mfg

    PS: Kann sein das der Code nicht simmt , da ich VB.net gerade net offen habe. Das sollte eigentlich stimmen. :!:

    Da er den Dateipfad will sind meine Varianten ehh nutzlos , aber es könnte ihn ja interessieren da es was mit dem Background per Button auf sich hat.

    Aber sonst .. ja oben sind schon die richtigen Antworten.