Button in website einfügen

  • hi,

    hab mal ne frage und zwar kann ich wenn ich in meiner gui n eingebetteten IE hab da noch n button auf die seite mit dazu anzeigen lassen. Hab gehört das es vll über gdi+ geht da ich mich damit aber nich wirklich auskenn und auch keine tutorials etc gefunden hab die mir hierbei weiterhelfen wollt ich mal so fragen.

    ps: muss net zwangsläufig n button sein kann auch n bild sein bei dem ich einfach die coords vom klick abfang, der button oder des bild sollte allerdings auf ner bestimmten Koordinate liegen die innerhalb der seite ist und nicht einfach irgendwo

    mfg doomedone

    Einmal editiert, zuletzt von Doomedone (14. Juni 2011 um 00:08)

  • hm ich post ma schnell n bsp code vll kannst du mir anhand dessen erklaern was du meinst bin mir leider net sicher wie des gehn soll

    [autoit]

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

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

    $obj = ObjCreate("shell.Explorer.2")
    $hGui = GUICreate("Form1", @DesktopWidth, @DesktopHeight - 80,-1,-1,BitOR($WS_MINIMIZEBOX, $WS_CAPTION, $WS_POPUP, $WS_SYSMENU, $WS_MAXIMIZEBOX))

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

    GUICtrlCreateObj($obj, 0, 0, @DesktopWidth, @DesktopHeight -90)
    $obj.navigate("google.de")
    GUISetState(@SW_SHOW)
    GUISetState(@SW_MAXIMIZE,$hgui)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case -3
    Exit
    EndSwitch
    WEnd

    [/autoit][autoit][/autoit][autoit][/autoit]
  • Hab gehört das es vll über gdi+ geht da ich mich damit aber nich wirklich auskenn und auch keine tutorials etc gefunden hab


    Ich könnte dir jetzt auf Anhieb 2 Stück zeigen.
    Eins von mir, und eines von Ubuntu - und beide findest du mit weniger als einer Minute googlen.

    kann ich wenn ich in meiner gui n eingebetteten IE hab da noch n button auf die seite mit dazu anzeigen lassen.


    Zum Beispiel so:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <IE.au3>

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

    ; IE und GUI erstellen
    $oIE = _IECreateEmbedded()
    $hGUI = GUICreate('', 600)
    GUICtrlCreateObj($oIE, 10, 10, 580, 380)
    _IENavigate($oIE, "http://www.autoitscript.com/site/")

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

    ; Quelltext der Seite auslesen, und zusammen mit HTML-Code für den Button
    ; wieder "in die Seite" reinschreiben.
    $sBody = _IEBodyReadHTML($oIE)
    $sBody = "<form><input type='button' name='au3button' value='Button mit AutoIt'" & _
    " onclick='alert(""Du hast den AutoIt Button geklickt."")'></form>" & $sBody
    _IEBodyWriteHTML($oIE, $sBody)

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

    ; Warte bis GUI geschlossen...
    GUISetState()
    While 1
    Switch GUIGetMsg()
    Case $GUI_EVENT_CLOSE
    _IENavigate($oIE, "about:blank")
    Exit
    EndSwitch
    WEnd

    [/autoit]
  • vielen dank für die antwort ^^ is schon fast perfekt jetzt
    nur noch eine letzte frage kann ich mit dem onclick auf ne funktion innerhalb meines programmes aufrufen? also ne funktion die net im html code drin steht?


    aso und tutorials hab ich gefunden nur keine die mir weitergeholfen haben^^

  • So zum Beispiel.

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <IE.au3>

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

    ; IE und GUI erstellen
    $oIE = _IECreateEmbedded()
    $hGUI = GUICreate('', 600)
    GUICtrlCreateObj($oIE, 10, 10, 580, 380)
    _IENavigate($oIE, "http://www.autoitscript.com/site/")

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

    ; Quelltext der Seite auslesen, und zusammen mit HTML-Code für den Button
    ; wieder "in die Seite" reinschreiben.
    $sBody = _IEBodyReadHTML($oIE)
    $sBody = "<form><input type='button' name='au3button' value='Button mit AutoIt'" & _
    " onclick='location.href = location.href + ""#au3"";this.value = ""Bitte warten...""'></form>" & $sBody
    _IEBodyWriteHTML($oIE, $sBody)

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

    ; Wenn auf den Button gedrückt wird, wird "#au3" an die URL angehangen.
    ; Diese Änderung an der URL fangen wir ab. AdlibRegister sei dank ;)
    AdlibRegister("_ButtonWait", 1000)

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

    ; Warte bis GUI geschlossen...
    GUISetState()

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

    While 1
    Switch GUIGetMsg()
    Case $GUI_EVENT_CLOSE
    _IENavigate($oIE, "about:blank")
    Exit
    EndSwitch
    WEnd

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

    Func _ButtonWait()
    Local $sURL, $aSplit

    ; URL auslesen
    $sURL = _IEPropertyGet($oIE, "locationurl")
    If @error Then Return MsgBox(16, "", "URL error")

    ; URL an # aufteilen.
    $aSplit = StringSplit($sURL, "#", 2)
    If @error Then Return

    ; Wenn der hintere Teil #au3 war,
    ; dann wurde der Button gedrückt.
    If $aSplit[1] = "au3" Then

    ; URL zurücksetzen, und Adlib-Funktion nicht mehr aufrufen
    _IEPropertySet($oIE, "locationurl", $aSplit[0])
    AdlibUnRegister("_ButtonWait")

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

    MsgBox(0, "", "Hier deine Funktion")
    ; ...
    ; Noch mehr Zeug.
    MsgBox(0, "", "Und Ende mit deiner Funktion...")
    EndIf
    EndFunc ;==>_ButtonWait

    [/autoit]