Beiträge von pandel
-
-
Hi Oscar!
Besser spät als nie... die Funktion tuts astrein! Herzlichen Dank dafür. Eine Frage, aber mehr Neugier als Wunsch: ich vergleiche das in meinem Fall mit der FileSelectFolder Funktion - wenn ich da einen Startordner angebe, werden sämtliche anderen Laufwerke, etc. komplett ausgeblendet. Somit kann der Benutzer nur noch tiefer, aber auf keinen Fall höher rauf im Verzeichnisbaum, geschweige denn das Laufwerk wechseln oder ähnliches, was ja manchmal durchaus gewünscht sein könnte...
Hast du zufällig sowas optional noch in Planung?
Egal wie, die Funktion ist trotzdem 1A!
Lieber Gruß
Holger -
Hi Oscar! Erstmal natürlich herzlichen Dank! Ich werd es auf jeden Fall spätestens Montag mal bei mir einbauen und ausprobieren, versprochen! Dann gibt's Feedback.
-
Dann versuch das Problem doch zu zerlegen.
Du hast gesagt, dass das nur mit der Domain geht (beachte die zusätzlichen ' ' außen, denn die inneren " scheinen ja wichtig zu sein und müssen dann eingeschlossen werden):
[autoit]$suchstring = '"http://www.meinedomain/"'
[/autoit]
[autoit]
Jetzt probierste mal verschiedene Ergänzungen:
so...$suchstring = '"http://www.meinedomain/"' + ' "'
[/autoit]
[autoit]
oder so...$suchstring = '"http://www.meinedomain/"' + ' "' + 'id=bild1' + '"'
[/autoit]
[autoit]
oder auch so...$suchstring = '"http://www.meinedomain/" ' + '"' + 'id=bild1' + '"'
[/autoit]
Irgendwann wirste ja sehen, wo's plötzlich nix mehr wird, dann haste den Übeltäter... ich kann mir nicht vorstellen, daß das an id= liegen soll...BTW, kontrollier mal mit ArrayDisplay, was da wirklich in $aMeinHomepage steht und lies mal hier, vielleicht ist das auch noch relevant...
-
GEIL!!! Da freu mich mich ja jetzt schon drauf! Dann wünsche ich fröhliches Weiterentwickeln
-
Tolle Routine, danke! Das kommt mir gerade im Momentan genau richtig!
Ein paar Vorschläge hab ich noch, wenn ich darf:
- einen Parameter für einen Startordner od. -laufwerk, so dass nicht immer alles, was da ist, eingescannt wird
- eine Option zum Ein-/Ausblenden von Dateien (also reine Ordneranzeige)
- einen Button zum Anlegen eines neuen VerzeichnissesWenn du das drin hättest, könnte man auf den fehlerhaften FileSelectFolder total verzichten
-
Zur Info: ich habe ein Ticket aufgemacht, mal sehen, was es bringt: http://www.autoitscript.com/trac/autoit/ticket/2353
-
Hilft dir das vielleicht : http://www.autoitscript.com/forum/topic/15…-client-server/
-
Ich bin leider keine Hilfe, aber ich habe exakt das gleiche Problem, jedoch erst ab Win 7. Unter Windows XP läuft alles normal.
Ich hab das schon im englischen Autoitscript Forum gepostet und da gab mir jemand den Tipp, mal den Hinweisen auf folgender Seite nachzugehen:
http://www.itworld.com/windows/259222…-doesnt-refresh
Ich bin noch nicht dazu gekommen, aber vielleicht findest du ja was raus...
-
chesstiger
und ich hab beim Schreiben noch überlegt! Da fall ich immer drauf rein... ich korrigiers oben im Text gleich! Und danke für's Kompliment!@m-obi
Super Tipp mit der _FileSaveDialog Func! Muss mal probieren, ob es auch mit so Sachen wie "Scripts (*.aut;*.au3)" funktioniert, oder ob jeder Skripttyp IMMER mit ner Pipe abgetrennt werden muss. Und was die _IsPressed Abfragen anbelangt, das ist noch aus dem ursprünglichen Editor, den ich entkernt habe. Aber du hast recht, HotkeySet gefällt mir auch besser, jetzt wo du's erwähnst. Das bau ich mal um...EDIT: SUPER Funktion! Danke, klapp hervorragend! Ist auch viel besser, die einzelnen Skripttypen getrennt zu definieren....
EDIT2: Mmhh... gut das du das angesprochen hast, konnte direkt noch ein paar blöde Böcke bereinigen! Neue Fassung siehe oben
-
-
-
Hallo zusammen!
Ich habe für ein anderes Projekt einen kleinen Editor geschrieben, der Scintilla als Editorkomponente mit einem eigenen Lexer verwendet. Der komplette Code inkl. Lexer (Styling und Folding) ist in AutoIt geschrieben und so gestaltet, dass sich der Editor mit wenigen Zeilen Code komplett in eigene Projekte einbauen läßt. Dabei liefere ich in der ZIP Datei alles notwendige mit: den kompilierten Editor und alle Sourcen, sämtliche Forms, externen Libs etc.. Natürlich sind alle fremden Quellen genannt, näheres in der authors.txt im Unterverzeichnis Libs und teilweise im Rest des Codes.
Der enthaltene Lexer ist allg. auf die Verwendung mit Scriptsprachen (also SGML-artiges geht nicht gut) ausgelegt und ist über einen eigenen Menüpunkt anpassbar und läßt sich um weitere eigene Skriptsprachendefinitionen erweitern. Ein paar Lexerdefinitionen, Testskripte und ein Beispiel, wie sich die eigentliche Editorkomponente mit wenig Aufwand (eigentlich nur 4 Zeilen) komplett in eigene Projekte integrieren läßt liefere ich mit. Näheres dazu in der _LexingUDF_example.au3.
Beim Start präsentiert sich der Editor auf Deutsch OHNE Vorgabelexer, wer ihn bspw. auf Englisch mit AutoIt als Vorgabe haben möchte, ruft ihn einfach mit "scripteditor.exe -l=en -x=autoit" auf. Ansonsten über das 'Lexer' Menü einen der mitgelieferten Lexer auswählen und laden.
(Alle weiteren Kommandozeilenparameter werden mit "-h" sichtbar.)
Screenshot:
[Blockierte Grafik: https://s3.eu-central-1.amazonaws.com/opsipackagebui…shot-editor.jpg]Download: ScriptEditor v1.9
Der Ablauf zur Integration in eigene Projekte kurz skizziert:
Spoiler anzeigen
[autoit]; 0.) wir brauchen die gesamte Ordnerstruktur der ZIP Datei, also am einfachsten alles Entpacken und für Eigenes die editor.au3 löschen und selber loslegen ;-)#include "_LexingUDF.au3"; ; Vorweg muss die Parent GUI mit GUICreate erzeugt werden, wir brauchen ein Window-Handle (hier $hGUI); 1.) Parent GUI für den Editor setzen$__default_editor_parent = $hGUI ; 2.) Lexerdefinition einladen - Name der Datei ohne .def aus dem Unterverzeichnis 'LexDef'_GUICtrlLex_ReadLEXFile($lexer) -> bspw: _GUICtrlLex_ReadLEXFile("autoit"); 3.) Editorkomponente innerhalb von $__default_editor_parent erzeugen_GUICtrlLex_CreateScriptEditor($x, $y, $breite, $hoehe) -> bspw: _GUICtrlLex_CreateScriptEditor(0, 0, 800, 600); 4.) alle wichtigen Variablen, Arrays, etc. initialisieren und die Styles, Layouts, Markerdefinitionen, etc., die zuvor eingeladen wurde, der Editorkomponente bekannt machen_GUICtrlLex_SetupStylingAndFolding(); das wars eigentlich.... wer allerdings gerne noch einen Menüpunkt hätte, um die Lexerdefinition anzupassen, wie oben auf dem Screenshot zu sehen, der macht noch etwas weiter:; (genereller Hinweis: für den Einbau in eigene Skripte sollte der OnEvent Modus verwendet werden, das macht es etwas einfacher); 5.) erzeugen eines eigenen Hauptmenüpunkts 'Lexer', mit allem was nötig ist_GUICtrlLex_CreateLexerDefMenu('main'); 6.) den unter 5.) erzeugten Menüpunkt mit dem Konfigurationsdialog verknüpfenGUICtrlSetOnEvent($__arM[2], "_GUICtrlLex_OpenLexerDef"); WICHTIG: wer eigene Funktionen als WM_NOTIFY oder WM_COMMAND registrieren will, muss; _GUIRegisterMsg aus der Libs\_GUIRegisterMsg.au3 verwenden!
[/autoit]
Was ganz hübsch ist, ist die Tatsache, daß wenn man an der Lexerdefinition herumschraubt, Farben und Schriftarten ändert, beim einem Klick auf "Sichern" das ganze direkt auf Editor übertragen wird. Man kann also schauen, wie sich der Kram verändert. Hauptsächlich dafür liegen die Testskripte bei.Fairerweise muss ich aber eines dazu sagen: dieser Editor ist für große Skripte einfach zu langsam, da es eben AutoIt Geschwindigkeit ist. Da es bei mir aber nicht um riesige Codemengen ging, sondern eher um eine gute Darstellung kleinerer Skripte, hab ich's halt so gemacht. Also bitte nicht hauen, wenn das 8000 Zeilen Skript schon ein wenig braucht, um gestylt und gefoldet zu werden ;-))
Es werden auch sicherlich noch ein paar Böcke drin sein und ich weiß auch nicht, wie optimal mein Code ist (vor allem der Folder ;-), vielleicht mach ich den auch nochmal neu ), soooo lange schreibe ich noch nicht in AutoIt, aber Spass gemacht hat's trotzdem
Vielleicht kann's ja wer gebrauchen und Lob oder Kritik sind natürlich immer gerne gelesen
Lieber Gruß
Holger -
Hi ISI360,
kurze Rückmeldung zum Form Studio, dass mit den Listviews ist jetzt top, da wird nix mehr kaputtgeschrieben. Den Editor finde ich echt brauchbar! ... und auch, dass du auf die normale Codeeditor Ansicht gehst, sobald man das per Func füllt
Gruß
Holger -
Arg, sorry! Hab nix mitbekommen, keine Mail und gar nix! Danke, werde das bald wie möglich testen!!!!
-
Huhu, ich hab da auch noch was recht nerviges im FormEditor. Ich beschreib es mal so, wie es bei mir auftritt:
- Tab anlegen
- auf eine Tab Seite eine Listview
- im Feld "Text/Data" eine Spaltenbeschreibung hinterlegen: Spalte1|Spalte2|Spalte3|Spalte4
- dann mal, nur zum Test, noch vielleicht ein Label oder ein anderes Feld anlegen
- jetzt wieder die Listview mit der Maus aktivieren, ABER mit der Tastatur verschieben ---> im Feld "Text/Data" steht nur noch: Spalte1|Gut, wenn man ein Backup hat
-
Wooohooo! Funktioniert perfekt! Vielen Dank! Das Mitverschieben der Controls ist der Hit!
-
Hi ISI360!
Ich versuche, im Formeditor bei einer Tabcontrol zwischen zwei bereits vorhandene Tabs einen weiteren zu fummeln. Entweder bin ich zu doof ;-), was sein kann, oder man kann wirklich immer nur einen neuen Tab anhängen und dann jeweils eine Control nach der anderen auf die nächsten Tabs verschieben.
Mach ich da Mist?
EDIT: Anbei das Formular, wo ich das versuche und bei dem das Formstudio etwas durchdreht
Probier mal folgendes: häng mal ein fünftes Tab an, und ändere mal die Tab-Angabe der Group Control 'Messages' (zweiter Tab) und seiner fünf Member auf Tab 5 ab. Dann speichern und danach einfach mal auf dem Tab 5 die Group Control mit der Maus nach oben ziehen. Wenn du dann durch die anderen Tabs gehst, wirst du einige Formularelemente finden, bei denen die Positionen völlig durcheinander geraten sind. Irgendwie hat das Formstudio bei Tabs noch Schwierigkeiten, die Elemente auf den Tabs sauber auseinanderzuhalten.... Ach so, sollte vielleicht dazu sagen, daßß ich die Option eingeschaltet habe, daß beim Verschieben einer Group Control die Member mitverschoben werden.
Lieber Gruß
Holger -
Und wie immer, nix zu danken, die Anpassungen waren ja auch für mich ;-))
Also, wegen der Langstrings, biddeschön:
Englisch:
str875=Sort
str876=Toggle sorting of variables in alphabetical order
str877=Sorting changed
str878=Automatic sorting is disabled beginning with the next step.Deutsch:
str875=Sort
str876=Variablen aufsteigend sortieren an/aus
str877=Änderung der Sortierung
str878=Zum nächsten Schritt wird die autom. Sortierung abgeschaltet.Hab dir in dem Posting hier nochmal alles zusammengefasst.
EDIT: nochmal geändert. Der Knopf verhält sich nicht nur wie ein Schalter, jetzt sieht er auch so aus ;-)!
-----------------------------------------------------------------------------------------------------------------
So, und damit dir nicht langweilig wird hab ich direkt noch ne Idee...Es gibt einen recht gut funktionierenden Profiler für AutoIt: AU3Profiler
Zum Hintergrund:
Ich habe gerade einen Editor programmiert, der Scintilla nutzt, aber Styling und Folding wird komplett in AutoIt geregelt, sprich ich nutze keinen der eingebauten Lexer, sondern mache alles selber. Um das aber performancetechnisch zu optimieren, musste ich wissen, welche Routine sich womöglich einen abrackert, aber nicht zu Potte kommt und dafür ist das Teil wirklich Klasse! Wenn du dir die Doku dazu anschaust, dann siehst du, daß man auch zusätzliche Programmzeilen einfügen kann, die sogar innerhalb einer Funktion gezielt einzelne Codezeilen profilen können. Bei mir hat's zumindest gut funktioniert.
Nachtrag: falls du zufällig mal eine Zeile à la "Exit $rc" verwenden solltest, dann darf, insofern du den Profiler verwenden willst, im Variablennamen kein "return" vorkommen - also sowas wie $returncode - da kackt der Profiler ab; alles andere ist erlaubtUnd welche AutoIt Programmierumgebung hat schon nen Debugger und nen eingebauten Profiler, hä ???
Viel Spasssss damit
-
Alles klar, danke für die Info
Übrigens... ich hab noch eine neue Version der dbug.au3, in der die drei Bereiche Variablen/Befehl/Ergebnis etwas anders gedockt sind. Ich wollte, daß die unteren beiden fix bleiben und sich das Variablenfeld beliebig nach unten und in der Breite aufziehen läßt. Die Variablenliste ist neuerdings per Klick auf die jeweilige Spaltenüberschrift sortierbar (auf und ab) und es gibt einen zusätzlichen Button, mit dem auf Wunsch die Variablenliste autom. immer nach dem folgenden Lauf nach Alphabet sortiert werden kann. Dauert zwar bei vielen Variablen etwas, ist aber zum Suchen wirklich ganz schön!
Da in deinem Languagefile jetzt alles so schön hineinander ohne Lücken ist, konnte ich dem Button keinen deutschen Text verpassen (hatte gehofft, str820 ist noch frei ). Macht aber nix, geht ja auch so.
Hier die beiden Files (der zweite Anhang wird hier blöderweise direkt als Bildchen angezeigt... einfach in den IMAGES Ordner kopieren):
EDIT: passende Anhänge jetzt zwei Postings weiterLieber Gruß
Holger