GUI mit Bild (Bild in der .exe)

  • Hallo erstmal :)


    Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>

    [/autoit] [autoit][/autoit] [autoit]

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Form1", 625, 445, 193, 125)
    $Button1 = GUICtrlCreateButton("", 96, 40, 75, 25, $BS_BITMAP)
    GUICtrlSetImage (-1, "Aufzeichnen.bmp")

    [/autoit] [autoit][/autoit] [autoit]

    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

    [/autoit] [autoit][/autoit] [autoit]

    EndSwitch
    WEnd

    [/autoit]


    Tut erstmal nichts zur Sache wie es aussieht..
    Zu meinem Problem..
    Ihr seht das Bild nicht. :rolleyes:
    Ich möchte wenn ich meine .au3 compiliere mein Bild nicht mitschicken müssen, sondern es direkt ins Programm einbinden. Gibt es da eine Möglichkeit?

    Denn ich möchte nicht zu meinem kleinen bescheidenen Programm, das ein paar KB groß ist, nicht noch 1 MB Bilder mitschicken ^^

    Ich hoffe ich wurde soweit verstanden :)

    Gruß

    4 Mal editiert, zuletzt von samy123 (26. März 2009 um 14:27)

    • Offizieller Beitrag

    Schau dir in der Hilfe mal FileInstall an.

  • Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

    [/autoit] [autoit][/autoit] [autoit]

    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm1.bmp",@TempDir&"\sm1.bmp")
    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm2.bmp",@TempDir&"\sm2.bmp")
    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm3.bmp",@TempDir&"\sm3.bmp")
    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm4.bmp",@TempDir&"\sm4.bmp")
    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm5.bmp",@TempDir&"\sm5.bmp")
    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm6.bmp",@TempDir&"\sm6.bmp")
    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm7.bmp",@TempDir&"\sm7.bmp")
    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm8.bmp",@TempDir&"\sm8.bmp")
    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm9.bmp",@TempDir&"\sm9.bmp")
    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm10.bmp",@TempDir&"\sm10.bmp")

    [/autoit] [autoit][/autoit] [autoit]

    #Region ### START Koda GUI section ### Form=
    $Form1_1 = GUICreate("Mentorsmileys", 109, 228, 194, 126)
    $Group1 = GUICtrlCreateGroup("Mentorsmileys", 8, 16, 81, 209)
    $Button1 = GUICtrlCreateButton("", 16, 32, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm1.bmp")
    $Button2 = GUICtrlCreateButton("", 56, 32, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm2.bmp")
    $Button3 = GUICtrlCreateButton("", 16, 64, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm3.bmp")
    $Button4 = GUICtrlCreateButton("", 56, 64, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm4.bmp")
    $Button5 = GUICtrlCreateButton("", 16, 96, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm5.bmp")
    $Button6 = GUICtrlCreateButton("", 56, 96, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm6.bmp")
    $Button7 = GUICtrlCreateButton("", 16, 128, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm7.bmp")
    $Button8 = GUICtrlCreateButton("", 56, 128, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm8.bmp")
    $Button9 = GUICtrlCreateButton("", 16, 160, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm9.bmp")
    $Button10 = GUICtrlCreateButton("", 56, 160, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm10.bmp")
    $Button11 = GUICtrlCreateButton("Info", 24, 192, 50, 20, 0)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

    [/autoit] [autoit][/autoit] [autoit]

    EndSwitch
    WEnd

    [/autoit]

    Ich dachte so funktioniert das X(
    Er läd aber nur das 1. Bild in den 1. Button. o.o

    Sieht da jemand den Fehler?!

    Gruß

  • Die Bilder liegen auch alle im @TempDir..
    Wenn ich den Pfad von Button1 änder, ändert sich das Bild nicht o_o
    Also ich glaube ich stehe gerade etwas aufm Schlauch, wär nett wenn mal jmd Hilfestellung leisten könnte.

    Gruß

  • Der 2. Parameter bei FileInstall gibt nur den Ziel-Pfad (mit abschließendem Backslash) an, nicht noch den Dateinamen am Ende!
    Dann sollte es auch funktionieren.

    -Rasta-

    Ja, bei mir funktioniert's!

    Einmal editiert, zuletzt von Rasta (26. März 2009 um 12:50)

  • Hallo,

    falls du nicht willst dass die Grafikdateien so einfach auf der Festplatte zu finden sind, kannst du die mit FileInstall auch ohne Endung, bzw. mir irgedeiner anderen Endung, z.B. temp.tmp installieren. Das anzeigen auf den Buttons funktioniert trotzdem.

    Andere Lösung, wenn du viele Grafiken hast, kannst du die in Icons konvertieren, mit IconSushi und BeCyIcongrabber in eine DLL packen, dann über Fileinstall nur die DLL Installieren und von dort die einzelnen Icons auslesen.

    Ich verwende das häufig für meine Kunden. sieht professioneller aus wenn nicht so viel temporär installiert wird.

    Gruß Rabbit

    Einmal editiert, zuletzt von rabbit (26. März 2009 um 14:15)

  • Danke dafür, aber bei mir läd er die Bilder immer noch nicht 8|
    Hab jetzt nur den Zielpfad angegeben ohnr Dateinahmen.

    Spoiler anzeigen
    [autoit]

    #RequireAdmin
    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

    [/autoit] [autoit][/autoit] [autoit]

    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm1.bmp",@TempDir&"\")
    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm2.bmp",@TempDir&"\")
    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm3.bmp",@TempDir&"\")
    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm4.bmp",@TempDir&"\")
    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm5.bmp",@TempDir&"\")
    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm6.bmp",@TempDir&"\")
    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm7.bmp",@TempDir&"\")
    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm8.bmp",@TempDir&"\")
    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm9.bmp",@TempDir&"\")
    FileInstall("C:\Users\mikromaxx\Desktop\AutoIT\smils\sm10.bmp",@TempDir&"\")

    [/autoit] [autoit][/autoit] [autoit]

    #Region ### START Koda GUI section ### Form=
    $Form1_1 = GUICreate("Mentorsmileys", 109, 228, 194, 126)
    $Group1 = GUICtrlCreateGroup("Mentorsmileys", 8, 16, 81, 209)
    $Button1 = GUICtrlCreateButton("", 16, 32, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm1.bmp")
    $Button2 = GUICtrlCreateButton("", 56, 32, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm2.bmp")
    $Button3 = GUICtrlCreateButton("", 16, 64, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm3.bmp")
    $Button4 = GUICtrlCreateButton("", 56, 64, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm4.bmp")
    $Button5 = GUICtrlCreateButton("", 16, 96, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm5.bmp")
    $Button6 = GUICtrlCreateButton("", 56, 96, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm6.bmp")
    $Button7 = GUICtrlCreateButton("", 16, 128, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm7.bmp")
    $Button8 = GUICtrlCreateButton("", 56, 128, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm8.bmp")
    $Button9 = GUICtrlCreateButton("", 16, 160, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm9.bmp")
    $Button10 = GUICtrlCreateButton("", 56, 160, 24, 24, $BS_BITMAP)
    GUICtrlSetImage (-1, @TempDir&"\sm10.bmp")
    $Button11 = GUICtrlCreateButton("Info", 24, 192, 50, 20, 0)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

    [/autoit] [autoit][/autoit] [autoit]

    EndSwitch
    WEnd

    [/autoit]

    Ich hatte das mit FileInstall noch nie vorher gemacht, ich seh echt kein Land, dabei sollte das doch nich so schwer sein. :|

    Also bei dir/euch funktioniert das so?
    Warum bei mir nicht? 8|

    Gruß

  • Hallo,

    Hast du schonmal @ScriptDir statt @TempDir versucht ? xD.
    Eventuell hilft das. :D

    Greez mcOOcr

  • Warum sollte das helfen?
    Jetzt liegen die Grafiken halt im Ordner des Scripts, aber 1. sollen sie in den Temp Ordner 2. gehts so auch nicht.

    Danke dennoch :)

    //Edit
    Fehler gefunden, ich hatte die Bilder nicht korrekt zu .bmp umgewandelt
    Sorry für die Aufregung.

    Einmal editiert, zuletzt von samy123 (26. März 2009 um 14:27)