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. bernd456

Beiträge von bernd456

  • ClipBoard Manager v5.5

    • bernd456
    • 24. Januar 2012 um 12:54

    Ich bekam beim Doppelclick immer nur die erste Zeile des ListView in das Clipboard.
    (Möglicherweise hat win7-64 den Index nicht mehr 0-basiert sondern 1-basiert.)
    Auf jedenfall wenn ich
    >> _ClipBoard_SetData(_GUICtrlListView_GetItemText($lvCBData, $aInfo[3])) <<
    in
    >> _ClipBoard_SetData(_GUICtrlListView_GetItemText($lvCBData, $aInfo[4]))<<
    ändere funktioniert der Doppelclick wie gewohnt.

    Gruß
    Bernd

  • Simulierter Mausklick

    • bernd456
    • 26. Juli 2011 um 10:12

    Hallo
    ich mach das immr mit
    ControlClick(...)

    vorher mit Au3Info
    Fenstername und mausposition ermitteln

    Gruß
    Bernd

  • ClipBoard Manager v5.5

    • bernd456
    • 29. August 2010 um 19:16

    Hallo PrideRage
    Besten Dank für das Klasse Tool.
    Ich hab es für meine Bedürfnisse angepasst.

    Das Clipboard-Fenster ist immer im Vordergrund
    es wird die Anwendung abgefragt, in die die Clipboardzeile eingefügt werden soll
    Die Clipboarddatei kann nicht gelöscht werden
    Ergänzungen werden unten angefügt
    per Doppelclick auswählen, dann erhält die Zielanwendung den Focus und die Textzeile wird mittels STrg+V eingefügt

    [autoit]


    GUICtrlDelete($lvCBData)
    $lvCBData = GUICtrlCreateListView("ClipBoard Data", 10, 76, 734, 600)
    If _FileReadToArray(@ScriptDir & "\ClipBoard Data\cbdata.txt", $cbfiledata) Then
    TrayTip("Datei gelesen!", "Das Script konnte erfolgreich aus der Datei lesen.", 1)
    For $x = 1 To $cbfiledata[0]
    GUICtrlCreateListViewItem($cbfiledata[$x], $lvCBData)
    Next
    EndIf

    [/autoit]

    Frage: wenn ich den ListView aktualisiere, ändert sich die Spaltenbreite – warum?
    Ich vermute mal, dass es eine elegantere Art gibt, den ListView zu aktualisieren.

    Ich hab gerade erst gelesen, daß Du keine veränderte version hier sehen willst.
    Und bitte ladet keine von euch "gemoddete" Version hoch, das bedeutet, das wenn ihr einen ähnlichen Manager macht, ist es nicht verboten, aber wenn der Manager sehr viel von meinem Source-Code beinhaltet, dann macht es bitte nicht, Danke!

    Ich hab den geänderte Sourcecode rausgenommen.

  • Textfarbe

    • bernd456
    • 27. August 2010 um 08:36

    Hallo
    kann mir bitte jemand erklären, wie ich den thread von "offen" auf "gelöst" setzen kann

    Bernd

  • Textfarbe

    • bernd456
    • 27. August 2010 um 08:26

    Hallo Greenhorn


    besten Dank für Deine Antwort


    Das wird ein bischen dauern, bis ich das verstanden habe.


    So bin ich sicher, daß es nicht einen einfachen Befehl gibt, den nur bisher übersehen habe.


    Danke

    Bernd

  • Textfarbe

    • bernd456
    • 26. August 2010 um 14:59

    Hallo
    ich hab ne Lösung gefunden.

    aus _GUICtrlRichEdit_GetCharColor.au3

    Richtextedit anlegen
    per Strg+C und Strg+v das zu untersuchende Zeichen reinkopieren
    Cursor nach links verschieben
    und Farbe angeben lassen
    Das erzeugte Fenster wieder löschen


    [autoit]


    Local $hGui, $iMsg, $btnNext, $iStep = 0, $lblMsg, $hRichEdit
    $hGui = GUICreate("Example (" & StringTrimRight(@ScriptName,4) &")", 320, 350, -1, -1)
    $hRichEdit = _GUICtrlRichEdit_Create($hGui, "This is a test.", 10, 10, 300, 220, _
    BitOR($ES_MULTILINE, $WS_VSCROLL, $ES_AUTOVSCROLL))
    GUISetState()

    [/autoit][autoit][/autoit][autoit]

    _GuiCtrlRichEdit_SetText($hRichEdit, "")
    sleep(1000)
    send("^v")
    send("{LEFT 2}")
    sleep(1000)
    $iCol = _GuiCtrlRichEdit_GetCharColor($hRichEdit)
    GUIDelete($hGui)

    [/autoit][autoit][/autoit][autoit][/autoit]

    Scheint mir ein bischen um die Ecke gedacht
    Ich lass den Thread noch mal offen. Vielleicht bekomme ich noch einen Hinweis, wie ich die Farbe direkt aus der Zwischenablage bekommen kann.

    Bis hierher schon mal vielen Dank
    Bernd

  • Textfarbe

    • bernd456
    • 26. August 2010 um 11:23

    Hallo
    besten dank für die schnelle Hilfe.

    >>Es ist doch ein externes Fenster. Was machst du dann mit GUICtrlGetHandle?<<
    weil ich es nicht besser wußte. Wenn ich den Hinweis richtig verstehe, funktioniert das wohl nur bei selbst erstellten Fenstern.

    Ich hab , um von der speziellen Anwendung wegzukommen, mal die Datei count-for.au3 mit Wordpad geöffnet
    aus AutoIT Info
    Basic Window Info
    Title: count-for.au3 - WordPad
    Class: WordPadClass


    Class RICHEDIT50W
    Instance 1
    ClassnameNN RICHEDIT50W1
    Name
    Advanced Mode [CLASS:RICHEDIT50W; INSTANCE:1]
    ID 59648
    Text
    Position 0, 30
    Size 1610, 863
    ControlClick Coords 606, 339
    Style 0x550081C4
    ExStyle 0x00000210
    Handle 0x00071252


    in Wordpad hab ich mal "Platform: " markiert und ggfs die Farbe auf Rot geändert

    $hwnd = ControlGetHandle("count-for","","[CLASS:RICHEDIT50W; INSTANCE:1]")
    $iCol = ControlCommand("count-for","","[CLASS:RICHEDIT50W; INSTANCE:1]","GetSelected", "");funktioniert mit wordpad, aber das ist der Text, nicht die Textfarbe

    $iCol = _GUICtrlRichEdit_GetCharColor($hwnd) ; funktioniert nicht mit Wordpad kommt immer "0" egal ob der Text schwarz oder rot ist
    $iCol = ControlCommand("count-for","","[CLASS:RICHEDIT50W; INSTANCE:1]","SendCommandID", "EM_GETSELTEXT"); funktioniert nicht mit wordpad
    $iCol = ControlCommand("count-for","","[CLASS:RICHEDIT50W; INSTANCE:1]","SendCommandID", "EM_GETCHARFORMAT,1,7"); funktioniert nicht mit wordpad


    Für Hilfe bin ich dankbar

    Bernd
    P.S. gibt es evtl. die Möglichkeit der Zwischenablage die Farbinformation zu entnehmen?
    oder wenn ich einer Variablen den text der Zwischenablage zuweise?

  • Textfarbe

    • bernd456
    • 25. August 2010 um 20:55

    Hallo
    ich bin ein Anfänger AutoIT-ist. Programmierkenntnis Medium
    Hab das Forum durchsucht, aber keine passende Antwort gefunden.
    ich lese aus einer Fremdanwendung Text aus
    den dort markierten Text kann ich mit
    send("^c") krieg ich den Text in die Zwischenablage
    Frage1: wie kriege ich die Farbe des Textes in der Zwischenablage raus?
    oder - wenn ich einer Variablen den Text aus der Zwischenablage zugewiesen habe, enthält die Variable dann die Textfarbe?

    Frage2: die Fremdanwendung ist ein Richtext
    aus AutoIt v3 Window Info

    Basic Window Info
    Title: CS-STATIK - 'blabla
    Class: Afx:400000:0


    Basic Control Info
    Class: RICHEDIT50W
    Instance: 1


    Control
    Class RICHEDIT50W
    Instance 1
    ClassnameNN RICHEDIT50W1
    Name
    Advanced Mode [CLASS:RICHEDIT50W; INSTANCE:1]
    ID 4677
    Text
    Position 209, 147
    Size 1463, 828
    ControlClick Coords 718, 511
    Style 0x502011C4
    ExStyle 0x00000000
    Handle 0x00110E08


    Folgende Versuche bringen nichts:
    Local $hand = WinGetHandle('',"[CLASS:RICHEDIT50W; INSTANCE:1]") ; bringt 0
    $hand = GUICtrlGetHandle("4677") ; bringt 0
    _GUICtrlRichEdit_GetSelText("0x00110E08") ;False
    _GUICtrlRichEdit_GetCharColor(0x00110E08) ; bringt 0 egal ob schwarz oder blau

    kann mir jemand weiterhelfen?
    Gruß
    Bernd

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™