Gui-Style-Problem mit Toolbar

  • hey,

    ich bin gerade dabei eine Toolbar zu basteln, ich möchte gern, dass sie so aussieht wie jetzt nur, dass man sie halt irgendwie noch verschieben kann.

    [

    Spoiler anzeigen
    [autoit]


    #include <GUIConstants.au3>
    $tb_gui = GUICreate("LanToolBar by lev", 220, 35, 229, 297, $WS_POPUPWINDOW, $WS_EX_TOPMOST+$WS_EX_TOOLWINDOW)
    $daemonbutton = GUICtrlCreateButton("AButton1", 0, 0, 49, 33, 0)
    $eagamesbutton = GUICtrlCreateButton("AButton2", 56, 0, 49, 33, 0)
    $lankeybutton = GUICtrlCreateButton("AButton3", 112, 0, 49, 33, 0)
    $Button4 = GUICtrlCreateButton("AButton4", 168, 0, 49, 33, 0)
    GUISetState(@SW_SHOW)

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

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

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

    EndSwitch
    WEnd

    [/autoit]

    Ist das überhaupt möglich?, will dann später noch andere Effekte einbauen, wie halt so ein einsliden von der Seite wenn man mit der Maus hingeht

    • Offizieller Beitrag

    HI,

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    $tb_gui = GUICreate("LanToolBar by lev", 220, 35, 229, 297, Default, $WS_EX_TOPMOST + $WS_EX_TOOLWINDOW)
    $daemonbutton = GUICtrlCreateButton("AButton1", 0, 0, 49, 33, 0)
    $eagamesbutton = GUICtrlCreateButton("AButton2", 56, 0, 49, 33, 0)
    $lankeybutton = GUICtrlCreateButton("AButton3", 112, 0, 49, 33, 0)
    $Button4 = GUICtrlCreateButton("AButton4", 168, 0, 49, 33, 0)
    GUISetState(@SW_SHOW)

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

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

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

    EndSwitch
    WEnd

    [/autoit]

    So long,

    Mega

  • ja, aber so hab ich ja noch den Balken drüber - geht das nicht ohne?
    also wenn man halt da hinklickt, wo kein Button ist, dass man die GUI verschieben kann

    Einmal editiert, zuletzt von leviathan (12. Juni 2007 um 14:19)

    • Offizieller Beitrag

    Hallo

    Like this?

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    $tb_gui = GUICreate("LanToolBar by lev", 220, 35, 229, 297, $WS_POPUP, $WS_EX_TOPMOST)
    GUICtrlCreatePic("",0,0,220,35,-1,$GUI_WS_EX_PARENTDRAG)
    $daemonbutton = GUICtrlCreateButton("AButton1", 0, 0, 49, 33,0 )
    GUICtrlSetState(-1,$GUI_ONTOP)
    $eagamesbutton = GUICtrlCreateButton("AButton2", 56, 0, 49, 33,0 )
    GUICtrlSetState(-1,$GUI_ONTOP)
    $lankeybutton = GUICtrlCreateButton("AButton3", 112, 0, 49, 33,0 )
    GUICtrlSetState(-1,$GUI_ONTOP)
    $Button4 = GUICtrlCreateButton("AButton4", 168, 0, 49, 33,0 )
    GUICtrlSetState(-1,$GUI_ONTOP)
    GUISetState()

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

    EndSwitch
    WEnd

    [/autoit]

    Einfach ein bild mit keinem inhalt erstellt und das mit dem ExStyle '$GUI_WS_EX_PARENTDRAG' versehen

    MfG Spider

    Edit: So nochmal geupdatet, jetzt kann man auch auf die buttons klicken^^

  • hiermal mein dock-Versuch nur irgendwie gibt er mir andauert die Position aus

    Spoiler anzeigen
    [autoit]


    #include <GUIConstants.au3>
    $tb_gui = GUICreate("LanToolBar by lev", 220, 35, 229, 297, $WS_POPUP, $WS_EX_TOPMOST)
    GUICtrlCreatePic("",0,0,220,35,-1,$GUI_WS_EX_PARENTDRAG)
    $daemonbutton = GUICtrlCreateButton("AButton1", 0, 0, 49, 33,0 )
    GUICtrlSetState(-1,$GUI_ONTOP)
    $eagamesbutton = GUICtrlCreateButton("AButton2", 56, 0, 49, 33,0 )
    GUICtrlSetState(-1,$GUI_ONTOP)
    $lankeybutton = GUICtrlCreateButton("AButton3", 112, 0, 49, 33,0 )
    GUICtrlSetState(-1,$GUI_ONTOP)
    $Button4 = GUICtrlCreateButton("AButton4", 168, 0, 49, 33,0 )
    GUICtrlSetState(-1,$GUI_ONTOP)
    GUISetState()

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

    AdlibEnable ("_dock")

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

    EndSwitch
    WEnd

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

    Func _dock()
    $pos = WinGetPos ("LanToolBar by lev")
    If (@DesktopWidth - $pos[0]) < (@DesktopWidth-10) OR (@DesktopWidth - $pos[0]) < 10 then Msgbox(0,"",$pos[0]&" "&$pos[1])
    ;If @DesktopHeight - $pos[1] < @DesktopHeight-10 OR @DesktopHeight - $pos[1] < 10 then Msgbox(0,"",$pos[1]&" "&$pos[1])
    EndFunc

    [/autoit]

    ja aber egal ob das 10 dran ist oder net - ist ja nur ein Test

    2 Mal editiert, zuletzt von leviathan (12. Juni 2007 um 15:52)

    • Offizieller Beitrag

    Mit MsgBox wird nun mal was ausgeben, was Du benötigst heisst WinMove!

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    $tb_gui = GUICreate("LanToolBar by lev", 220, 35, 229, 297, $WS_POPUP, $WS_EX_TOPMOST)
    GUICtrlCreatePic("", 0, 0, 220, 35, -1, $GUI_WS_EX_PARENTDRAG)
    $daemonbutton = GUICtrlCreateButton("AButton1", 0, 0, 49, 33, 0)
    GUICtrlSetState(-1, $GUI_ONTOP)
    $eagamesbutton = GUICtrlCreateButton("AButton2", 56, 0, 49, 33, 0)
    GUICtrlSetState(-1, $GUI_ONTOP)
    $lankeybutton = GUICtrlCreateButton("AButton3", 112, 0, 49, 33, 0)
    GUICtrlSetState(-1, $GUI_ONTOP)
    $Button4 = GUICtrlCreateButton("AButton4", 168, 0, 49, 33, 0)
    GUICtrlSetState(-1, $GUI_ONTOP)
    GUISetState()

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

    AdlibEnable("_dock")

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

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

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

    EndSwitch
    WEnd

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

    Func _dock()
    $pos = WinGetPos("LanToolBar by lev")
    If (@DesktopWidth - ($pos[0] + $pos[2])) < 10 Then
    ConsoleWrite($pos[0] & " " & $pos[1] & @CRLF)
    WinMove("LanToolBar by lev", "", @DesktopWidth - $pos[2], $pos[1])
    ElseIf ($pos[0]) < 10 Then
    ConsoleWrite($pos[0] & " " & $pos[1] & @CRLF)
    WinMove("LanToolBar by lev", "", 0, $pos[1])
    EndIf
    EndFunc ;==>_dock

    [/autoit]
  • ja damit klappt es schon teilweise - wie kann ich rausfinden ob 2 Desktops da sind weil ich würde es auch gerne noch beim Rand vom ersten docken lassen - naja hab erstmal nen Updater geschrieben und werd mich nun wieder darauf konzentrieren thx bernd