So wie es aussieht ist es damit nicht möglich
Neue Funktionen zu ListView - seit 3.2.10.0
Beiträge von Tweaky
-
-
Hi Greenhorn,
im "Portal" unter "Nachrichten" steht eine Einleitung von peethebee.
Am besten mal durchlesen.
Über den Link http://johannes.autoit.de/translation/ kommt ihr dann zu der "Übersetzungsseite".
Dort müßt ihr euch von peethebee freischalten lassen.
Dann könnt ihr euch eines der Pakete (jeweils eine Funktion) aussuchen und vom englischen ins deutsche übersetzen.
Pakete die schonmal übersetzt wurden stehen zusätzlich "unten links". Diese bitte nicht einfach übernehmen, sondern auch auf Fehler überprüfen und schauen, ob sich in der Zwischenzeit was geändert hat.
Manche Pakete wurden bereits in der deutschen Hilfe 3.1.0 übersetzt und stehen leider nicht "unten links". Bei diesen könnt ihr die deutsche Hilfe 3.1.0 als Vorlage nehmen.Außerdem könnt ihr Pakete reviewen, also überprüfen. Wenn genug User das Paket geprüft haben, wird es als "übersetzt" abgelegt.
Also viel Spaß

-
Wünsche euch allen schön und erholsame Feiertage und einen guten Rutsch

-
Tagchen
komisch, wer hatte denn die Hilfe 3.1.0 übersetzt. Oder kann man nicht die deutschen Übersetzungen dort rausholen
Außerdem hätte ich nichts dagegen, wenn jemand bei der Übersetzung der Hilfe helfen würde. Damit sind alle!!!
User gemeint. Die Admins haben hier sowieso schon genug zu tun
(
Lob
)
Am Anfang ging es schnell mit dem übersetzen weil mehrere mithalfen.
Nun stockt es jedoch sehr.
Bei diesem Tempo bekommen wir nie eine vollständig deutsche AutoIt Hilfe hin, denn AutoIt wird ja wieder weiterentwickelt und es werden immer neue Funktionen hinzukommen.Also ran an den Speck

-
Erste Sahne kann ich nur sagen, so wollte ich.
Danke
-
Ich habe eine Funktion in der eine For Next Schleife ist.
Dies will ich damit beenden.Spoiler anzeigen
[autoit]; example 1
[/autoit] [autoit][/autoit] [autoit]
#include <GUIConstants.au3>
GUICreate("My GUI") ; will create a dialog box that when displayed is centered
GUISetState (@SW_SHOW) ; will display an empty dialog box;Tastenkombination damit alle Dateien markiert werden
[/autoit] [autoit][/autoit] [autoit]
HotKeySet("!x", "_serie_stoppen")Func _serie_stoppen()
[/autoit]
Exit
EndFunc
_test()
; Run the GUI until the dialog is closed
While 1
$msg = GUIGetMsg()
If $msg = $GUI_EVENT_CLOSE Then ExitLoop
Wend
Func _test()
For $i = 1 to 1000
Sleep(100)
ConsoleWrite($i & @CRLF)
Next
EndfuncSo wird leider das ganze Script beendet. Oder geht _ispressed auf mit zwei Tasten (Alt+x)???
-
Hi,
ich habe eine GUI mit Buttons.
Nun will ich per Tastendruck alle aktuell ausgeführten Funktionen beenden kann, egal welche Funktion gerade läuft und wo ich mich in der Funktion befinde?
Geht das?Danke

-
Hi,
du Pee. Beim übersetzen ist mir aufgefallen, dass bei Paketen welche schon früher übersetzt wurden (Version 3.1.0) unten links die englische statt deutsche Übersetzung drinnnen steht.
-
OK, danke Gun klappt wunderbar

-
Hm verstehe ich nicht ganz. Wenn ich was schreibe und dann Enter drücke, also in die nächste Zeile springe, dann habe ich bereits in "meinem" Editor wo ich den Text schreibe den großen Zeilenabstand. Wenn ich dagegen kein Enter drücke, dann ist der Zeilenabstand kleiner

Das kann aber nicht normal sein. Ich kann ja nicht alles in eine Zeile schreiben.
Und bei @emsis ist die Zeile auch nicht voll und du hast einen kleiner Zeilenabstand

-
Hi,
kann Emsis Post nur bestätigen.
Hab ich so auch schon festgestellt.
Was anderes noch:
Ich finde gut, dass wenn man am nächsten Tag wieder die AutoIt Seite öffnet und "Neue Beiträg seit dem letzten Besuch" anklicken kann.
Leider erscheint dies nur wenn man sich als Benutzer und Passwort speichert.
Es kommt nicht, wenn man jedesmal neu einloggt.
Und noch was
:Beim Schreiben eines Post ist der Zeilenabstand riesig.
Könnte man den nicht kleiner machen
Danke

-
Bitte schön

