wie kann ich einen TabItem eine Scrollbar dranhängen?
Beim GUICtrlCreateTab geht das ja gut, aber das ist nicht so ganz das richtige....
GUICtrlCreateTabItem bietet ja keine exStyles an ....
Tab mit Scrollbar
-
- [ gelöst ]
-
Sarah -
27. August 2010 um 21:11 -
Geschlossen -
Erledigt
-
-
Hallo Sarah,
verstehe die Frage nicht wenn der Tabbereich nicht ausreicht wird doch automatisch eine Scrollbar für die Tabs eingeblendet.
Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. Falls du innerhalb eines TabItems einen Scrollbereich haben willst, musst du dort eine HilfsGui erstellen, siehe dazu:
[ gelöst ] Gruppe oder Bereich in GUI scrollenmfg autoBert
-
ich habe mehr Elemente als auf dem Tag Platz ist, ich möchte also innerhalb des Tabs scrollen.
[autoit]
verstehe ich das richtig, dass ich eine "dummy" gui auf das Tab legen muss?
[/autoit][autoit][/autoit][autoit]
$tabTest = GUICtrlCreateTabItem("test");
$hGroup2 = GUICreate("",170,170,235,25,BitOR($WS_Child, $WS_VSCROLL),-1,$tabTest )$buttonStart = GUIctrlcreatebutton("start", 10, 30,120,30)
[/autoit] -
verstehe ich das richtig, dass ich eine "dummy" gui auf das Tab legen muss?
ja genau, mir ist keine andere Lösung bekanntmfg autoBert
-
das klappt bei einfachen GUI's ganz gut, wenn ich baer versuche es auf ein Tab zu legen, liegt der Scrollbereich entweder auf dem ersten Tab
[autoit]
[/autoit][autoit][/autoit][autoit][/autoit][autoit]
$tabTest = GUICtrlCreateTabItem("Test")
$hGroup2 = GUICreate("",170,170,235,25,BitOR($WS_POPUP, $WS_GROUP, $WS_VSCROLL, $WS_CLIPSIBLINGS),$WS_EX_MDICHILD,$mainGui)$buttonStart = GUIctrlcreatebutton("start", 10, 30,120,30)
[/autoit]oder erscheint garnicht
[autoit]
[/autoit][autoit][/autoit][autoit][/autoit][autoit]
$tabTest = GUICtrlCreateTabItem("Test")
$hGroup2 = GUICreate("",170,170,235,25,BitOR($WS_POPUP, $WS_GROUP, $WS_VSCROLL, $WS_CLIPSIBLINGS),$WS_EX_MDICHILD,$tabTest )$buttonStart = GUIctrlcreatebutton("start", 10, 30,120,30)
[/autoit] -
Hallo Sarah,
wie wäre es mit dem kompletten Skript, kann anhand der Codeschnipsel nichts erkennen,
mfg autoBert
-
mein script hat mittlerweile etwa 3000 Zeilen code, von daher habe ich mir schon was gedacht als ich nur den schnipsel gepostet habe

ich poste mal den Teil wo ich die gui baue (ballast werfe ich auch ein bisschen von board)
[autoit]
[/autoit][autoit][/autoit][autoit]
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <StructureConstants.au3>
#include <GUIScrollBars.au3>
#include <ScrollBarConstants.au3>startGui()
[/autoit][autoit][/autoit][autoit]Func startGui()
[/autoit][autoit][/autoit][autoit][/autoit][autoit]
global $mainGui = GUIcreate("Titel", 600, 600)$tab = GUICtrlCreateTab(-1,-1,600,600)
[/autoit][autoit][/autoit][autoit]
$tab1 = GUICtrlCreateTabItem("Tab1")
; gui elemente
GUICtrlCreateTabItem("")
$tab2 = GUICtrlCreateTabItem("Tab2")
; gui elemente
GUICtrlCreateTabItem("")
$tab3 = GUICtrlCreateTabItem("Tab3")
$hGroup2 = GUICreate("",170,170,235,25,BitOR($WS_Child, $WS_GROUP, $WS_VSCROLL, $WS_CLIPSIBLINGS),$WS_EX_MDICHILD,$tab3)
$buttonStart = GUIctrlcreatebutton("start", 10, 30,120,30)
GUICtrlCreateTabItem("")
$tab4 = GUICtrlCreateTabItem("Tab4")
; gui elemente
GUICtrlCreateTabItem("")
$tab5 = GUICtrlCreateTabItem("Tab5")
; gui elemente
GUICtrlCreateTabItem("")GUIsetstate(@sw_show)
[/autoit][autoit][/autoit][autoit][/autoit][autoit]$msg = GUIgetmsg()
[/autoit][autoit][/autoit][autoit]While 1
[/autoit]
$msg = GUIgetmsg()
Switch $msg
Case $buttonStart
ConsoleWrite("start()")
Case $GUI_EVENT_CLOSE
ConsoleWrite("exit" & @CRLF)
Exit
EndSwitch
WEnd
EndFunc ; ==> startGui() -
Guten Morgen!
[autoit]#include <GUIConstantsEx.au3>
[/autoit][autoit][/autoit][autoit]
#include <WindowsConstants.au3>
#include <StructureConstants.au3>
#include <GUIScrollBars.au3>
#include <ScrollBarConstants.au3>
#include "Guiscroll.au3" ; -> http://www.autoit.de/index.php?page…2464#post162464startGui()
[/autoit][autoit][/autoit][autoit]Func startGui()
[/autoit][autoit][/autoit][autoit]
global $mainGui = GUIcreate("Titel", 600, 600)$tab = GUICtrlCreateTab(-1,-1,600,600)
[/autoit][autoit][/autoit][autoit]
$tab1 = GUICtrlCreateTabItem("Tab1")
; gui elemente
$tab2 = GUICtrlCreateTabItem("Tab2")
; gui elemente
$tab3 = GUICtrlCreateTabItem("Tab3")
$buttonStart = GUIctrlcreatebutton("start", 10, 30,120,30)
$tab4 = GUICtrlCreateTabItem("Tab4")
;gui elemente
$tab5 = GUICtrlCreateTabItem("Tab5")
; gui elemente
GUICtrlCreateTabItem("")GUIsetstate()
[/autoit][autoit][/autoit][autoit]$hGroup2 = GUICreate("",170,170,235,25,BitOR($WS_POPUP,$WS_BORDER,$WS_GROUP,$WS_VSCROLL,$WS_CLIPSIBLINGS),$WS_EX_MDICHILD,$mainGui)
[/autoit][autoit][/autoit][autoit]
GUICtrlCreateButton("Testbutton", 10, 170, 100, 25)
Scrollbar_Create($hGroup2, $SB_VERT, 170 + 25)
Scrollbar_Step(10, $hGroup2, $SB_VERT)While 1
[/autoit]
$msg = GUIgetmsg()
Switch $msg
Case $tab
If GUICtrlRead($tab, 1) = $tab3 Then
GUISetState(@SW_SHOW, $hgroup2)
WinActivate($mainGui)
Else
GUISetState(@SW_HIDE, $hgroup2)
EndIf
Case $buttonStart
ConsoleWrite("start()")
Case $GUI_EVENT_CLOSE
ConsoleWrite("exit" & @CRLF)
Exit
EndSwitch
WEnd
EndFunc ; ==> startGui() -
Moin, moin,
tolle Lösung, wäre ich so ohne weiteres nicht drauf gekommen
