funktioniert der refresh?

  • hi, ich poste hiermal nen auschnitt aus meinem code...

    $tab_modus = GUICtrlCreateTabItem("Modus")
    GUICtrlCreateCombo("", 10, 30, 100, 30)
    GUICtrlSetData(-1 ,"MODUS 1|MODUS 2","")
    GUICtrlSetOnEvent(-1 , "tabrefresh")

    $tab_info = GUICtrlCreateTabItem("Info")

    func tabrefresh()
    ;was gehört hier rein
    EndFunc

    was muss ich in die func. tabrefresh reinschreiben damit, wenn MODUS 1 gewählt ist, der tab_modus

    A: $GUI_ENABLE oder B: $GUI_DISABLE ist.
    wenn dies so nicht möglich ist, bitte postet einen anderen vorschlag.

  • Hi,
    eigentlich funktioniert das mit GUICtrlSetData.

    [autoit]


    GUICtrlSetData($tab_info,$GUI_ENABLE)
    GUICtrlSetData($tab_info,$GUI_Disable)

    [/autoit]

    Ich weis zwar nicht ob du das meinst, aber hier ist eine möglichkeit ein Gui ein oder aus zuschalten.

    Sonst musst du ein Prog nen bischen mehr beschreiben.

    MfG
    Der_Doc

  • ja so wie du es beschrieben hast könnte es gehen. aber ich möchte , dass sobald man eine möglichkeit der combo nimmt, dass der tab X disable sein soll.

    :irre:

  • Dann machste ne If Abfrage mit GuiCtrlRead und je nachdem was drin steht disabelst du mit guictrlsetstate

  • und wo muss ich die if frage reinpacken damit dass dauernt überprüft wird?

    ps: es gab ein paar leute die gesagt haben tabitems kann man nicht disable machen :irre:

  • In die Funktion 'tabrefresh()'.

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

    ...
    $cmbModus = GUICtrlCreateCombo("", 10, 30, 100, 30)
    ...

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

    Func tabrefresh()
    If GUICtrlRead( $cmbModus ) == 1
    GUICtrlSetData($tab_info,$GUI_ENABLE)
    Else
    GUICtrlSetData($tab_info,$GUI_DISABLE)
    EndIf
    EndFunc

    [/autoit]

    So in der Art ;)

    Edit : Er braucht keine While-Schleife weil bei jeder Änderung 'tabrefresh()' aufgrufen wird.

    3 Mal editiert, zuletzt von JanSchmidt (23. April 2007 um 15:51)

  • ich bekomm das nicht ganz hin.
    kann vll jemand ein ganzes script schreiben? (nur beispiel)

    danke


    einer sagt setstate einer sagt setdata

    :irre: :irre: :irre:


    da viele leute mir verschiedene auskünfte geben, und ich nicht in der lage bin diese umzusetzen, poste ich hier jetzt einen zensierten quellcode

    ich bitte euch diese quellcode so um zubauen , damit es geht ....

    Spoiler anzeigen
    [autoit]


    #include <GUIConstants.au3>
    #include <inet.au3>
    #include <string.au3>
    ;HOTKEYS
    HotKeySet("{ESC}", "scriptende")
    ;HOTKEYS
    Opt("GUIOnEventMode", 1)

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

    ;$V
    Global $version_intern = 2.00
    Global $pwd_input, $pwd_login, $combo_modus_read, $combo_modus, $tab_1, $tab_2, $tab_3, $tab_4, $tab_5, $tab_6, $tab_7, $tab_8, $tab_9
    Global $omfg
    ;$V

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

    anfang()

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

    ;LOGIN GUI
    func anfang()
    GuiCreate("Login", 800, 600)
    GUICtrlCreateTab(0, 0, 800, 600)
    GUICtrlCreateTabItem("Hinweis")
    GUICtrlCreateLabel("TEXT", 10, 30, 700, 500)
    GUICtrlCreateTabItem("Login")
    GuiCtrlCreateLabel("Passwort:", 300, 300, 100, 20)
    $pwd_input = GuiCtrlCreateInput("", 300, 330, 100, 20)
    $pwd_login = GuiCtrlCreateButton("Login", 300, 360, 100, 20)
    GUICtrlSetOnEvent(-1 , "pwdabfrage")
    GUISetOnEvent($GUI_EVENT_CLOSE, "scriptende")
    GUISetState (@SW_SHOW)

    While 1
    Sleep(100)

    WEnd

    EndFunc
    ;LOGIN GUI

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

    ;HAUPT GUI
    func hauptgui()
    GUIDelete()
    GUICreate("...", 800, 600)
    GUICtrlCreateTab(0, 0, 800, 600)
    $tab_1 = GUICtrlCreateTabItem("1")
    $tab_2 = GUICtrlCreateTabItem("2")
    GUICtrlCreateCombo("", 10, 30, 100, 30)
    GUICtrlSetData(-1 ,"MODUS 1|MODUS 2","MODUS 1")

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


    $tab_3 = GUICtrlCreateTabItem("3")
    $tab_4 = GUICtrlCreateTabItem("4")
    $tab_5 = GUICtrlCreateTabItem("5")
    $tab_6 = GUICtrlCreateTabItem("6")
    $tab_7 = GUICtrlCreateTabItem("7")
    $tab_8 = GUICtrlCreateTabItem("8")
    $tab_9 = GUICtrlCreateTabItem("9")

    GUISetOnEvent($GUI_EVENT_CLOSE, "scriptende")
    GUISetState (@SW_SHOW)

    While 1

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

    WEnd

    EndFunc
    ;HAUPT GUI

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

    ;SCRIPT BEENDEN
    Func scriptende ()
    Exit
    EndFunc
    ;SCRIPT BEENDEN

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

    ;PASSWORT ABFRAGE
    func pwdabfrage()
    $iNET_version = _INetGetSource("....")
    $iNET_pwd = _INetGetSource("....")

    If GUICtrlRead($pwd_input) = "...." Then
    hauptgui()
    Else
    $Ping = Ping("www.deinserver.at")
    If $Ping = 0 Then
    MsgBox(48, "error", "Es ist ein Fehler mit ihrere Internetverbindung aufgetreten")
    Exit
    EndIf
    If $version_intern <> $iNET_version Then
    MsgBox(0, "...", "VERSION ZU ALT")
    Exit
    EndIf
    If $pwd_input = $iNET_pwd Then
    hauptgui()
    Else
    MsgBox(48, "...", "PASSWORT FALSCH")
    Exit
    EndIf
    EndIf
    EndFunc
    ;PASSWORT ABFRAGE

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



    kann mir BITTE jemand helfen?


    Edit peethebee: 4 (!) aufeinanderfolgende Posts zusammengefasst - erste Verwarnung wegen Spammings an hxhjx...

    Einmal editiert, zuletzt von peethebee (23. April 2007 um 22:39)

    • Offizieller Beitrag

    Hi!

    Wenn das Projekt wie du sagtest dazu da ist, AutoIt zu lernen, würde ich dir empfehlen, mit etwas einfacherem anzufangen - die Grundlagen von GUIs lernt man schlecht, wenn man sich Code von anderen basteln lässt. Da ist es besser, selbst klein anzufangen und sich dann langsam zu steigern. Dann kannst du das Projekt auch irgendwann selbst wieder aufnehmen.
    Sollte es nicht darum gehen, AutoIt zu lernen, sondern das Endprodukt zu haben, dann...

    peethebee

  • ich hab schon ein einfaches programm geschrieben, und auch einige andere.

    aber ich versteh das mit den tabs einfach nicht. geht das oder geht das nicht.
    ich hab mehrere leute gefragt ein paar sagen es geht, ein paar sagen es geht nicht. also ich bitte trozdem nochmal um hilfe, da mir dieses problem sehr komplex bezüglich anderen autoit problemen erscheint (meines wissens)
    :help:
    wenn ich nicht einmal weis ob es geht oder nicht, wie soll ich dann das problem überhaupt lösen?
    ich hätte auch schon eine idee wie ich es über einen anderen weg lösen könnte, jedoch erscheint mir dieser etwas "billig" und entspricht nicht meinen vorstellungen.

    mfg hxhjx