Spoiler anzeigen
[autoit]#include <GUIConstants.au3>
[/autoit]
GUICreate("My GUI state") ; will create a dialog box that when displayed is centered
$box = GUICtrlCreateCheckbox(" ", 250, 250)
$input = GUICtrlCreateInput("", 200, 200, 50)
GUICtrlSetState(-1, $GUI_DISABLE)
$status = 0
GUISetState ()
; Run the GUI until the dialog is closed
While 1
$msg = GUIGetMsg()
If $msg = $GUI_EVENT_CLOSE Then ExitLoop
If GUICtrlRead($box) = 4 And $status = 1 Then
GUICtrlSetState($input, $GUI_DISABLE)
$status = 0
ElseIf GUICtrlRead($box) = 1 And $status = 0 Then
GUICtrlSetState($input, $GUI_ENABLE)
$status = 1
EndIf
Wend -
Hi,
wie ich vermuter, funktioniert _arraydelete nur mit eindimentionalen Arrays (nur 1 Spalte)
Du mußte im Forum nach BugFix`s arraymore.au3 suchen, dann klappt mit meinem Script
Spoiler anzeigen
[autoit]#include<Array.au3>
[/autoit]
#include<ArrayMore.au3>
Dim $array_neu[100][2]
Dim $array[8] = ["img12xx-A.jpg", "img12xx-5.jpg", "img12xx-7.jpg", "img12xx-B.jpg", "img23xx-B.jpg", "img23xx-6.jpg", "img23xx-7.jpg", "img23xx-A.jpg"]
For $i = 0 to UBound($array) -1
$split = StringSplit($array[$i], "-")
$array_neu[$i][0] = $split[1]
$array_neu[$i][1] = $split[2]
Next
ReDim $array_neu[$i][2]
_ArrayDisplay($array_neu, "zweispaltig")
For $i = UBound($array_neu) -1 To 0 Step -1
$count = Stringleft($array_neu[$i][1], 1)
$zahl = StringIsDigit($count)
If $zahl = 1 Then _Array2DDelete($array_neu, $i)
Next
_ArrayDisplay($array_neu, "ohne Buchstaben") -
stimmt sowas hab ich auch in einem meiner Script drinnen.

Gibts sowas auch, wenn ich mit den Pfeiltasten einen Eintrag auswähle?
-
Hi,
hm, habs mal mit 500 Einträgen probiert.
Es liegt wohl an
[autoit]$vergleich = _GUICtrlListView_GetSelectedIndices($ListView1, 0)
[/autoit]Es wird halten dauernd geprüft, ob ein anderer Eintrag markiert wurde.
Habe leider keine Ahnung wie man dies optimieren könnte

Mich würde jedoch eine Lösung brennend interessieren

-
was schon aufgeben, das geht ja mal gar nicht

Wie viele Daten haste denn drin in deiner ini?
Welcher Button geht denn zeitverzögert?
-
-
Hi,
hab mich mal daran probiert
Dies ist rausgekommen
Spoiler anzeigen
[autoit]#include<Array.au3>
[/autoit]
#include<ArrayMore.au3>
Dim $array_neu[100][2]
Dim $array[8] = ["img12xx-A.jpg", "img12xx-5.jpg", "img12xx-7.jpg", "img12xx-B.jpg", "img23xx-B.jpg", "img23xx-6.jpg", "img23xx-7.jpg", "img23xx-A.jpg"]
For $i = 0 to UBound($array) -1
$split = StringSplit($array[$i], "-")
$array_neu[$i][0] = $split[1]
$array_neu[$i][1] = $split[2]
$count = Stringleft($array_neu[$i][1], 1)
$zahl = StringIsDigit($count)
If $zahl = 1 Then $array_neu[$i][1] = "ZZZZ" & $array_neu[$i][1]
Next
ReDim $array_neu[$i][2]
_ArrayDisplay($array_neu, "zweispaltig")
_ArraySort_2ary($array_neu, 0, 1, True)
_ArrayDisplay($array_neu, "teilweise sortiert")
For $i = 0 to UBound($array_neu) -1
$array_neu[$i][1] = StringReplace($array_neu[$i][1], "ZZZZ", "")
Next
_ArrayDisplay($array_neu, "vollständig sortiert")Müsste funktionieren.
Ist denke ich umständlich, aber es geht

Falls du noch mehr Probleme damit hast, fragst du am besten den King of Array BugFix

Der wird dir sicher weiterhelfen können.
PS: Für mein Script brauchst du seine Arraymore.au3
-
Oh

haste nen Sportunfall gehabt

Wünsche dir auf jeden Fall alles Gute und gute Besserung

-
Hi,
also bei mir funktioniert der Scroll auch nicht perfekt. Manchmal sieht es so aus wie auf dem Screenshot.
Dass die Daten beim Klick auf einen ListView Eintrag in das Editfeld übernommen werden hab ich dir doch oben beschrieben.
Dies funktioniert einwandfrei

Spoiler anzeigen
[autoit]#include <GUIConstants.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <GUIComboBox.au3>
#Include <GuiListView.au3>
#include <File.au3>
#NoTrayIcon
Local $ListView1, $exStyles = BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_GRIDLINES), $hListView
#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, 28)
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 = ""
Func _laden()
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()
EndFunc
Func _sort()
$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()
While 1
$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$vergleich = _GUICtrlListView_GetSelectedIndices($ListView1, 0)
[/autoit]
If $merken <> $vergleich Then
$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
$merken = $vergleich
EndIf
WEnd