Wie hast du eigentlich dein "$objSelection" deklariert?
Beiträge von BugFix
-
-
Stimmt, war ein Denkfehler. Die Wertzuweisung muß natürlich AutoIt-like erfolgen.
[autoit]
Also entweder so:$Unit = 'wdLine'
[/autoit]
$Count = 10
$Extend = 'wdExtend'
$objSelection.MoveDown( $Unit , $Count, $Extend)
[autoit]
oder so:$objSelection.MoveDown( 'wdLine', 10, 'wdExtend' )
[/autoit]Edit: Lese gerade, das hattest du schon getestet. Hmm... erst mal keine weiteren Ideen.

Ahhh, aber mit anderer Syntax. Check das mal so.
-
[autoit]
$objSelection.MoveDown Unit:= wdLine, Count:= 10, Extend: = wdExtend
[/autoit]
[autoit]
Unit, Count, Extend sind Parameter des Word-Selection-Objects, Move-Methode.
Demzufolge sollte der Aufruf m.E. so aussehen:$objSelection.MoveDown( Unit:= wdLine, Count:= 10, Extend: = wdExtend )
[/autoit] -
Eine Markierung eines einzelnen Segmentes ist nicht möglich.
Aber du kannst zumindest feststellen, welche Spalte angeklickt wurde:ZitatGUICtrlGetState ( [controlID] )
For ListView controls it returns the number of the clicked column. -
Also wenn du es selber neu machen willst, dann mach es auch selber.
Einfach den Code reinstellen und sagen: "geht nicht", ist wohl ein Witz.
Das es nicht geht wissen wir alle.
Ich habe dir auch den Ansatz gesagt.
Neuen Quelltext laden und mit der Selektion in GTA's Skript vergleichen.
Warum machst du das nicht? -
Wenn du eine Befehlszeile auf mehrere Zeilen verteilen willst, verwende den Unterstrich.
[autoit]
Bsp.:$String = "blabla" & "; " & $text1 & "; " & $text2 & _
[/autoit]
"daswarbla" -
Für das Problem mit der Authentifizierung gibt es die Funktion: _INetSmtpMailAuth()
Findest du z.B. in diesem Post: _INetSmtpMailAuth und Win2003
-
Hab das Problem auch nicht richtig verstanden.
Da du aber viele Dateien einbinden willst, schau mal im Skript-Forum nach "InstallGenerator". Das nimmt dir 'ne Menge Schreibarbeit ab. -
Zitat
Original von cat1510
Fuer zum Beispiel Nero6 oder Nero7 muesste man dann eine Logik einbauen innerhalb der Checkboxes was?CAT
Ja, die: Entweder- ItemX- oder- ItemY- ist- markiert- Routine mußt du dir dann erstellen. Sollte aber kein Problem darstellen.
-
Hab das mal nachvollzogen, anscheinend reagieren die PC's unterschiedlich. Bei mir ändert sich nichts.
[autoit]
Habe jetzt einfach zusätzlich eingefügt:$btBlind = GUICtrlCreateButton('', 30, 30, 1, 1, $BS_DEFPUSHBUTTON)
[/autoit]
und nun ist Ruhe.
Nicht unbedingt elegant, aber hilfreich.
Da ich im Skript noch eine Fehlerbehandlung eingebunden habe werde ich das gleich mal aktualisieren.Edit:
Da diese Lösung ja nur eine Notlösung darstellt, lasse ich den Thread mal offen. Vielleicht kommt doch noch jemand mit 'nem genialen Einfall.
-
Das bringt leider nichts, hatte ich schon für alle Controls getestet.
Ich habe wohl nur eine Alternative:
Einen 2.ten Button definieren mit DefPushButton-Style und diesen unsichtbar machen.
Ist aber nicht das Wahre, weil es an der Ursache des Problems vorbeigeht. -
Hi,
ich habe z.B. hier eine GUI mit einigen Inputs, anderen Controls aber nur einem Button.
Selbst wenn ich mit ControlFocus() den Focus z.B. auf ein Input setze, dort einen Eintrag vornehme und mit Enter bestätige (um das Change-Event zu erhalten) reagiert sofort der Button - obwohl er nicht den Focus hat und auch nicht als PushDefault gesetzt ist.
Seltsamerweise wird bei Wiederholung des Vorgangs der Button dann nicht betätigt.
Hat jemand eine Idee, wie ich explizit verhindern kann, dass ein Button durch Enter betätigt werden kann? -
Ich bin mir nicht 100% sicher, glaube aber, dass programmübergreifend Drag'nDrop mit AutoIt nicht funktioniert.
Ich habe mal alle möglichen Szenarien durchprobiert. Innerhalb selbst erstellter Umgebung funzt das aber in Interaktion mit anderem Programm war es erfolglos. -
Checkbox geht auch für jedes Item.
Da ich den Link nicht mehr habe, poste ich mal die Lösung von Holger inkl. der verwendeten Dateien.Edit:
Hatte mal ein Installprogramm angefangen, sah dann so aus:
[Blockierte Grafik: http://home.arcor.de/bugfix/InstallTreeView.PNG]Spoiler anzeigen
[autoit]; ----------------------------------------------------------------------------
[/autoit] [autoit][/autoit] [autoit]
;
; Script: Tristate TreeView
; Version: 0.2
; AutoIt Version: 3.1.1.128 Beta min.needed!
; Author: Holger Kotsch
;
; Script Function:
; Demonstrates a tristate treeview control -> just more like a fifthstate treeview
;
; 5 item checkbox! states are usable:
; (can only used with TreeView with TVS_CHECKBOXES-style)
; - $GUI_CHECKED
; - $GUI_UNCHECKED
; - $GUI_INDETERMINATE
; - $GUI_DISABLE + $GUI_CHECKED
; - $GUI_DISABLE + $GUI_UNCHECKED
;
; ----------------------------------------------------------------------------#include <GUIConstants.au3>
[/autoit] [autoit][/autoit] [autoit]
#include "TristateTreeViewLib.au3"; You could also use a integrated bmw (with ResourceHacker)
[/autoit] [autoit][/autoit] [autoit]
; Please see TristateTreeViewLib.au3 in line 257 (LoadStateImage)
; !!! You must not compiled it full with UPX, just use after compiling: upx.exe --best --compress-resources=0 xyz.exe !!!
; If you choose another reource number then 170 you have to change the LoadStateImage() function
;
; Userfunction My-WM_Notify() is registered in TristateTreeViewLib.au3 !
;
; You can get other check bitmaps also together with freeware install programs like i.e. NSIS
; it must have 5 image states in it:
; 1.empty, 2.unchecked, 3.checked, 4.disabled and unchecked, 5.disabled and checked;Global $sStateIconFile = @ScriptDir & "\simple.bmp"
[/autoit] [autoit][/autoit] [autoit]
Global $sStateIconFile = @ScriptDir & "\modern.bmp"GUICreate("Tristate Treeview", 400, 300)
[/autoit] [autoit][/autoit] [autoit]GUICtrlCreateLabel("Select installation type:", 10, 15, 120, 20)
[/autoit] [autoit][/autoit] [autoit]
$nCombo = GUICtrlCreateCombo("", 150, 10, 200, 100, $CBS_DROPDOWNLIST)
GUICtrlSetData(-1, "Full|Standard|Lite", "Full")$nTV = GUICtrlCreateTreeView(150, 50, 200, 200, BitOr($TVS_HASBUTTONS, $TVS_HASLINES, $TVS_LINESATROOT, $TVS_DISABLEDRAGDROP, $TVS_CHECKBOXES), $WS_EX_CLIENTEDGE)
[/autoit] [autoit][/autoit] [autoit]
LoadStateImage($nTV, $sStateIconFile)$nItem1 = GUICtrlCreateTreeViewItem("Main Program (required)", $nTV)
[/autoit] [autoit][/autoit] [autoit]
MyCtrlSetItemState($nTV, $nItem1, $GUI_CHECKED + $GUI_DISABLE)
$nItem2 = GUICtrlCreateTreeViewItem("Interfaces", $nTV ) ; 7
$nItem3 = GUICtrlCreateTreeViewItem("ABC", $nItem2) ; 8
$nItem4 = GUICtrlCreateTreeViewItem("LED", $nItem2) ; 9
$nItem5 = GUICtrlCreateTreeViewItem("Book", $nItem3) ; 10
$nItem6 = GUICtrlCreateTreeViewItem("Letter", $nItem3) ; 11
$nItem7 = GUICtrlCreateTreeViewItem("Red", $nItem4) ; 12
$nItem8 = GUICtrlCreateTreeViewItem("Extra", $nTV) ; 13
$nItem9 = GUICtrlCreateTreeViewItem("Controlboard", $nItem8) ; 14$nBtn = GUICtrlCreateButton("Test", 10, 200, 70, 20)
[/autoit] [autoit][/autoit] [autoit]GUISetState()
[/autoit] [autoit][/autoit] [autoit]SelectFull()
[/autoit] [autoit][/autoit] [autoit]While 1
[/autoit] [autoit][/autoit] [autoit]
$nMsg = GUIGetMsg()Switch $nMsg
[/autoit] [autoit][/autoit] [autoit]
Case $GUI_EVENT_CLOSE
ExitLoop
Case $nCombo
$nVal = GUICtrlRead($nCombo)
Switch $nVal
Case "Full"
SelectFull()
Case "Standard"
SelectStandard()
Case "Lite"
SelectLite()
EndSwitch
Case $nBtn
Msgbox(0, "Info ABC-item", "State:" & MyCtrlGetItemState($nTV, $nItem3))
EndSwitch
WEndGUIDelete()
[/autoit] [autoit][/autoit] [autoit]Exit
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit];**********************************************************
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
; Check all items
;**********************************************************
Func SelectFull()
For $i = $nItem2 To $nItem9
MyCtrlSetItemState($nTV, $i, $GUI_CHECKED)
Next
EndFunc;**********************************************************
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
; Checks/Unchecks some items
;**********************************************************
Func SelectStandard()
For $i = $nItem2 To $nItem6
MyCtrlSetItemState($nTV, $i, $GUI_CHECKED)
Next
MyCtrlSetItemState($nTV, $nItem8, $GUI_UNCHECKED)
EndFunc;**********************************************************
[/autoit]
; Checks/Unchecks some items
;**********************************************************
Func SelectLite()
For $i = $nItem2 To $nItem6
MyCtrlSetItemState($nTV, $i, $GUI_CHECKED)
Next
MyCtrlSetItemState($nTV, $nItem5, $GUI_CHECKED)
MyCtrlSetItemState($nTV, $nItem7, $GUI_CHECKED)
MyCtrlSetItemState($nTV, $nItem6, $GUI_UNCHECKED)
MyCtrlSetItemState($nTV, $nItem9, $GUI_UNCHECKED)
EndFunc -
Schau doch mal in unser Tutorial, vielleicht kommst du den Arrays dann 'näher'

