Hallo,
ich bin grad dabei, mir ein nettes Tool mit Autoit neu aufzubauen. Hab alle Formeln etc. bisher mit Excel gebastelt, jetzt soll das ganze aber ne eigenständige Software werden.
Aber entwederbin ich zu blöd oder blind..oder seh nach zweit Tagen suchen einfach wirklich nichts mehr.
Der erste Schritt soll sein, die Werte zweier Slider zu addieren, wobei der Wert von Slider 1 verdoppelt wird. Damit ich mit den Werten weiterarbeiten kann, sollen diese praktischerweise einer Variablen zugewiesen werden.
Soweit, das die Slider den Wert in eine Inputbox schreiben bin ich dann schon. Ebenso, dass sich der Slider der Eingabe in der Inputbox anpasst und die Limits einhält. Sogar mit der Maus gehts
Und dieser Logik folgend, wollte ich mit GUICTRLREAD den jeweiligen Wert auslesen und als Variable weiterbenutzen.
Aber entweder bekomm ich gar nix angezeigt oder die ID des Controls...
Ich habe auch schon fleissig die Liste aller Variablen, die drinstecken aufgebaut um Sie mir anzeigen zu lassen...Ergebnis dito. Das Ding muß doch jetzt erstmal nicht viel machen...Werte in Variable schreiben, nach Formel zusammenrechnen und das Ergebnis als sich dynamisch änderner Wert in einem Label anzeigen...das kann doch nicht so schwer sein...
Hab das gefrickel mal mit drangehängt...und so ein Schubs in die richtige Richtung wäre echt hilfreich!
Spoiler anzeigen
#include <GUIConstants.au3>
#include <StaticConstants.au3>
#include <EditConstants.au3>
#include <SliderConstants.au3>
#include <WindowsConstants.au3>
#include <GUIConstantsEx.au3>
#include <AVIConstants.au3>
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <Constants.au3>
#include <DateTimeConstants.au3>
#include <ListboxConstants.au3>
#include <ListviewConstants.au3>
#include <ProgressConstants.au3>
#include <TabConstants.au3>
#include <TreeviewConstants.au3>
#include <UpdownConstants.au3>
#include <Math.au3>
#include <String.au3>
#include <GuiSlider.au3>
Opt("MustDeclareVars", 1)
[/autoit] [autoit][/autoit] [autoit]; Globale Variablen und Konstanten
Global $oldSliderValue1, $oldinputValue1, $oldSliderValue2, $oldinputValue2
Global $fs_Slider, $fs_input, $fs_wert, $fs, $hfs_Slider, $fs_Limit
Global $mw_Slider, $mw_input, $mw_wert, $mw, $hmw_Slider, $mw_Limit
Global $hWnd, $Msg, $wParam, $lParam
Global $mp_Label
; Hauptfenster
GUICreate("SDMultitool by Alexander Knapp", 800, 600, 321, 129)
; Bedienelemente
GUICtrlCreateLabel("Gewebewerte eingeben:", 15, 50, 171, 20)
GUICtrlCreateLabel("Fadenstärke:", 15, 73, 83, 20)
GUICtrlCreateLabel("Maschenweite:", 15, 93, 93, 20)
;Wert für Fadenstärke - Slider, direkte Eingabe, Mausrad oder Cursortasten möglich
$fs_Slider = GUICtrlCreateSlider(180, 70, 100, 20, BitOR($TBS_NOTICKS, $TBS_TOOLTIPS, $TBS_ENABLESELRANGE))
$fs_Limit = GUICtrlSetLimit(-1, 300, 0) ; change min/max value
$hfs_Slider = GUICtrlGetHandle(-1)
$fs_input = GUICtrlCreateInput ("0", 140, 70, 30, 20, $ES_NUMBER)
;Slider für Maschenweite - Slider, direkte Eingabe, Mausrad oder Cursortasten möglich
$mw_Slider = GUICtrlCreateSlider(180, 90, 100, 20, BitOR($TBS_NOTICKS, $TBS_TOOLTIPS, $TBS_ENABLESELRANGE))
$mw_Limit = GUICtrlSetLimit(-1, 999, 0) ; change min/max value
$hmw_Slider = GUICtrlGetHandle(-1)
$mw_input = GUICtrlCreateInput ("0", 140, 90, 30, 20, $ES_NUMBER)
$mp_Label = GUICtrlCreateLabel ("Mindestpunktgröße:" & $fs_wert*2+$mw_wert , 15, 120)
$fs_wert = GUICtrlRead($fs_Slider)
$mw_wert = GUICtrlRead($mw_Slider)
;Systeminformationen
GUICtrlCreateLabel ("aktuelle IP: " & @IPAddress1, 650, 585)
;GUI: Anzeigen bei Start
GUISetState(@SW_SHOW)
; Sliderwert auslesen und in Inputfeld schreiben
[/autoit] [autoit][/autoit] [autoit]GUIRegisterMsg($WM_HSCROLL, "WM_HSCROLL")
[/autoit] [autoit][/autoit] [autoit]While True
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
Exit
Case $fs_Slider
GUICtrlSetData($fs_input, GUICtrlRead($fs_Slider))
Case $fs_input
GuiCtrlSetData($fs_Slider, GUICtrlRead($fs_input))
GUICtrlSetData($fs_input, GUICtrlRead($fs_Slider)) ; für ungültige Werte
Case $mw_Slider
GUICtrlSetData($mw_input, GUICtrlRead($mw_Slider))
Case $mw_input
GuiCtrlSetData($mw_Slider, GUICtrlRead($mw_input))
GUICtrlSetData($mw_input, GUICtrlRead($mw_Slider)) ; für ungültige Werte
EndSwitch
WEnd
Func WM_HSCROLL($hWnd, $Msg, $wParam, $lParam)
If $lParam = $hfs_Slider Then
GUICtrlSetData($fs_Input, GUICtrlRead($fs_Slider))
EndIf
Return $GUI_RUNDEFMSG
EndFunc