ne mann muss nicht unbedingt das @ScriptDir hinschreiben. Kannst du auch weglassen
Beiträge von Carsten8
-
-
Hey GTA kannst dir mir auch mal son Avatar mit dem Schriftzug Carsten8 erstellen?
Wenn du mal Zeit hast -
jo schick mal link zum Tutorial
-
Na siehste so schnell kanns gehn
-
genau. Und wenn du wissen willst ob die Section existiert, IniReadSection wenn sie nicht existiert ist @error=1
[autoit]
Bei nem Key (so wie es gerade bei dir ist) muss du ERROR nehmen (ist ja bei dir so)
also so:HotKeySet("^i", "_id")
[/autoit][autoit][/autoit][autoit]Func _id ()
[/autoit][autoit][/autoit][autoit]
;~ $name = IniRead(Datei, Section, Schlüssel, Standardwert)
$id2 = IniRead("text.ini", "Id", "User", "ERROR")
If $id2 = "ERROR" Then
$id1 = InputBox("ID-Abfrage", "Trage bitte hier deine ID ein :")
IniWrite(@ScriptDir & "\text.ini", "Id", "user", $id1)
Else
$id2 = $id2
EndIf$pw2 = IniRead("text.ini", "Pw", "User", "ERROR")
[/autoit][autoit][/autoit][autoit]
If $pw2 = "ERROR" Then
$pw1 = InputBox("PW-Abfrage", "Trage bitte hier dein PW ein :")
IniWrite(@ScriptDir & "\text.ini", "Pw", "user", $pw1)
Else Then
$pw2 = $pw2
EndIfSend ($id2 & "{TAB}" & $pw2)
[/autoit]
EndFunc -
_GUICtrlListView_DeleteAllItems($list) ist dafür da, dass alle Items in der Liste gelöscht werden Bei mir funzen dir aber nur wenn du die Liste mit_GUICtrlListView_Create machst. Ansonsten noch _GUICtrlListView_AddItem und _GUICtrlListView_AddSubitem fürs hinzufügen und zum löschen... Schau in die Hilfe hab ich grad nich im Kopf
-
schick uns am besten mal dein komplettes Script. Ansonsten am besten noch die FF.au3 da ich die nicht kenne
-
Versuchs mal so:
[autoit]#include <FF.au3>
[/autoit]
_FFStart("about:blank", "default") -
Vielen Dank Bernd! Hat geklappt
Mfg
Carsten -
Stimmt das geht nich
Also ich hab genau 221 Filme (ja große auswahl xD).
Und mit den Buttons: Eignetlich hab ich nur den Schließen Button getestet.
gruß
Carsten. -
gleub ich weniger Zur not geht auch If
-
wenns ichs so mach wie du tgehen eben die Buttons erst nach mehrmaligen klicken. Außerdem übernimmt er die Daten nur Zeitverzögert xD
Naja ich gebs langsam auf -
Also. Bei mir geht das Scrollen perfekt liegt warscheinlich bei dir
Das mit dem Bearbeiten heißt, das ich den Film der gerade ausgewählt wurde eben ändern (also umbenennen) kann.
Du siehst doch den Button Abrufen oder? Wenn man da draufklickt wird der Film in der Liste nach rechts in die Input box übernommen. Das funzt auch. ALlerdings will ichs so, wenn ich auf einen anderen Eintrag im ListView1 klicke nicht erst auf den Button klicken muss sondern der Film soll schon beim klicken übernommen werden (also automatisch). -
sry kannste gerne haben
Das Programm soll ich für meinen Vater machen und soll so eine Art Filmmanager werden :Spoiler anzeigen
[autoit]#include <File.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <GuiListView.au3>
#Include <GUIComboBox.au3>
#include <GUIConstants.au3>
#NoTrayIconLocal $ListView1, $exStyles = BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_GRIDLINES), $hListView
[/autoit] [autoit][/autoit] [autoit]
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Filmmanager v2.1 (c) Carsten Schneider", 588, 355, 332, 186)
GUISetBkColor(0xC0DCC0)
GUISetCursor(14)
$ListView1 = _GUICtrlListView_Create($Form1, "Name|VHS|DVD|CZ", 3, 3, 334, 304, -1, 0x00000020)
_GUICtrlListView_SetExtendedListViewStyle ($ListView1, $exStyles)
_GUICtrlListView_SetColumnWidth($ListView1, 0, 197)
_GUICtrlListView_SetColumnWidth($ListView1, 1, 40)
_GUICtrlListView_SetColumnWidth($ListView1, 2, 40)
_GUICtrlListView_SetColumnWidth($ListView1, 3, 40)
$Button1 = GUICtrlCreateButton("Film entfernen", 339, 228, 246, 43, 0)
$Label1 = GUICtrlCreateLabel("Filmname:", 339, 6, 117, 33)
GUICtrlSetFont(-1, 18, 400, 0, "MS Sans Serif")
GUICtrlSetColor(-1, 0x000000)
$Input1 = GUICtrlCreateInput("", 339, 42, 244, 2
GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
$Label2 = GUICtrlCreateLabel("Typ:", 339, 78, 51, 33)
GUICtrlSetFont(-1, 18, 400, 0, "MS Sans Serif")
GUICtrlSetColor(-1, 0x000000)
$Combo1 = GUICtrlCreateCombo("", 339, 114, 244, 25, BitOR($CBS_DROPDOWNLIST,$CBS_AUTOHSCROLL))
GUICtrlSetData(-1, "VHS|DVD|CZ")
GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
_GUICtrlComboBox_SetCurSel($Combo1, 0)
$Button3 = GUICtrlCreateButton("Ausgewählten Film bearbeiten", 339, 144, 246, 43, 0)
$Button4 = GUICtrlCreateButton("Neuen Film erstellen", 339, 186, 246, 43, 0)
$Button5 = GUICtrlCreateButton("Filmliste neu laden und sortieren", 2, 309, 336, 43, 0)
GUICtrlSetState($Input1, $GUI_FOCUS)
$Button6 = GUICtrlCreateButton("Schließen", 339, 270, 246, 39, 0)
$Button7 = GUICtrlCreateButton("Suchen", 462, 309, 123, 43)
$Button8 = GUICtrlCreateButton("Liste drucken", 339, 309, 123, 43, 0)
$Button9 = GUICtrlCreateButton("Abrufen", 460, 3, 123, 35)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###$merken = ""
[/autoit] [autoit][/autoit] [autoit]Func _laden()
[/autoit] [autoit][/autoit] [autoit]
If FileExists("data.ini") Then
$count = IniReadSectionNames("data.ini")
SplashTextOn("", "Daten werden geladen (" & $count[0] & " Filme) ...", 300, 50, -1, -1, 33)
_GUICtrlListView_DeleteAllItems($ListView1)
$dataname = IniReadSectionNames("data.ini")
For $i = 1 to $dataname[0]
$datatyp = IniRead("data.ini", $dataname[$i], "typ", "Error")
_GUICtrlListView_AddItem($ListView1, $dataname[$i], $i)
If $datatyp = "VHS" Then
_GUICtrlListView_AddSubItem($ListView1, $i - 1, " X", 1)
ElseIf $datatyp = "DVD" Then
_GUICtrlListView_AddSubItem($ListView1, $i - 1, " X", 2)
ElseIf $datatyp = "CZ" Then
_GUICtrlListView_AddSubItem($ListView1, $i - 1, " X", 3)
EndIf
Next
Else
MsgBox(0, "Error", "Filme konnten nicht geladen werden da die Datei 'data.ini' nicht gefunden wurde. Datei wird nach dem ersten neu erstellten Film erstellt.")
EndIf
SplashOff()
_sort()
EndFuncFunc _sort()
[/autoit] [autoit][/autoit] [autoit]
$count = _GUICtrlListView_GetItemCount($ListView1)
SplashTextOn("", "Filme werden sortiert (" & $count & " Filme) ...", 300, 50, -1, -1, 33)
Global $B_DESCENDING[_GUICtrlListView_GetColumnCount ($ListView1) ]
_GUICtrlListView_SimpleSort($ListView1, $B_DESCENDING, 0)
SplashOff()
EndFunc_laden()
[/autoit] [autoit][/autoit] [autoit]While 1
[/autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button6
Exit
Case $Button5
_laden()
Case $Button4
$newname = GUICtrlRead($input1)
$newtyp = GUICtrlRead($Combo1)
If $newname = "" Then
MsgBox(0, "Error", "Bitte geben Sie einen Filmname ein.")
Else
IniWrite("data.ini", $newname, "typ", $newtyp)
EndIf
_laden()
Case $Button3
$selected = _GUICtrlListView_GetSelectedIndices($ListView1)
$newname = GUICtrlRead($input1)
$newtyp = GUICtrlRead($Combo1)
If $newname = "" Then
MsgBox(0, "Error", "Bitte geben Sie einen Filmname ein.")
ElseIf $selected = "-1" Then
MsgBox(0, "Error", "Bitte wählen Sie einen Film zum editieren aus.")
Else
$selectedname = _GUICtrlListView_GetItemText($ListView1, $selected)
IniDelete("data.ini", $selectedname)
IniWrite("data.ini", $newname, "typ", $newtyp)
EndIf
_laden()
Case $Button1
$selected = _GUICtrlListView_GetSelectedIndices($ListView1)
If $selected = "-1" Then
MsgBox(0, "Error", "Bitte wählen Sie einen Film zum löschen aus.")
Else
$selectedname = _GUICtrlListView_GetItemText($ListView1, $selected)
IniDelete("data.ini", $selectedname)
EndIf
_laden()
Case $Button7
$suchbegriff = InputBox("Suche", "Bitte geben Sie einen Suchbegriff ein" & @CRLF & "ACHTUNG: Groß- und Kleinschriebung beachten!")
$suche = _GUICtrlListView_FindText($ListView1, $suchbegriff)
If $suche = -1 Then
MsgBox(0, "Error", "Es konnte kein Film gefunden werden.")
Else
_GUICtrlListView_SetItemSelected($ListView1, $suche)
MsgBox(0, "Suche", "Der gesuchte Film wurde markiert. Bitte beachten Sie dass das automatische scrollen noch nicht möglich ist.")
EndIf
Case $Button9
$selid = _GUICtrlListView_GetSelectionMark($ListView1)
$sel = _GUICtrlListView_GetItemTextArray($ListView1, $selid)
GUICtrlSetData($Input1, $sel[1])
If $sel[4] = " X" Then
GUICtrlSetData($Combo1, "CZ")
ElseIf $sel[3] = " X" Then
GUICtrlSetData($Combo1, "DVD")
ElseIf $sel[2] = " X" Then
GUICtrlSetData($Combo1, "VHS")
EndIf
Case $Button8
SplashTextOn("", "Druckvorgang wird vorbereitet...", 300, 50, -1, -1, 33)
If FileExists("data.ini") Then
$datacount = _GUICtrlListView_GetItemCount ($ListView1)
$printfile = @TempDir & "\" & random(0, 999, 1) & ".txt"
For $i = 1 to $datacount
$e = $i - 1
$data = _GUICtrlListView_GetItemTextArray($ListView1, $e)
If $data[4] = " X" Then
FileWriteLine($printfile, "[CZ ]" & $data[1])
ElseIf $data[3] = " X" Then
FileWriteLine($printfile, "[DVD]" & $data[1])
ElseIf $data[2] = " X" Then
FileWriteLine($printfile, "[VHS]" & $data[1])
EndIf
Next
EndIf
SplashOff()
SplashTextOn("", "Drucken...", 300, 50, -1, -1, 33)
$print = _FilePrint($printfile)
SplashOff()
If $print Then
MsgBox(0, "Druckvorgang", "Der Druckvorgang wurde erfolgreich an Ihren Standarddrucker gestartet!")
Else
MsgBox(0, "Druckvorgang", "Error: " & @error & @CRLF & "Datei konnte nicht gedruckt werden.")
EndIf
EndSwitch
WEndGruß
CarstenEdit bernd670: Spoiler-Tags gesetzt!
-
Bei mir kommt immer -1|10049
Aber nur wenn ich meine Online IP angebe
Was bedeutet das? -
danke funktioniert soweit. Die Zeile
[autoit]$vergleich = GUICtrlRead($Input1)
[/autoit]
mann man allerdings rauslassen
Aber irgendwie reagiert mir da ding noch zu langsam. Hast du sonst noch eine Idee?
Edit: Die anderen Buttons funktionieren auch nicht mehr richtig. Erst nach merhmaligen klicken -
Kann mir jemand von euch sagen wie ich eine Funktion auslösen lassen kann wenn ich einen Eintrag in einem ListView anklicke? Den Eintrag will ich dann in eine Input Box schreiben. Bisher hab ich das:
[autoit]
[/autoit]
;[...]
Case $Button9
$selid = _GUICtrlListView_GetSelectionMark($ListView1)
$sel = _GUICtrlListView_GetItemTextArray($ListView1, $selid)
GUICtrlSetData($Input1, $sel[1])
;[...]Allerdings funzt das nur wenn ich auf nen Button klicke. Aber wie schaff ich das wenn ich auf nen EIntrag klicke?
Ich hoffe ihr könnt mir helfen
Achja: Einfach in ne While schleife
[autoit]$selid = _GUICtrlListView_GetSelectionMark($ListView1)
[/autoit]
$sel = _GUICtrlListView_GetItemTextArray($ListView1, $selid)
GUICtrlSetData($Input1, $sel[1])
kann ich nicht denn sonst würde ich ja nichtsmehr von Hand in die InputBox schreiben können
Deshalb eben nur wenn ich nen Eintrag anklicken. -
@Mein Script:
bei $Stunde musst du die Stundenzahl eintragen. zb. für 20 Uhr einfach 20.
bei $Minute die Minutenzahl bei 20 Uhr einfach 00
Und dann eben noch Jahr Monat und Tag. -
Reicht dir das?
[autoit]
[/autoit][autoit][/autoit][autoit]
$stunde = 15 ;Stunde
$minute = 00 ;Minute
$tag = 8 ;Tag (im Monat)
$monat = 12 ;Monat
$jahr = 2007 ;JahrWhile 1 ;Starte eine unendliche Schleife
[/autoit]
If @HOUR = $stunde AND @MIN = $minute AND @MDAY = $tag AND @MON = $monat AND @YEAR = $jahr Then ;Wenn Stunde, Minute, Tag, Monat und Jahr passen...
Run("musterdatei.exe") ;...starte musterdatei.exe...
exit ;...und schließe das Programm
Else ;Wenns nicht passt...
sleep(900) ;...warte 900 ms (1/900 Minute)
EndIf ;Ende der Abfrage
WEnd ;Beende die Unendliche SchleifeHab's nicht getestet aber vielleicht gehts ja
-
wenns dir nich gefällt mach die Zeilen die für Farben zuständig sind wech