http://wiki.autoit.de/wiki/index.php…Mehrdimensional -
Im Grunde ähnelt das Tool der Funktion _ChooseFont().
[autoit]
Der Unterschied:
- Es ist ein Farbmischer enthalten zur Auswahl beliebiger Farben
- Als Ergebnis wird fertiger Code an die Zwischenablage übergeben
z.B.GUICtrlSetFont(-1, 15, 950, -1, "Courier New")
[/autoit]
GUICtrlSetColor(-1, 0xFF78FF)
GUICtrlSetBkColor(-1, 0xD46AC8)Edit:
Habe noch eine Fehlerbehandlung eingebunden. Wenn die Farbwerte direkt in die Inputfelder eingetragen werden, wird bei falschen Werten der Vorgang annuliert.
Und wegen des Problems, dass bei Bestätigung eines Wertes im Inputfeld mit Enter auch der Copy-Button betätigt wird, habe ich einen Blind-Button eingebaut.Edit2:
Nun wohl das letzte Edit
Da es ja auch um Farben geht, habe ich die Oberfläche etwas coloriert und noch eine zusätzliche Meldung bei Falscheingabe eingefügt.
Edit 19.05.2012:
Nach fast 5 Jahren habe ich nochmal dran gedreht.
- Die geänderten Funktionsaufrufe für Comboboxen angepaßt
- Einen ColorPicker hinzugefügtso sieht es jetzt aus:
Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. DL bisher: 123
-
Was ist denn mit diesem Möchtegott los?
Soll er sich doch auf seinen SMS-Olymp zurückziehen - wir brauchen ihn eh nicht.
Strafen wir ihn mit Nichtachtung und Nichtbenutzung seines Dienstes (hab ich sowieso nicht nötig, von jmd. Almosen entgegenzunehmen).Also Gott: Solltest du dich durch die Skriptfähigkeiten eines unserer Mitglieder in irgendeiner Weise angepi... fühlen, so tut mir das (aufrichtig?) leid.
Aber wie huggy bereits sagte: Das Thema ist durch, erledigt, aus die Maus, gestorben. --- Jetzt verstanden? -
2 Sachen:
- setze mal ein Sleep in deine Schleife (etwa 100 od. 200), bekommt auch der CPU-Last ganz gut
- versuche das Setzen der Labelwerte auf ein Minimum zu reduzieren
- evtl. noch: GUISetState(@SW_LOCK ) - Labeldaten setzen - GUISetState(@SW_UNLOCK ) -
Autoit Ver. 3.2.8.1 ist die aktuellste.
Aber diese Funktion ist schon lange enthalten.In der deutsche Hilfe wirst du natürlich nichts finden.
-
Prima, dann sollte es ja komplett sein.
Nun gibt es ausreichend Parameter, die man prüfen kann