1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. nemi

Beiträge von nemi

  • error handling

    • nemi
    • 7. Februar 2014 um 14:41

    kenn mich zwar mit den fehler dingern noch nich so aus, aber wenn du 'ShellExecuteWait' mal genau anschaust, steht da:

    Erfolg: Gibt den "exit code" des ausgeführten Programms zurück.
    Fehler: Gibt 0 zurück und setzt @error auf nicht-null.

    liegts vllt daran?

  • Kleines Tool zum Punkte verteilen

    • nemi
    • 4. Februar 2014 um 18:46

    wow absolut das was ich wollte =D
    ich glaub ich sollte mich doch nochma extrem mit den arrays beschäftigen.
    vielen dank

    jetz muss ich nur noch die zahlen zurück in worte formulieren, aber das sollte ja jetz schnell gehn

    danke danke

  • Controlclick Problem

    • nemi
    • 4. Februar 2014 um 18:07

    naja das fenster muss auch nicht aktiviert werden, außer du möchtest das, aber dann ist der controlclick unnötig, dann reicht der normale.
    und das mit "Class" hat da auch nichts zu suchen, weil er ja auf den Fensternamen zugreifen will.

    verstehe aber auch nicht wieso er es nicht macht, tut mir leid

  • Controlclick Problem

    • nemi
    • 4. Februar 2014 um 17:55

    ControlClick("Canon MP Navigator EX - MX870 series", "", "", "left", 1, (53+85), (176+47))
    bzw
    ControlClick("Canon MP Navigator EX - MX870 series", "", "", "left", 1, 138, 223)

    wenn das nich geht weiß ich leider auch nich weiter

  • Controlclick Problem

    • nemi
    • 4. Februar 2014 um 17:33

    wenn du das canon programm offen hast, ist es in der taskleiste? wenn ja, welcher titel wird angezeigt, wenn du mit der maus drüber gehst?
    denn ich sehe immer noch den titel als problem an. wundert mich zwar wieso er dann das fenster in den vordergrund holt, ABER das wäre sowieso nicht nötig beim controlclick, da er nicht ins aktive fenster klickt sondern in ein fenster, das man vorher definiert (eben über den titel).

  • Controlclick Problem

    • nemi
    • 4. Februar 2014 um 17:03

    ControlClick("Canon", "", "", "left", 1, 25, 33)

  • Einen Tab in Chrome schließen

    • nemi
    • 4. Februar 2014 um 17:00

    ich tippe einfach ma darauf, dass "send" sowie "controlsend" ZULANG 'drücken'.
    wenn du chrome mit mehreren tabs offen hast un ctrl+w lange hältst (2-3sec) schließt es komplett.

  • Controlclick Problem

    • nemi
    • 4. Februar 2014 um 16:24

    wenn du win7 hast könnte es sein dass du für manche Prgramme adminrechte brauchst.
    schreib ma ganz oben hin

    Zitat

    #RequireAdmin

    aber grundlegend is dein problem, dass du ControlClick("title","text",controlID) brauchst und du den title nich kennst, controlID könntest du noch mit mauskoordinaten umgehen, aber ohne titel findet ers halt nich, das kannste nur über die ID des fensters umgehen.
    zb ControlClick($hwnd, "", controlID) und dieses $hwnd muss halt auf den Prozess des fensters zugreifen oder was vergleichbares

  • Kleines Tool zum Punkte verteilen

    • nemi
    • 4. Februar 2014 um 16:06

    ich packs ma rein, weil ichs grad total verwurschtelt hab un alles wieder raus hab xD

    Spoiler anzeigen

    #Region ### Include section ###
    #include <Array.au3>
    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #EndRegion
    ;

    #Region ### GUI section ###
    GUICreate ("AP Distributor", 445, 490)
    GUISetIcon (@ScriptDir & '\aion.ico')
    GUISetBkColor (0xFFFFFF)

    #Region ### Menu section ###
    $menu_1 = GUICtrlCreateMenu ("Datei")
    $menu_1_1 = GUICtrlCreateMenuItem ("Beenden", $menu_1)
    $menu_2 = GUICtrlCreateMenu ("Hilfe")
    $menu_2_1 = GUICtrlCreateMenuItem ("Anleitung", $menu_2)
    #EndRegion
    ;

    #Region ### Button section ###
    $start = GUICtrlCreateButton ("Verteilen", 5, 440, 80, 25)
    $calc = GUICtrlCreateButton ("Zwischenstand", 182.5, 440, 80, 25)
    $end = GUICtrlCreateButton ("Schließen", 360, 440, 80, 25)
    #EndRegion
    ;

    #Region ### Ikonen ###
    GUICtrlCreateGroup ("", 10, 5, 210, 190)
    GUICtrlCreatePic (@ScriptDir & '\oldtorso01.bmp', 14, 15, 40, 40)
    GUICtrlCreatePic (@ScriptDir & '\oldtorso02.bmp', 14, 60, 40, 40)
    GUICtrlCreatePic (@ScriptDir & '\oldtorso03.bmp', 14, 105, 40, 40)
    GUICtrlCreatePic (@ScriptDir & '\oldtorso04.bmp', 14, 150, 40, 40)
    GUICtrlCreateLabel ("Geringe uralte Ikone", 60, 29, 120, 15)
    GUICtrlCreateLabel ("Normale uralte Ikone", 60, 74, 120, 15)
    GUICtrlCreateLabel ("Große uralte Ikone", 60, 119, 120, 15)
    GUICtrlCreateLabel ("Mächtige uralte Ikone", 60, 164, 120, 15)
    $oldtorso01 = GUICtrlCreateInput ("0", 190, 28, 25, 17)
    $oldtorso02 = GUICtrlCreateInput ("0", 190, 73, 25, 17)
    $oldtorso03 = GUICtrlCreateInput ("0", 190, 118, 25, 17)
    $oldtorso04 = GUICtrlCreateInput ("0", 190, 163, 25, 17)
    #EndRegion
    ;

    #Region ### Siegel ###
    GUICtrlCreateGroup ("", 225, 5, 210, 190)
    GUICtrlCreatePic (@ScriptDir & '\oldseal01.bmp', 229, 15, 40, 40)
    GUICtrlCreatePic (@ScriptDir & '\oldseal02.bmp', 229, 60, 40, 40)
    GUICtrlCreatePic (@ScriptDir & '\oldseal03.bmp', 229, 105, 40, 40)
    GUICtrlCreatePic (@ScriptDir & '\oldseal04.bmp', 229, 150, 40, 40)
    GUICtrlCreateLabel ("Geringes uraltes Siegel", 275, 29, 120, 15)
    GUICtrlCreateLabel ("Normales uraltes Siegel", 275, 74, 120, 15)
    GUICtrlCreateLabel ("Großes uraltes Siegel", 275, 119, 120, 15)
    GUICtrlCreateLabel ("Mächtiges uraltes Siegel", 275, 164, 120, 15)
    $oldseal01 = GUICtrlCreateInput ("0", 405, 28, 25, 17)
    $oldseal02 = GUICtrlCreateInput ("0", 405, 73, 25, 17)
    $oldseal03 = GUICtrlCreateInput ("0", 405, 118, 25, 17)
    $oldseal04 = GUICtrlCreateInput ("0", 405, 163, 25, 17)
    #EndRegion
    ;

    #Region ### Kelche ###
    GUICtrlCreateGroup ("", 10, 195, 210, 190)
    GUICtrlCreatePic (@ScriptDir & '\oldcup01.bmp', 14, 205, 40, 40)
    GUICtrlCreatePic (@ScriptDir & '\oldcup02.bmp', 14, 250, 40, 40)
    GUICtrlCreatePic (@ScriptDir & '\oldcup03.bmp', 14, 295, 40, 40)
    GUICtrlCreatePic (@ScriptDir & '\oldcup04.bmp', 14, 340, 40, 40)
    GUICtrlCreateLabel ("Geringer uralter Kelch", 60, 219, 120, 15)
    GUICtrlCreateLabel ("Normaler uralter Kelch", 60, 264, 120, 15)
    GUICtrlCreateLabel ("Großer uralter Kelch", 60, 309, 120, 15)
    GUICtrlCreateLabel ("Mächtiger uralter Kelch", 60, 354, 120, 15)
    $oldcup01 = GUICtrlCreateInput ("0", 190, 218, 25, 17)
    $oldcup02 = GUICtrlCreateInput ("0", 190, 263, 25, 17)
    $oldcup03 = GUICtrlCreateInput ("0", 190, 308, 25, 17)
    $oldcup04 = GUICtrlCreateInput ("0", 190, 353, 25, 17)
    #EndRegion
    ;

    #Region ### Kronen ###
    GUICtrlCreateGroup ("", 225, 195, 210, 190)
    GUICtrlCreatePic (@ScriptDir & '\oldcrown01.bmp', 229, 205, 40, 40)
    GUICtrlCreatePic (@ScriptDir & '\oldcrown02.bmp', 229, 250, 40, 40)
    GUICtrlCreatePic (@ScriptDir & '\oldcrown03.bmp', 229, 295, 40, 40)
    GUICtrlCreatePic (@ScriptDir & '\oldcrown04.bmp', 229, 340, 40, 40)
    GUICtrlCreateLabel ("Geringe uralte Krone", 275, 219, 120, 15)
    GUICtrlCreateLabel ("Normale uralte Krone", 275, 264, 120, 15)
    GUICtrlCreateLabel ("Große uralte Krone", 275, 309, 120, 15)
    GUICtrlCreateLabel ("Mächtige uralte Krone", 275, 354, 120, 15)
    $oldcrown01 = GUICtrlCreateInput ("0", 405, 218, 25, 17)
    $oldcrown02 = GUICtrlCreateInput ("0", 405, 263, 25, 17)
    $oldcrown03 = GUICtrlCreateInput ("0", 405, 308, 25, 17)
    $oldcrown04 = GUICtrlCreateInput ("0", 405, 353, 25, 17)
    #EndRegion
    ;

    #Region ### Spieler ###
    GUICtrlCreateGroup ("", 10, 385, 425, 50)
    GUICtrlCreateLabel ("Anzahl der Gruppenmitglieder:", 15, 395, 150, 15)
    $player = GUICtrlCreateInput ("0", 170, 394, 25, 17)
    GUICtrlCreateLabel ("Aktuelle AP zur Vergabe:", 15, 415, 150, 15)
    $ap = GUICtrlCreateLabel ("0", 172, 415, 100, 15)
    #EndRegion
    ;

    GUISetState (@SW_SHOW)
    #EndRegion
    ;

    #Region ### Start Global section ###
    Global $points01 = "315"
    Global $points02 = "630"
    Global $points03 = "945"
    Global $points04 = "1260"
    Global $points05 = "630"
    Global $points06 = "1260"
    Global $points07 = "1890"
    Global $points08 = "2520"
    Global $points09 = "1200"
    Global $points10 = "2400"
    Global $points11 = "3600"
    Global $points12 = "4800"
    Global $points13 = "2400"
    Global $points14 = "4800"
    Global $points15 = "7200"
    Global $points16 = "9600"
    #EndRegion
    ;

    #Region ### Start HotKey section ###
    HotKeySet ("{END}", "_exit")
    HotKeySet ("{F1}", "_help")
    #EndRegion
    ;

    #Region ### Start Programm section ###
    ; GUI-Schleife
    While 1
    $nMsg = GUIGetMsg ()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

    Case $menu_1_1
    _exit ()
    Case $menu_2_1
    _help ()
    Case $start
    _start ()
    Case $calc
    _calc ()
    Case $end
    _exit ()
    EndSwitch
    WEnd

    ; Verteilung starten
    Func _start ()
    ;~ --------------------------------------------------------------------------------------------------------------------------
    ;~ Global $aItems = StringSplit('600,300,300,300,100,100,100,100,100', ',', 2) die zahlen müssten durch die $points variablen ersetzt werden, wenn da zb ne 5 beim 630er steht muss halt 5 ma der wert 630 aufploppen
    ;~ _ArrayStringToNumber($aItems)
    ;~ _ArraySort($aItems, 1)
    ;~ _ArrayDisplay($aItems, 'Liste der Items')

    ;~ Global $aPlayer[12][3] = [ ['Player 1', '', 0],['Player 2', '', 0],['Player 3', '', 0], _ hier müsste dann anhand der "$player" variable "$aPlayer[x][3]" entstehen und je nachdem dann "Spieler1-12" hinterlegt werden
    ;~ ['Player 4', '', 0],['Player 5', '', 0],['Player 6', '', 0], _
    ;~ ['Player 7', '', 0],['Player 8', '', 0],['Player 9', '', 0], _
    ;~ ['Player 10', '', 0],['Player 11', '', 0],['Player 12', '', 0]]

    ;~ Global $iAllItemsVal = 0
    ;~ For $i In $aItems
    ;~ $iAllItemsVal += $i
    ;~ Next
    ;~ ConsoleWrite('Gesamtwert aller Items: ' & $iAllItemsVal & @CR)
    ;~ Global $iAverage = Int($iAllItemsVal / UBound($aPlayer, 1))
    ;~ ConsoleWrite('Durchschnittswert für jeden Spieler: ' & $iAverage & @CR)

    ;~ Global $iItemCount = 0, $iItemEnd = UBound($aItems) - 1
    ;~ Do
    ;~ For $i = 0 To UBound($aPlayer, 1) - 1
    ;~ If $aPlayer[$i][2] < $iAverage Then
    ;~ $aPlayer[$i][1] &= $aItems[$iItemCount] & ', '
    ;~ $aPlayer[$i][2] += $aItems[$iItemCount]
    ;~ $iItemCount += 1
    ;~ If $iItemCount > $iItemEnd Then ExitLoop 2
    ;~ EndIf
    ;~ If $aPlayer[$i][2] < $iAverage Then
    ;~ $aPlayer[$i][1] &= $aItems[$iItemEnd] & ', '
    ;~ $aPlayer[$i][2] += $aItems[$iItemEnd]
    ;~ $iItemEnd -= 1
    ;~ If $iItemCount > $iItemEnd Then ExitLoop 2
    ;~ EndIf
    ;~ Next
    ;~ Until $iItemCount > $iItemEnd
    ;~ _ArrayDisplay($aPlayer, 'Verteilung der Items')
    ;~ --------------------------------------------------------------------------------------------------------------------------
    EndFunc

    ;~ --------------------------------------------------------------------------------------------------------------------------
    ;~ Func _ArrayStringToNumber(ByRef $Array)
    ;~ For $i = 0 To UBound($Array) - 1
    ;~ $Array[$i] = Number($Array[$i])
    ;~ Next
    ;~ EndFunc
    ;~ --------------------------------------------------------------------------------------------------------------------------

    ; AP zusammenrechnen
    Func _calc ()
    $01 = (GUICtrlRead ($oldtorso01) * $points01)
    $02 = (GUICtrlRead ($oldtorso02) * $points02)
    $03 = (GUICtrlRead ($oldtorso03) * $points03)
    $04 = (GUICtrlRead ($oldtorso04) * $points04)
    $05 = (GUICtrlRead ($oldseal01) * $points05)
    $06 = (GUICtrlRead ($oldseal02) * $points06)
    $07 = (GUICtrlRead ($oldseal03) * $points07)
    $08 = (GUICtrlRead ($oldseal04) * $points08)
    $09 = (GUICtrlRead ($oldcup01) * $points09)
    $10 = (GUICtrlRead ($oldcup02) * $points10)
    $11 = (GUICtrlRead ($oldcup03) * $points11)
    $12 = (GUICtrlRead ($oldcup04) * $points12)
    $13 = (GUICtrlRead ($oldcrown01) * $points13)
    $14 = (GUICtrlRead ($oldcrown02) * $points14)
    $15 = (GUICtrlRead ($oldcrown03) * $points15)
    $16 = (GUICtrlRead ($oldcrown04) * $points16)
    $all = ($01 + $02 + $03 + $04 + $05 + $06 + $07 + $08 + $09 + $10 + $11 + $12 + $13 + $14 + $15 + $16)
    GUICtrlSetData ($ap, $all)
    EndFunc

    ; Hilfe
    Func _help ()
    MsgBox (0, "Ausführliche Anleitung", "~Eintrag~" & @CRLF & @CRLF & _
    " - Tragt die Anzahl der Relikte in die dafür vorgesehenen Feld ein." & @CRLF & _
    " - Tragt die Anzahl der Gruppenmitglieder in das dafür vorgesehene Feld ein." & @CRLF & _
    " - (nur die Mitglieder, die auch AP haben möchten)." & @CRLF & @CRLF & _
    "~Verteilen~" & @CRLF & @CRLF & _
    " - Startet die Verteilung der Relikte an die Gruppenmitglieder." & @CRLF & @CRLF & _
    "~Zwischenstand~" & @CRLF & @CRLF & _
    " - Rechnet die gesamten AP vor der Verteilung aus." & @CRLF & @CRLF & _
    "~Schließen~" & @CRLF & @CRLF & _
    " - Beendet das Programm.")
    EndFunc

    ; Bot beenden - GUI schließen
    Func _exit ()
    Exit
    EndFunc
    #EndRegion;

  • Kleines Tool zum Punkte verteilen

    • nemi
    • 4. Februar 2014 um 08:36

    also die verteilung funktioniert perfekt damit. danke
    im moment komm ich nur nich ganz damit klar, wie ich die werte rein bekomm.
    hab die gui ja soweit fertig und wenn dann zb eingetragen wird, dass man 13 300er items hat und 5 6400er oder sowas, muss das ja in den stringspilt.

    ich glaub es is viel zulange her, dass ich das das letzte ma gemacht hab xD

  • Kleines Tool zum Punkte verteilen

    • nemi
    • 3. Februar 2014 um 19:00

    ich glaub damit komm ich klar =)
    kann aber erst heut abend probiern, auf arbeit hab ich da den kopf nich frei ^^

    vielen dank erstma

  • Kleines Tool zum Punkte verteilen

    • nemi
    • 3. Februar 2014 um 18:49

    ja wie schon gesagt, ich steh da wirklich grad aufm schlauch.
    selbst mit arrays un random fällt mir nix ein, was nich in einem 10.000zeiler endet...
    deswegen frag ich ja die profis hier =D

  • Kleines Tool zum Punkte verteilen

    • nemi
    • 3. Februar 2014 um 17:52

    Hallo.

    Ich bräuchte einen kleinen Anstoß um mein Tool fertig zu machen.
    Ich fang mal vorne an:
    - es gibt 16 "Items" mit verschiedenen Punktewerten (zb 300, 600, 7200, 9600)
    - diese können mehrfach vorkommen, also gibt man im Tool ein wieviele man von jeder Sorte hat
    - alles zusammen wird dann an 1-12 "Spieler" verteilt, sodass jeder mit möglichst der gleichen Anzahl an Punkten endet

    Mein Problem ist nun, wie erkläre ich dem Tool, dass es gerecht aufteilen soll?
    zb
    - 1x600p, 1x300p, 1x200p und 1x100p an 3 Personen -> 1. Person 600p, 2. Person 300p, 3. Person 200+100p
    - 1x600p, 3x300p, 5x100p an 4 Personen -> 1. Person 600p, 2. Person 300+100p, 3. Person 300+100, 4. Person 100+100+100p
    usw

    Hat jemand eine Idee oder einen "Rohling" nach dem ich weiter machen könnte?

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™