Jawohl, das klappt.
Denke durch das andauernde setzen von Styles, bugt das so rum...
Danke dir!
Gruß Qu1cks3r
Jawohl, das klappt.
Denke durch das andauernde setzen von Styles, bugt das so rum...
Danke dir!
Gruß Qu1cks3r
chip:
Forumlink: http://www.autoitscript.com/forum/topic/11…sion-22-nov-14/
Direktlink: http://www.autoitscript.com/forum/index.php?app=core&module=attach§ion=attach&attach_id=45647
Andy:
Scroll mal, da müsste sich das Label1 mitbewegen..
Danach tritt der "Fehler" auf.
Gruß Qu1cks3r und danke für eure Hilfe!
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <StaticConstants.au3>
#include <GUIScrollbars_Ex.au3>
#include <GuiScrollBars.au3>
starten()
Func starten()
Global $urlaubsplanung_new_main_gui = GUICreate('Test GUI', 300, 300)
GUISetState()
starten1()
While 1
$msg = GUIGetMsg()
Switch $msg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
EndFunc ;==>starten
Func starten1()
$urlaubsplanung_new_child_gui = GUICreate("", 240, 220, 0, 20, BitOR($WS_POPUP, $WS_BORDER, $WS_GROUP, $WS_CLIPSIBLINGS), $WS_EX_MDICHILD, $urlaubsplanung_new_main_gui)
GUISetState()
$i = 0
$top = 0
$left = 115
While $i < 90
GUICtrlCreateButton("", $left, $top, 15, 15)
GUICtrlCreateButton("", $left, $top + 20, 15, 15)
GUICtrlCreateButton("", $left, $top + 40, 15, 15)
GUICtrlCreateButton("", $left, $top + 60, 15, 15)
GUICtrlCreateButton("", $left, $top + 80, 15, 15)
GUICtrlCreateButton("", $left, $top + 100, 15, 15)
GUICtrlCreateButton("", $left, $top + 120, 15, 15)
GUICtrlCreateButton("", $left, $top + 140, 15, 15)
GUICtrlCreateButton("", $left, $top + 160, 15, 15)
GUICtrlCreateButton("", $left, $top + 180, 15, 15)
$left = $left + 25
$i = $i + 1
WEnd
$label1 = GUICtrlCreateLabel("Statisches Label1", 10, 0, 100, 20,$SS_CENTER)
$label2 = GUICtrlCreateLabel("Statisches Label2", 10, 20, 100, 20)
$label3 = GUICtrlCreateLabel("Statisches Label3", 10, 40, 100, 20)
$label4 = GUICtrlCreateLabel("Statisches Label4", 10, 60, 100, 20)
$label5 = GUICtrlCreateLabel("Statisches Label5", 10, 80, 100, 20)
$label6 = GUICtrlCreateLabel("Statisches Label6", 10, 100, 100, 20)
$label7 = GUICtrlCreateLabel("Statisches Label7", 10, 120, 100, 20)
$label8 = GUICtrlCreateLabel("Statisches Label8", 10, 140, 100, 20)
$label9 = GUICtrlCreateLabel("Statisches Label9", 10, 160, 100, 20)
$label10 = GUICtrlCreateLabel("Statisches Label10", 10, 180, 100, 20)
$btn_1 = GUICtrlCreateButton("Test",0,200,100,20)
$123 = _GUIScrollbars_Generate($urlaubsplanung_new_child_gui, 2500)
While 1
$sliderpos = _GUIScrollBars_GetScrollInfoPos ( $urlaubsplanung_new_child_gui, $123 )
ControlMove ("","",$label1,$sliderpos*-0.000000000001,Default)
GUICtrlSetState($label1,$GUI_ONTOP)
$msg = GUIGetMsg()
Switch $msg
Case $GUI_EVENT_CLOSE
Exit
Case $btn_1
$sliderpos = _GUIScrollBars_GetScrollInfoPos ( $urlaubsplanung_new_child_gui, $123 )
MsgBox (0,"",$sliderpos)
EndSwitch
WEnd
EndFunc ;==>starten1
Alles anzeigen
das zum beispiel reagiert so. ( chip)
Weiß nicht was das ist...
Gruß
Qu1cks3r
Ja wird vorher erstellt, aber das mit dem setstyle bringt nix..
Hatte ich schon probiert und gerade nochmal. Gleiches Resultat..
Ich denke das hat was mit der While Schleife zu tun.
Aber ich weiß net wie ich es sonst machen soll, es muss sich ja immer mit bewegen..
Gruß
Qu1cks3r
Also es handelt sich um einen Urlaubsplan, den ich schreibe.
...
While 1
$msg_urlaubsplanung_new = GUIGetMsg()
Local $zaehler_controlmove = 0
Local $sliderpos_old = 0
$sliderpos = _GUIScrollBars_GetScrollInfoPos($urlaubsplanung_new_child_gui, $scrollbars_al2)
While $zaehler_controlmove < UBound($array_label_id_al)
ControlMove("", "", $array_label_id_al[$zaehler_controlmove], $sliderpos * -0.000000000001, Default)
GUICtrlSetState($array_label_id_al[$zaehler_controlmove], $GUI_ONTOP)
$zaehler_controlmove = $zaehler_controlmove + 1
WEnd
$sliderpos_old = 0
$zaehler_controlmove = 0
Switch $msg_urlaubsplanung_new
Alles anzeigen
...
also ich habe da 2 Scrollbars - ich frage die Horizontale Scrollbar nach der Position ab, und bewege die Labels (die in einem Array hinterlegt sind) alle zusammen zu der Position.
Funzt auch alles, bis auf den Grafik Bug -.-
Gruß
Qu1cks3r
Moin Moin,
kann mir eben jemand ne info geben, ob das jemand kennt?
Ich habe ein Label, das ich mit "ControlMove" über Buttons bewege.
Wenn ich das mache, nimmt das Label als BkColor die "Buttons" an (siehe Anhang)..
Was ist das denn?!
Kann mir jemand helfen?
Gruß Qu1cks3r
Hallo,
hast dus schonmal mit "WinWaitActive" probiert?
Gruß Qu1cks3r
Was ich dir empfehlen würde, arbeite mit der Hilfe-Datei von AutoIt. Da steht alles drin, was man braucht.
Gerade mit _Array- Geschichten, das sind von den verschiedenen Usern Funktionen, die man mit "#include" einbinden kann
Gruß
Qu1cks3r
Schreib mal ganz an den Anfang das "#include <Array.au3>".
Damit Importierst du die UDF's (User Defined Functions).
Dann sollte das gehen
Gruß Qu1cks3r
Hallo und Herzlich Willkommen im Forum
Also ich habe mal ein kleines "Script" geschrieben:
[autoit]#include <array.au3>
[/autoit][autoit][/autoit][autoit]$datei_daten = FileReadToArray (@ScriptDir&"\daten.txt")
$datei_gruppen = FileReadToArray (@ScriptDir&"\gruppen.txt")
Local $ergebnis_suche
Dim $datensaetze_ergebnis[0]
$ergebnis_suche = _ArraySearch ($datei_daten,$datei_gruppen[0])
[/autoit][autoit][/autoit][autoit]_ArrayAdd ($datensaetze_ergebnis,$datei_daten[$ergebnis_suche-4])
_ArrayAdd ($datensaetze_ergebnis,$datei_daten[$ergebnis_suche-3])
_ArrayAdd ($datensaetze_ergebnis,$datei_daten[$ergebnis_suche-2])
_ArrayAdd ($datensaetze_ergebnis,$datei_daten[$ergebnis_suche-1])
_ArrayAdd ($datensaetze_ergebnis,$datei_daten[$ergebnis_suche])
_ArrayDisplay($datensaetze_ergebnis)
[/autoit]Ist halt total Festgehämmert, aber ich hoffe es hilft Dir weiter!
Habe mir fix 2 Dokumente gemacht mit folgenden Datensätzen:
daten.txt:
Markus
Lukas
Johannes
Bernd
Christian
Olaf
Rico
Martin
Steffanie
Marcel
gruppen.txt:
Marcel
und als Ergebnis des Scriptes kommt:
Olaf
Rico
Martin
Steffanie
Marcel
raus.
Gruß Qu1cks3r
Weiß nicht wirklich was du wirklich willst, aber ich schreibe dir mal einen Code:
Definiere zuerst das Array:
Dim $array[3]
Dann lässt du dir die 3 Random Zahlen generieren und schreibst die in das array:
$array[0] = $randomzahl1
$array[1] = $randomzahl2
$array[2] = $randomzahl3
Dann machst du eine Abfrage zum Beispiel mit IF:
if $array[0] = 4 then MsgBox (0,"Geht","Die 1.Randomzahl = 4")
usw.
Hilft dir das vllt?
Gruß Qu1cks3r
Guten Tag,
Die Dateinamen kann man "_FileListToArrayRec" zu einem Array zusammenfassen. (Schaue dazu in die Hilfe)
Dann durchsucht man das Array nach der jeweiligen Bezeichnung mit "_ArraySearch" (ebenfalls in Hilfe schauen).
Wenn man den Filenamen hat (durch _ArraySearch), dann ersetzt man das v durch "StringReplace" mit "",
anschließend kopiert / verschiebt man das File mit FileCopy / FileMove in den 3. Ordner.
Hoffe ich konnte dir Anstöße geben, aber Programmieren muss man selber :p
Gruß
Qu1cks3r
Danke!
Ich schaue mir es sofort an
Für das dauerhaft "OnTop" bleiben der GUI's musst du noch den Style: "$WS_EX_TOPMOST" in das BitOR einbinden,
dann sollte das gehen
Gruß
Qu1cks3r
So sieht das Prog aus, ohne andere funktionen etc.
Ich wollte ja lediglich nur wissen, ob es eine Möglichkeit gibt, die Label festzutackern
Quelltext:
starten()
Func starten()
Global $urlaubsplanung_new_main_gui = GUICreate('Test GUI', 250, 250)
GUISetState()
starten1()
While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
Exit
EndSelect
WEnd
EndFunc ;==>starten
Func starten1()
$urlaubsplanung_new_child_gui = GUICreate("", 240, 220, 0, 20, BitOR($WS_POPUP, $WS_BORDER, $WS_GROUP, $WS_CLIPSIBLINGS), $WS_EX_MDICHILD, $urlaubsplanung_new_main_gui)
GUISetState()
GUICtrlCreateLabel("Statisches Label1", 10, 0, 100, 20)
GUICtrlCreateLabel("Statisches Label2", 10, 20, 100, 20)
GUICtrlCreateLabel("Statisches Label3", 10, 40, 100, 20)
GUICtrlCreateLabel("Statisches Label4", 10, 60, 100, 20)
GUICtrlCreateLabel("Statisches Label5", 10, 80, 100, 20)
GUICtrlCreateLabel("Statisches Label6", 10, 100, 100, 20)
GUICtrlCreateLabel("Statisches Label7", 10, 120, 100, 20)
GUICtrlCreateLabel("Statisches Label8", 10, 140, 100, 20)
GUICtrlCreateLabel("Statisches Label9", 10, 160, 100, 20)
GUICtrlCreateLabel("Statisches Label10", 10, 180, 100, 20)
$i = 0
$top = 0
$left = 115
While $i < 90
GUICtrlCreateButton("", $left, $top, 15, 15)
GUICtrlCreateButton("", $left, $top + 20, 15, 15)
GUICtrlCreateButton("", $left, $top + 40, 15, 15)
GUICtrlCreateButton("", $left, $top + 60, 15, 15)
GUICtrlCreateButton("", $left, $top + 80, 15, 15)
GUICtrlCreateButton("", $left, $top + 100, 15, 15)
GUICtrlCreateButton("", $left, $top + 120, 15, 15)
GUICtrlCreateButton("", $left, $top + 140, 15, 15)
GUICtrlCreateButton("", $left, $top + 160, 15, 15)
GUICtrlCreateButton("", $left, $top + 180, 15, 15)
$left = $left + 25
$i = $i + 1
WEnd
$123 = _GUIScrollbars_Generate($urlaubsplanung_new_child_gui, 2500)
While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
Exit
EndSelect
WEnd
EndFunc ;==>starten1
Alles anzeigen
Guten Tag,
folgende Problemstellung:
Ich habe 10 Namen untereinander stehen (als Label).
Hinter jeden Namen sieht man 90 Buttons, die verschieden eingefärbt sind. Weil es so viele Buttons sind, habe ich Scrollbars eingebaut.
Nun ist das Problem beim Scrollen, dass die Labels mit den Namen verschwinden (was logisch ist).
Gibt es eine Möglichkeit, die Labels sozusagen "statisch" zu machen..? Damit diese nicht verschwinden beim Scrollen?
Eure Hilfe ist mir sehr wichtig!
Gruß Qu1cks3r
Hallo,
nehme dir doch die ID von dem Button und suche die ID im Array (_ArraySearch($array,$ID).
Wenn er diese ID Gefunden hat, bekommst du die Stelle im Array zurück und kannst mit der dann GuiCtrlSetData($buttonKanji[$ArraySearchErgebnis] , "sinlosser Text") den Button verändern lassen.
Oder halt gleich Statisch festmachen, wenn du die ID vom Button hast, also dann GuiCtrlSetData($ButtonID , "sinlosser Text").
Gruß
Qu1cks3r
Guten Morgen,
du musst nach jeder GUICreate - Funktion ein GuiSetState(@SW_SHOW) einbauen,
damit dein GUI angezeigt wird
Gruß Qu1cks3r
ja genau das wars..
Habe genau das herausgefunden, was Micha_he geschrieben hat.
Der ServiceAccount hat ja logischerweise nicht das Netzlaufwerk..
Geht jetzt alles super Prima. Der Dienst tut was er soll
Danke an alle!!
Mfg Qu1cks3r