Text als Link (kompliziert)

  • Hallo Liebes Forum :)

    Ich habe mir jetzt ein About Fenster gebastelt.
    Ich will jedoch , im Label eine textstelle als Link erstellen.

    Wie bekomme ich das hin. Hier das Script:
    (Unten sind die anderen Datein die man braucht)

    Spoiler anzeigen
    [autoit]

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

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

    #Include "BinaryData.au3"
    #include "AutoitImage.au3"
    Local $vThxString, $vArrayThanksTo[3][2] = [ _
    ["Person1" & @TAB, "...Peter"], _
    ["Person2" & @TAB & @TAB, "Für Blub und Bla" & @CRLF & @TAB & @TAB & "erstellte dies und das" & @CRLF & @TAB & @TAB & "blub"], _
    ["Person3" & @TAB & @TAB, "Lustig und so"]]

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

    For $k = 1 To UBound($vArrayThanksTo)
    $vThxString &= $vArrayThanksTo[$k - 1][0] & $vArrayThanksTo[$k - 1][1] & @CRLF
    Next
    Opt("GUIOnEventMode", 1) ; Change to OnEvent mode
    Dim $SS_REALSIZEIMAGE = 0x00000800 ,$msg
    Dim $homepageLink = "http://the-franky.de"
    GUICtrlSetOnEvent($homepageLink, "_Homepage")

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

    Dim $hGUIAbout = GUICreate(" Franky's Manager - About", 464, 153, -1, -1, -1, 0x00000080)
    GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit")
    Dim $BinaryData = AutoitImage()
    Dim $Array = LoadImageFrom_BinaryData($BinaryData)
    Dim $Pic = GUICtrlCreateLabel("", 0, 0, $Array[1][4], $Array[1][5],$WS_BORDER + $SS_CENTERIMAGE + $SS_REALSIZEIMAGE)
    Dim $HandleImage = $Array[1][1] ;$ImageArray[0][1] = "HBITMAP"
    STATIC_SETBITMAP($Pic,$HandleImage)
    _SM_GUICtrlCreateLabel("Franky's Programm Version " & @CRLF & "Coded by Franky" & @CRLF & $homepageLink & @CRLF & @CRLF & "Thanks to..." & @CRLF & $vThxString, 170, 7, 280, 147)
    GUICtrlSetFont(-1, 8.5, 800)
    GUISetState(@SW_SHOW, $hGUIAbout)
    While 1
    sleep(1000)
    WEnd
    Func _SM_GUICtrlCreateLabel($L_Text, $L_X, $L_Y, $L_Width = Default, $L_Height = 17, $L_Style = -1, $L_ExStyle = -1, $L_Color = 0xFFFFFF, $L_BkColor = Default)
    Local $L_HWnd = GUICtrlCreateLabel($L_Text, $L_X, $L_Y, $L_Width, $L_Height, $L_Style, $L_ExStyle)
    If $L_Color <> Default And $L_Color <> -1 Then GUICtrlSetColor($L_HWnd, $L_Color)
    If $L_BkColor <> Default And $L_BkColor <> -1 Then
    GUICtrlSetBkColor($L_HWnd, $L_BkColor)
    Else
    GUICtrlSetBkColor($L_HWnd, -2) ;$GUI_BKCOLOR_TRANSPARENT
    EndIf
    Return $L_HWnd
    EndFunc ;==>_SM_GUICtrlCreateLabel

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

    Func _Homepage()
    MsgBox(64,"","")
    EndFunc

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

    Func _Exit()
    Exit
    EndFunc

    [/autoit]
    • Offizieller Beitrag

    Hier mal ein Bsp. mit Hover-Effekt:

    Spoiler anzeigen
    [autoit]

    #include <WindowsConstants.au3>
    Global $bOver = False

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

    $guiMain = GUICreate('Test')
    $mnu = GUICtrlCreateMenu('Info')
    $help = GUICtrlCreateMenuItem('Hilfe', $mnu)
    GUICtrlCreateMenuItem('', $mnu)
    $about = GUICtrlCreateMenuItem('Über', $mnu)

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

    $guiAbout = GUICreate('Über', 150, 100, -1, -1, $WS_CAPTION)
    GUICtrlCreateLabel('Das ist eine Info, mehr:', 10, 10, 130, 17)
    $link = GUICtrlCreateLabel('www.autoit.de', 30, 35, 80, 17)
    $btClose = GUICtrlCreateButton('OK', 40, 60, 50, 20)

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

    GUISetState(@SW_SHOW, $guiMain)

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

    While 1
    Switch GUIGetMsg()
    Case -3
    Exit
    Case $about
    GUISetState(@SW_SHOW, $guiAbout)
    Case $btClose
    GUISetState(@SW_HIDE, $guiAbout)
    Case $link
    ShellExecute(GUICtrlRead($link))
    EndSwitch
    $cursor = GUIGetCursorInfo($guiAbout)
    If $cursor[4] = $link And Not $bOver Then
    $bOver = True
    GUICtrlSetColor($link, 0x0000FF)
    GUICtrlSetFont($link, 9, 400, 4)
    ElseIf $cursor[4] <> $link And $bOver Then
    $bOver = False
    GUICtrlSetColor($link, 0x000000)
    GUICtrlSetFont($link, 9, 400)
    EndIf
    WEnd

    [/autoit]

  • Okay danke schön werde ich mir angucken wenn mein pc wieder läuft