Tab Problem

  • Hallo,

    ich krieg das einfach nicht gelöst.
    Ich habe eine Form mit mehreren Tabs.

    Per Code werden nun Checkboxen erstellt.

    Wie kann ich bestimmen, daß die Elemente in einem bestimmen TAB erstellt werden.

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>
    #include <TabConstants.au3>
    #include <WindowsConstants.au3>
    #Region ### START Koda GUI section ### Form=
    Global $language = ''
    $spaltenNr = 0

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

    $Form1 = GUICreate("Form1", 625, 443, 192, 124)
    $Tab1 = GUICtrlCreateTab(32, 72, 505, 321)
    GUICtrlSetResizing(-1, $GUI_DOCKWIDTH+$GUI_DOCKHEIGHT)
    $TabSheet1 = GUICtrlCreateTabItem("TabSheet1")

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

    $TabSheet2 = GUICtrlCreateTabItem("TabSheet2")
    GUICtrlCreateTabItem("")
    $language &= "en Englisch|" ; Sollte in TAB 2
    $language &= "fr Französisch|" ; Sollte in TAB 2
    $language &= "es Spanisch|" ; Sollte in TAB 2
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    $language &= "en Englisch|" ; Sollte in TAB 2
    $language &= "fr Französisch|" ; Sollte in TAB 2
    $language &= "es Spanisch|" ; Sollte in TAB 2

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

    $languageSplit = StringSplit($language, "|")

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

    Dim $Checkbox[$languageSplit[0]]
    Dim $CheckboxText[$languageSplit[0]]

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

    For $i = 1 to $languageSplit[0]-1
    If $i = 11 Or $i = 21 Or $i = 31 Or $i = 41 Or $i = 51 Or $i = 61 Then $spaltenNr += 1
    $Checkbox[$i] = GUICtrlCreateCheckbox($languageSplit[$i], 0+100*$spaltenNr, 20*$i-$SpaltenNr*200, 97, 17)
    $CheckboxText[$i] = $languageSplit[$i]
    Next

    [/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][/autoit]


    ;) Grüße Ilse

    Einmal editiert, zuletzt von Ilse (11. Juli 2012 um 17:41)

  • Hi, alles in TAB 2. Schau Dir mal die Hilfe zu "GUICtrlCreateTabItem", dort ist es etwas einfacher. ;)

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>

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

    #region ### START Koda GUI section ###
    Global $language = ''
    $spaltenNr = 0

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

    $Form1 = GUICreate("Form1", 625, 443, 192, 124)
    $Tab1 = GUICtrlCreateTab(32, 72, 505, 321)
    GUICtrlSetResizing(-1, $GUI_DOCKWIDTH + $GUI_DOCKHEIGHT)
    $TabSheet1 = GUICtrlCreateTabItem("TabSheet1")

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

    $TabSheet2 = GUICtrlCreateTabItem("TabSheet2")

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

    $language &= "en Englisch|" ; in TAB 2
    $language &= "fr Französisch|" ; in TAB 2
    $language &= "es Spanisch|" ; in TAB 2
    $languageSplit = StringSplit($language, "|")
    Dim $Checkbox[$languageSplit[0]]
    Dim $CheckboxText[$languageSplit[0]]
    For $i = 1 To $languageSplit[0] - 1
    If $i = 11 Or $i = 21 Or $i = 31 Or $i = 41 Or $i = 51 Or $i = 61 Then $spaltenNr += 1
    $Checkbox[$i] = GUICtrlCreateCheckbox($languageSplit[$i], 80 + 100 * $spaltenNr, 110 * $i - $spaltenNr * 200, 97, 17)
    $CheckboxText[$i] = $languageSplit[$i]
    Next

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

    GUICtrlCreateTabItem("")

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

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

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case -3
    ExitLoop
    EndSwitch
    WEnd
    ; Ende

    [/autoit]