1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. alpines

Beiträge von alpines

  • Befehl "hidden" ausführen

    • alpines
    • 20. März 2017 um 11:27

    Vielleicht kannst du ja recherchieren was die Funktion exakt macht und die Änderungen selber übernehmen (FileDelete etc).

  • Befehl "hidden" ausführen

    • alpines
    • 20. März 2017 um 11:17

    Wenn WinSetState nicht funktioniert kannst du es ja außerhalb des Sichtbereiches verschieben?

  • Ecxel + Array

    • alpines
    • 19. März 2017 um 22:45

    Das nächste Mal den grünen Haken für erledigt / gelöst (Threadstatus anpassen, 1. Beitrag bearbeiten) nicht vergessen!

  • GUI Reagiert nicht mehr

    • alpines
    • 19. März 2017 um 12:37

    Das Script würde ich aber noch überarbeiten, das schaut nicht sehr gut aus.

    Funktioniert wenigstens deine GUI jetzt wie du es willst? Wenn ja kannst du ja den grünen Haken für erledigt / gelöst setzen indem du den Threadstatus anpasst (1. Beitrag bearbeiten).

  • XLM Datei auslesen und Werte in anzeigen

    • alpines
    • 19. März 2017 um 10:59

    Hab dir mal was gebastelt. Ist ziemlich rudimentär aber ich denke wenn du dir das ansiehst wirst du die grafische Darstellung selber gestalten.
    Das parsen kannst du ja so mehr oder weniger übernehmen.

    Du solltest bedenken, dass der die aktuelle Uhrzeit und das Datum zur Errechnung der Show nimmt und er vermutlich crasht wenn das ganze nicht mehr passt.
    Das ganze ist OHNE Errorhandling! Nur zur Demonstration!

    [Blockierte Grafik: http://i.imgur.com/LJuU9xO.png]

    Dateien

    pack.rar 2,41 kB – 48 Downloads
  • GUI Reagiert nicht mehr

    • alpines
    • 19. März 2017 um 07:45

    Liegt ja auf der Hand. Du gehst in die While-Schleife aus der du nicht mehr rausgehst oder abfragst ob es neue GUI-Messages gibt.

    Von dem Fall, das man Zeile 60 bis 93 in einem Case formulieren könnte, mal abgesehen hast du mehrere Möglichkeiten wie du das ganze lösen kannst.
    Entweder du fragst in der While-Schleife die Messages von GUIGetMsg() ab (nicht zu empfehlen), oder du strukturierst dein Programm um (eher zu empfehlen) oder du setzt gleich auf den OnEventMode.

    Beim EventMode musst du dich um die Nachrichten überhaupt nicht kümmern, du gibst am Anfang an welche Funktion ausgeführt werden soll beim Klick des Buttons und er führt sie anschließen auch aus, ungeachtet dessen ob du dich momentan in einer Schleife befindest oder nicht.

  • Funktionen zur Anzeige von Markierungen

    • alpines
    • 18. März 2017 um 17:52
    Zitat von autoiter

    Wie kann man das mit GDI+ machen?

    Das rausfaden? Schau dir doch mal deine _GDIPlus_PenCreate an. Du übergibst ihr dort eine Farbe die du erstellen willst.
    Die Farbe ist 4 Byte (ARGB). Der Alphakanal gibt die Deckung der Farbe an. FF = volle Deckung, 00 = transparent.
    Du kannst die Boxen aktualisieren (Graphics clearen) und mit einem neuen Pinsel transparenter zeichnen.

    Wenn du deine Fenster verschiebst werden die Boxen übrigens nicht aktualisiert, du musst also noch die WM_MOVE hooken mit GUIRegisterMsg.

  • Treeview Pfad setzen

    • alpines
    • 18. März 2017 um 16:43

    @AutoMit

    Oh man, volle Kanne übersehen das du TreeViews meinst und ich von ListViews gesprochen hab, tut mir echt leid.
    Ja, das was du suchst ist dann natürlich (wie könnte es auch anders sein) ControlTreeView!

    Da kannst du den Pfad einfach direkt angeben und er wird auch geklickt.
    Im Anhang ist mal ein Beispiel von mir wie einfach das ganze tatsächlich ist.

    Dateien

    pack.rar 848 Byte – 180 Downloads
  • Treeview Pfad setzen

    • alpines
    • 18. März 2017 um 15:36
    Zitat von AutoMit

    Ich weiß leider nicht, wie. Daher meine Bitte um ein Beispiel.

    Im Moment kann ich keins schreiben aber heute abend. Wenn bis dahin niemand was geopstet hat schau ich mal ob ich für dich ein gutes Beispiel geskriptet kriege.

  • Treeview Pfad setzen

    • alpines
    • 18. März 2017 um 15:11

    Kannst du nicht nach dem 1. Item im Pfad suchen und dann seine Unteritems durchgehen?

  • Treeview Pfad setzen

    • alpines
    • 18. März 2017 um 14:45

    Ist es denn deine eigene GUI oder eine Fremd-GUI?

    Bei deiner eigenen GUI musst du als $hWnd den Return von GUICtrlListView nehmen. Sollte die Funktion mit fremden GUIs möglich sein, dann brauchst du das Handle mittels ControlGetHandle und der dazugehörigen Klasse.

    Das $iIndex (NICHT $hItem) musst du herausfinden. Du kannst ja durch alle Einträge durchgehen und die Texte (bzw. Pfade) vergleichen.
    Hast du den übereinstimmenden Pfad, so nimmst du den Index beim Click.

  • Treeview Pfad setzen

    • alpines
    • 18. März 2017 um 14:21
    Zitat von AutoMit

    ansteuern. Ich weiß leider nicht wie ich das selektieren kann.

    Du willst das Item anklicken? https://www.autoitscript.com/autoit3/docs/l…w_ClickItem.htm

  • Treeview Pfad setzen

    • alpines
    • 18. März 2017 um 14:13
    Zitat von AutoMit

    Ermittelt den kompletten Pfad bis hin zum gewünschten Item

    Willst du ein Item in einer neuen Position im TreeView platzieren? Lösch das alte und erstell es im neuen würde ich sagen.
    Kannst ja alle ListView-Elemente durchgehen und wenn du ein Objekt gefunden hast gehst du alle Subobjekte durch und immer so weiter bis du am Ende deines Pfades angekommen bist.
    Dort kannst du das neue erstellen.

  • XLM Datei auslesen und Werte in anzeigen

    • alpines
    • 18. März 2017 um 12:33
    Zitat von cloudseven80

    Vielleicht reicht es auch schon, wenn Du es so programmierst, dass es die gewünschten Werte in Strings legt

    Willst du die XML-Nodes geparsed in Strings haben oder was?

    Vielleicht wäre es ja schön wenn du uns einen Ausschnitt der Quelldatei zeigst und eine GUI provisorisch mit Paint aufmalst wie die Daten aussehen sollen, dann können wir uns darunter sicherlich besser was vorstellen.

  • AutoIt Nachschlagewerk

    • alpines
    • 18. März 2017 um 10:59
    Zitat von Candyland

    habe nicht erwartet im Autoitforum jemanden zu begegnen der Freiheits liebend ist

    Hältst du uns für geisteskranke Psychopathen oder warum hast du damit nicht gerechnet?

  • Timer, Klappe die Zweite

    • alpines
    • 18. März 2017 um 09:48

    Du hättest den selben Thread nehmen und keinen neuen aufmachen sollen da es sich ja letztlich um das gleiche Skript handelt (weißte halt fürs nächste Mal besser).
    Codestruktur ist sehr hübsch geworden aber bei der Variablennennung kräuseln sich mir wieder die Fingernägel. $Label7, $Button1 sowas sollte man auf jeden Fall vermeiden.

  • Fenster ansprechen

    • alpines
    • 18. März 2017 um 07:39

    Ja aber hat das Signalfenster denn wirklich keinen Titel? Ich kannes mir nicht wirklich vorstellen.

    Außerdem gibt es (wenn du dir mal WinList anschaut mit Fenstern des Titels "") unfassbar viele Fenster also wirst du mit dieser Abfrage kein Gewinn erzielen.

  • Fenster ansprechen

    • alpines
    • 17. März 2017 um 14:44

    Wie meinst du das mit dem schließen? Außerdem verstehe ich nicht mal was diese WinWaitActive("") bringen soll.

  • Fenster ansprechen

    • alpines
    • 17. März 2017 um 13:03

    Lies es erst komplett bevor du dich daran versuchst:

    Das ist ein Parameter für die ControlId wo du einen sogenannten regulären Ausdruck geben kannst der dann das passende Control sucht.
    Probier mal ob du damit auch das Objekt geklickt kriegst.

    Bei den Windows8 Klassen bin ich mir ziemlich unsicher, ich weiß nicht ob er das richtige matchen wird beim RegEx

    AutoIt
    ControlClick($hWnd, '', '[REGEXPCLASS:WindowsForms10\.Window\.8\.app\..+?\..+?; INSTANCE:4]')


    _________________

    Ich sehe gerade das du völlig auf die Klasse verzichten kannst da ja ein "NAME" vergeben wurde. Nimm lieber das! Damit kannst du es 100%ig identifizieren.
    Im Grunde kannst du eigentlich immer die Advanced Class selber herauskopieren und musst nicht es selber zusammenbauen. Das übernimmt schon AutoIt Window Info.

    AutoIt
    ControlClick($hWnd, "", "[NAME:Panel_sound]")
  • mehrere Browserfenster auf mehrere Bildschirme

    • alpines
    • 17. März 2017 um 05:52

    Läuft alles jetzt? Dann setz doch bitte den grünen Haken für erledigt / gelöst in dem du dem Threadstatus im 1. Beitrag anpasst.

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™