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

Beiträge von BugFix

  • Englisches Tastaturlayout in deutsches "Autoitlayout"

    • BugFix
    • 17. Januar 2013 um 10:29

    Du kannst auch mal die Suche bemühen. Auto-Ersetzen wurde bereits vor Jahren als Bsp.-Skript gepostet.

  • _GetUniCodeSymbol

    • BugFix
    • 16. Januar 2013 um 22:57

    Hi,
    ab und zu braucht man ja ein paar Unicode-Symbole.
    Bisher habe ich dann meist Word geöffnet und aus der Symboltabelle rausgesucht.
    Hier habe ich mal eine kleine Oberfläche gebastelt mit Symbolbeschreibung und Symbolanzeige für ein paar gängige Symbole. Symbol oder der Codewert läßt sich kopieren.

    Spoiler anzeigen
    [autoit]


    #Region - TimeStamp
    ; 2013-01-16 22:47:12 v 0.1
    #EndRegion - TimeStamp

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

    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <GuiListBox.au3>

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

    Global $aUniCode[101][2] = [ _
    ["Kleiner Kreis",8226], _
    ["Drei Punkte",8230], _
    ["Hoch-Strich",8242], _
    ["Hoch-Striche",8243], _
    ["Pfeil links",8592], _
    ["Pfeil hoch",8593], _
    ["Pfeil rechts",8594], _
    ["Pfeil runter",8595], _
    ["Pfeil links-rechts",8596], _
    ["Pfeil runter",8629], _
    ["Pfeil links",8656], _
    ["Pfeil hoch",8657], _
    ["Pfeil rechts",8658], _
    ["Pfeil runter",8659], _
    ["Pfeil links-rechts",8660], _
    ["All-Quantor",8704], _
    ["Teil-Quantor",8706], _
    ["Einige-Quantor",8707], _
    ["Leere Menge",8709], _
    ["Element von",8712], _
    ["Nicht Element von",8713], _
    ["enthält Elemente",8715], _
    ["Logisches Produkt",8719], _
    ["Logisches Summe",8721], _
    ["unendlich",8734], _
    ["Konjunktor",8743], _
    ["Adjunktor",8744], _
    ["Intersektion",8745], _
    ["Union",8746], _
    ["Similar",8764], _
    ["annähernd",8773], _
    ["asymetrisch",8776], _
    ["ungleich",8800], _
    ["identisch",8801], _
    ["kleiner-gleich",8804], _
    ["größer-gleich",8805], _
    ["Teilmenge",8834], _
    ["Übermenge",8835], _
    ["Keine Teilmenge",8836], _
    ["Teil- oder ganze Menge",8838], _
    ["Über- oder ganze Menge",8839], _
    ["Geöffnete Klammer",8249], _
    ["Geschlossene Klammer",8250], _
    ["alpha",945], _
    ["beta",946], _
    ["gamma",947], _
    ["delta",948], _
    ["epsilon",949], _
    ["zeta",950], _
    ["eta",951], _
    ["theta",952], _
    ["iota",953], _
    ["kappa",954], _
    ["lambda",955], _
    ["mu",956], _
    ["nu",957], _
    ["xi",958], _
    ["omicron",959], _
    ["pi",960], _
    ["rho",961], _
    ["final sigma",962], _
    ["sigma",963], _
    ["tau",964], _
    ["upsilon",965], _
    ["phi",966], _
    ["chi",967], _
    ["psi",968], _
    ["omega",969], _
    ["alpha (Kapital)",913], _
    ["beta (Kapital)",914], _
    ["gamma (Kapital)",915], _
    ["delta (Kapital)",916], _
    ["epsilon (Kapital)",917], _
    ["zeta (Kapital)",918], _
    ["eta (Kapital)",919], _
    ["theta (Kapital)",920], _
    ["iota (Kapital)",921], _
    ["kappa (Kapital)",922], _
    ["lambda (Kapital)",923], _
    ["mu (Kapital)",924], _
    ["nu (Kapital)",925], _
    ["xi (Kapital)",926], _
    ["omicron (Kapital)",927], _
    ["pi (Kapital)",928], _
    ["rho (Kapital)",929], _
    ["sigma (Kapital)",931], _
    ["tau (Kapital)",932], _
    ["upsilon (Kapital)",933], _
    ["phi (Kapital)",934], _
    ["chi (Kapital)",935], _
    ["psi (Kapital)",936], _
    ["omega (Kapital)",937], _
    ["bullet = black small circle",8226], _
    ["horizontal ellipsis",8230], _
    ["prime = minutes = feet",8242], _
    ["double prime = sec. = inch.",8243], _
    ["overline = spacing overscore",8254], _
    ["fraction slash",8260], _
    ["theta symbol",977], _
    ["upsilon with hook symb.",978], _
    ["pi symbol",982]]
    Global $GUI, $List, $lbUniCode, $btCopy, $inCode, $index, $sData = ''

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

    $GUI = GUICreate("UniCode - Symbole", 345, 400)
    $List = GUICtrlCreateList("", 24, 15, 210, 358, BitOR($WS_BORDER, $WS_VSCROLL))
    $lbUniCode = GUICtrlCreateLabel("", 260, 15, 60, 60, BitOR($SS_CENTER,$SS_CENTERIMAGE))
    GUICtrlSetFont(-1, 18)
    GUICtrlSetBkColor(-1, 0xFFFFFF)
    $inCode = GUICtrlCreateInput('', 260, 90, 60, 20, BitOR(0x0001,0x0800)) ; $ES_CENTER, $ES_READONLY
    GUICtrlCreateGroup('', 245, 115, 90, 100)
    $btCopy = GUICtrlCreateButton('Copy', 260, 130, 60, 20)
    $rSymbol = GUICtrlCreateRadio('Symbol', 265, 160, 60)
    GUICtrlSetState(-1, $GUI_CHECKED)
    GUICtrlCreateRadio('Code', 265, 185, 60)
    For $i = 0 To UBound($aUniCode) -1
    $sData &= $aUniCode[$i][0] & '|'
    Next
    GUICtrlSetData($List, StringTrimRight($sData,1))

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

    GUISetState()

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

    While 1
    Switch GUIGetMsg()
    Case -3
    Exit
    Case $List
    $index = _GUICtrlListBox_GetCurSel($List)
    GUICtrlSetData($lbUniCode, ChrW($aUniCode[$index][1]))
    GUICtrlSetData($inCode, $aUniCode[$index][1])
    Case $btCopy
    $index = _GUICtrlListBox_GetCurSel($List)
    If $index > -1 Then
    If BitAND(GUICtrlRead($rSymbol), $GUI_CHECKED) Then
    ClipPut(ChrW($aUniCode[$index][1]))
    Else
    ClipPut($aUniCode[$index][1])
    EndIf
    EndIf
    EndSwitch
    WEnd

    [/autoit]


    Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

    Bilder

    • unicode_symbole.png
      • 8,7 kB
      • 351 × 428

    Dateien

    _GetUniCodeSymbol.au3 4,05 kB – 374 Downloads
  • _DateAdd - fehlerhaft (falscher Alarm!)

    • BugFix
    • 16. Januar 2013 um 17:57

    OMG, ich verfalle wohl in Senilität. :pinch:
    Da ist mir doch in den Formatstring ein Leerzeichen mit reingerutscht - das ist dann natürlich falsch, man sieht es bloß in der Ausgabe schlecht. :whistling:

  • _DateAdd - fehlerhaft (falscher Alarm!)

    • BugFix
    • 16. Januar 2013 um 17:51

    OK, an die 64Bit Geschichte hatte ich nicht gedacht, aber selbst mit: "#AutoIt3Wrapper_UseX64=N" passiert dasselbe.

  • _DateAdd - fehlerhaft (falscher Alarm!)

    • BugFix
    • 16. Januar 2013 um 17:33

    Hi,

    nachdem ich hier bald an mir gezweifelt habe, ließ ich mir mal den Error zur Funktion mit ausgeben und war geplättet: "2013/01/16" wäre demnach kein gültiges Datum!

    Bitte prüft mal auf euren Systemen, ob derselbe Fehler auftritt.
    Verwendete AutoIt Version: 3.3.8.1

    [autoit]

    #include <Date.au3>

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

    $sDate = StringFormat('%d/%02d/%02d ', @YEAR, @MON, @MDAY)
    ConsoleWrite('Datum alt: ' & $sDate & @LF)
    $sNewDate = _DateAdd('Y', -1, $sDate)
    ConsoleWrite('Datum neu: ' & $sNewDate & ' Error: ' & @error & @LF)

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

    #cs -- Ausgabe:
    Datum alt: 2013/01/16
    Datum neu: 0 Error: 3
    #ce

    [/autoit]
  • Welchen E-Mail Anbieter nutzt ihr?

    • BugFix
    • 16. Januar 2013 um 11:12

    Da bietest du aber eine sehr mickrige Auswahl an. :D

    Du solltest hinzufügen: Mailserver eures Internet-Providers
    Das sind dann wenigstens "echte" EMail-Acc und nicht diese stark beschränkten Freemailer.
    Ich mag es nicht, nur wenn ich mal 30..40 MB anhängen will extra auf einen Fileserver zu hosten. Mein Acc erlaubt Anhänge bis 50 MB und das ist OK. In meinem Vertrag sind 100 Mail-Acc enthalten, jeweils 15 GB Onlinespeicher, damit habe ich die gesamte Verwandschaft und Freunde ausgestattet, somit können wir großzügige Datenanhänge untereinander per Mail tauschen. :thumbup:

  • Element dynamisch erzeugen.

    • BugFix
    • 16. Januar 2013 um 10:27

    Mal als Tipp zur Gestaltung:

    Du brauchst die Button gar nicht. Verwende für Status und Auftrag einfach Comboboxen. Das entspricht hier genau der Anwendungsform - Auswahl aus begrenzter Zahl an Vorgaben.

  • hilfe,switch befehl wird nicht unterstützt

    • BugFix
    • 15. Januar 2013 um 19:13

    Ist denn das Skript schon als au3-Datei gespeichert? Erst dann funktioniert Syntax-Highlighting.

  • Wie kommt ihr auf euren Nicknamen?

    • BugFix
    • 15. Januar 2013 um 17:27

    Meinen Nick hatte ich ganz gezielt gesucht.
    Kriterien sollten sein:
    - markant und leicht zu merken
    - möglichst kurz
    - mit tieferem Sinn
    - nicht allzu häufig in Benutzung
    Ja, so bin ich dann bei BugFix gelandet vor ca. 10 Jahren und dabei geblieben.

    Einige kennen ja auch meinen 2-ten Nick (aber nicht hier im Forum, sondern im restlichen Web) - McBarby.
    Auch gezielt ausgewählt:
    Mc - bedeutet ja "Sohn/Tochter des.."
    und
    Barby - das Nest, wo ich wohne. ;)

  • Input Boxen in SubItems eines ListView Controls

    • BugFix
    • 14. Januar 2013 um 19:28
    Zitat von IPU

    BugFix, du wiederholst nur, was Alcros bereits eingebracht hat.


    He, ich bin ein alter Mann, da setzt schon die Demenz ein ... :whistling:
    Aber wenn ihm das nicht ausreicht... nunja, dann soll der TE sich halt die Eierlegende Wollmilchsau stricken. :D

  • Input Boxen in SubItems eines ListView Controls

    • BugFix
    • 14. Januar 2013 um 19:20

    Wie wäre es denn hiermit: https://autoit.de/index.php?page…49074#post49074 ;)

  • SQLlite query mit GROUP BY und Like?

    • BugFix
    • 13. Januar 2013 um 20:51

    Ungetestet:
    Erstelle eine zweite Tabelle und definiere die Feldlänge für den Datumseintrag auf 10 Zeichen. Dann die Werte kpl. übertragen. Mit ein bischen Glück werden einfach die jeweils ersten 10 Zeichen (nur Datum) übertragen und der Rest abgeschnitten.
    Wie gesagt: ungetestet.

  • InputBox : OnEvent NUR bei Enter

    • BugFix
    • 13. Januar 2013 um 12:15

    Wenn du ENTER als solches abfangen möchtest, kannst du auch mit _IsPressed() arbeiten:

    Spoiler anzeigen
    [autoit]


    #include <WinAPI.au3>
    #include <Misc.au3>

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

    Opt("GUIOnEventMode", 1)

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

    Global $gui = GUICreate('Test', 300, 170)
    GUISetOnEvent(-3, '_end')
    Global $Input1 = GUICtrlCreateInput("Input1", 16, 8, 121, 21)
    Global $Input2 = GUICtrlCreateInput("Input2", 16, 40, 121, 21)
    Global $iIDFocus

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

    GUISetState()

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

    While 1
    If _IsPressed('0D') Then
    $iIDFocus = _WinAPI_GetDlgCtrlID(_WinAPI_GetFocus())
    Switch $iIDFocus
    Case $Input1
    MsgBox(0, 'ENTER', 'Input1')
    Case $Input2
    MsgBox(0, 'ENTER', 'Input2')
    EndSwitch
    EndIf
    Sleep(50)
    WEnd

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

    Func _end()
    Exit
    EndFunc

    [/autoit]
  • [Tutorial] Sauber Programmieren

    • BugFix
    • 12. Januar 2013 um 17:29

    Da bekanntermaßen AutoIt in dieser Richtung keine Vorschriften macht, ist es aus meiner Sicht in erster Linie wichtig, dass ein Skript eindeutig lesbar ist.
    Ob ich ein Control mit $id.. oder $c.. oder auch mit einem Controlbezogenen Kürzel ( $btn.., $cb.., $in.. ) beginne, ist dabei eher nebensächlich.
    Aber einen Punkt sehe ich genau, wie bereits diskutiert: Ein $h.. gehört nur vor ein echtes Handle, niemals soll es für eine ID eingesetzt werden.

  • Character Editor

    • BugFix
    • 11. Januar 2013 um 15:41

    Du verwendest mehrere Bilder innerhalb einer Kategorie - legst aber nicht fest, welches davon genutzt werden soll. Mit _ArraySearch(..'Kategorie'..) findest du immer nur das erste Vorkommen, d.h. alle weiteren Bilder werden nie genutzt.

  • Character Editor

    • BugFix
    • 11. Januar 2013 um 14:59
    Zitat von chesstiger

    Ja, kannst du. Dafür war diese Spalte wahrscheinlich auch von BugFix gedacht. ^^


    Stimmt, SpaltenIndex "0" hatte ich als Kategorie angesehen. ;)

  • Verzeichnis erstellen - Benutzerdefiniertes Zahlenformat

    • BugFix
    • 11. Januar 2013 um 14:32

    Viel einfacher mit StringFormat

    [autoit]

    $i = 46
    ConsoleWrite(StringFormat("%03d", $i) & @LF)

    [/autoit]
  • Character Editor

    • BugFix
    • 11. Januar 2013 um 14:01
    Zitat von YaeroxXO

    Also ich kann von Bild 1 auf Bild 2 wechseln nur zurück geht noch nicht - (davon steht auch noch nichts im Code)


    Du machst es zu kompliziert:

    [autoit]

    Func _draw_images($iDirection) ; == nicht $sDirection sondern $iDirection verwenden ("1" für nächstes oder "-1" für voriges, Start ist bei "0")
    Local $iSex = $MALE
    If BitAND(GUICtrlRead($hRadio_female), $GUI_CHECKED) Then $iSex = $FEMALE
    Local Static $currIndex = 0 ; == speichert die Position im Array
    If ($iDirection = 1 And $currIndex = UBound($aHimages)) Or _
    ($iDirection = -1 And $currIndex = 0) Then $iDirection = 0
    $currIndex += ($iDirection)
    _GDIPlus_GraphicsDrawImageRect($hGraphic, $aHimages[$currIndex][$iSex], $aPos[0][0], $aPos[0][1], 96, 96)
    EndFunc

    [/autoit]
  • Character Editor

    • BugFix
    • 11. Januar 2013 um 13:22

    Gestalte dein Array sinnvoller:

    [autoit]

    Global Enum $FEMALE = 1, $MALE

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

    Global $aHimages[2][3] = [_
    ['neck', _GDIPlus_ImageLoadFromFile(@ScriptDir & "\files\images\female\neck\1.png"), _GDIPlus_ImageLoadFromFile(@ScriptDir & "\files\images\male\neck\1.png")], _
    ['neck', _GDIPlus_ImageLoadFromFile(@ScriptDir & "\files\images\female\neck\2.png"), _GDIPlus_ImageLoadFromFile(@ScriptDir & "\files\images\male\neck\2.png")]]

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

    ; == weibliche Images sind jetzt immer zu finden an $aHimages[n][$FEMALE] und die männlichen Gegenstücke an $aHimages[n][$MALE]

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

    ; == so sieht dann die Draw-Funktion aus:
    Func _draw_defaults($iSex)
    ; Local $aSlots[12] = ["neck", "face", "nose", "mouth", "ears", "eyebrows", "beard", "eyes", "tattoo", "kemono", "hair", "glasses"]
    For $i = 0 To UBound($aHimages) - 1
    _GDIPlus_GraphicsDrawImageRect($hGraphic, $aHimages[$i][$iSex], $aPos[0][0], $aPos[0][1], 96, 96)
    Next
    EndFunc

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

    ; == Welchen Sinn sollte diese Abfrage haben?
    If $aHimages[$i][2] = $aSlots[0] Then..
    ; == ist doch kpl. überflüssig, da du nicht in Abhängigkeit von dem Array-Slots agierst.

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


    Deine Case-Abfrage zu den Radios sollte so aussehen:

    [autoit]

    Case $hRadio_female, $hRadio_male
    If BitAND(GUICtrlRead($hRadio_female), $GUI_CHECKED) Then
    _draw_defaults($FEMALE)
    Else
    _draw_defaults($MALE)
    EndIf

    [/autoit]
  • Zwei Webcam-Anwendungen

    • BugFix
    • 10. Januar 2013 um 21:33

    Folgendes:

    Die Anwendungen, die einen Zugriff auf die Webcam integriert haben, scheinen sich den Zugang zu "reservieren". So passiert folgendes:
    - System frisch gestartet
    --- Webcam.au3 aufrufen --> funktioniert tadellos
    - Start Skype (ohne die Camfunktion dort zu starten)
    --- Webcam.au3 aufrufen --> Cam läßt sich nicht aktivieren
    - Skype beenden (kpl. schließen)
    --- Webcam.au3 aufrufen --> Cam läßt sich weiterhin nicht aktivieren
    - System neu starten
    -- allles wie vorab

    Ich habe nicht die geringste Ahnung, wie diese "Reservierung" und somit Blockade der Cam stattfindet und wie man sie umgehen kann. Aber ich vermute, dass nicht die avicap32.dll verwendet wird und somit der Aufruf der Dll ins Leere läuft, da ein Bindung an die Hardware durch die "fremde" Software unterbunden wird.

    Fazit:
    Die webcam.au3 funktioniert tadellos - bis eine andere Software erstmals Zugriff auf die Cam erlangt hat. Dann ist sie bis zum nächsten Neustart tot. :wacko:

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™