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

  • ComboBox - Align im Editfeld und Controlhöhe beî Dropdown-Style

    • BugFix
    • 20. März 2016 um 09:50

    Die Combobox/Ex-UDF bieten viele Funktionen - aber keine Möglichkeit zur Textausrichtung. Bei reinen Texteinträgen ist meist linksbündig passend aber wenn man Zahlenwerte in der Box hat ist rechtsbündig zu bevorzugen. Die Funktion zum Ausrichten habe ich hier erstellt.
    Die zweite Funktion betrifft die optische Darstellung der Box (im Dropdown-Style). Für ein geschmeidiges Aussehen möchte man Ctrl, die nebeneinander liegen, auch gern in einer Höhe zeichnen. Dazu war bisher auch keine Funktion vorgesehen.

    Das nachfolgende Bsp. zeigt die Funktionen und ihre Anwendung:

    AutoIt
    #include <GuiComboBox.au3>
    
    
    Example()
    
    
    Func Example()
    	Local $hGUI = GUICreate("Example", 300, 200)
    	Local $idComboBox = GUICtrlCreateCombo("Item 1", 10, 10, 185)
    	GUICtrlSetData($idComboBox, "Item 2|Item 3", "Item 2")
    
    
    	_GuiCtrlComboBox_SetCtrlHeight($idComboBox, 40)
    	Local $idClose = GUICtrlCreateButton("Close", 210, 10, 85, 40)
    
    
    	GUISetState(@SW_SHOW, $hGUI)
    
    
    	Sleep(2000)
    	; zentriert
    	_GuiCtrlComboBox_SetEditAlign($idComboBox, 1)
    	Sleep(2000)
    	; rechts
    	_GuiCtrlComboBox_SetEditAlign($idComboBox, 2)
    	Sleep(2000)
    	; links
    	_GuiCtrlComboBox_SetEditAlign($idComboBox, 0)
    
    
    	While 1
    		Switch GUIGetMsg()
    			Case -3, $idClose
    				ExitLoop
    		EndSwitch
    	WEnd
    	GUIDelete($hGUI)
    EndFunc  ;==>Example
    
    
    
    
    ; #FUNCTION# ====================================================================================================================
    ; Name ..........: _GuiCtrlComboBox_SetCtrlHeight
    ; Description ...: Sets the height of a collapsed combobox with style $CBS_DROPDOWN.
    ; Syntax ........: _GuiCtrlComboBox_SetCtrlHeight($_iID_Hwnd, $_iHeight)
    ; Parameters ....: $_iID_Hwnd           - ID or Handle of the combobox.
    ;                  $_iHeight            - The new height of the collapsed combobox.
    ; Return values .: None
    ; Author ........: BugFix
    ; Remarks .......: #include <GuiComboBox.au3> required
    ; ===============================================================================================================================
    Func _GuiCtrlComboBox_SetCtrlHeight($_iID_Hwnd, $_iHeight)
    	Local $hWnd = $_iID_Hwnd
    	If Not IsHWnd($hWnd) Then $hWnd = GUICtrlGetHandle($hWnd)
    	_GUICtrlComboBox_SetItemHeight($hWnd, $_iHeight)
    	Local $iHeightReal = (WinGetPos($hWnd))[3]
    	_GUICtrlComboBox_SetItemHeight($hWnd, $_iHeight-($iHeightReal-$_iHeight))
    EndFunc  ;==>_GuiCtrlComboBox_SetCtrlHeight
    
    
    
    
    ; #FUNCTION# ====================================================================================================================
    ; Name ..........: _GuiCtrlComboBox_SetEditAlign
    ; Description ...: Sets the horizontal alignment in the edit field of a combobox
    ; Syntax ........: _GuiCtrlComboBox_SetEditAlign($_iID_Hwnd[, $_iAlign = -1])
    ; Parameters ....: $_iID_Hwnd           - The combobox's ID or handle.
    ;                  $_iAlign             - [optional] Default is -1 (ES_LEFT).
    ;                                       possible values:
    ;                                       keyword "Default" or -1 or 0 = ES_LEFT
    ;                                                                  1 = ES_CENTER
    ;                                                                  2 = ES_RIGHT
    ; Return values .: None
    ; Author ........: BugFix
    ; Remarks .......: #include <GuiComboBox.au3> required
    ; ===============================================================================================================================
    Func _GuiCtrlComboBox_SetEditAlign($_iID_Hwnd, $_iAlign=-1)
    	Local Const $_ES_LEFT = 0, $_ES_CENTER = 1, $_ES_RIGHT = 2
    	If $_iAlign < -1 Or $_iAlign > 2 Then $_iAlign = $_ES_LEFT
    	$_iAlign = ($_iAlign = -1 Or $_iAlign = Default) ? $_ES_LEFT : $_iAlign
    	Local $hWnd = $_iID_Hwnd
    	If Not IsHWnd($hWnd) Then $hWnd = GUICtrlGetHandle($hWnd)
    	Local $tInfo, $iStyleXOR = 0
    	_GUICtrlComboBox_GetComboBoxInfo($hWnd, $tInfo)
    	Local $hEdit = DllStructGetData($tInfo, "hEdit")
    	Local $sFuncName = @AutoItX64 ? "GetWindowLongPtrW" : "GetWindowLongW"
    	Local $iStyle = (DllCall("user32.dll", "long_ptr", $sFuncName, "hwnd", $hEdit, "int", 0xFFFFFFF0))[0]
    	If BitAND($iStyle, $_ES_CENTER) Then $iStyleXOR = $_ES_CENTER
    	If BitAND($iStyle, $_ES_RIGHT) Then $iStyleXOR = $_ES_RIGHT
    	$sFuncName = @AutoItX64 ? "SetWindowLongPtrW" : "SetWindowLongW"
    	DllCall("user32.dll", "long_ptr", $sFuncName, "hwnd", $hEdit, "int", 0xFFFFFFF0, "long_ptr", BitOR(BitXOR($iStyle, $iStyleXOR), $_iAlign))
    	DllCall("user32.dll", "bool", "RedrawWindow", "hwnd", $hEdit, "struct*", 0, "handle", 0, "uint", 5)
    EndFunc  ;==>_GuiCtrlComboBox_SetEditAlign
    Alles anzeigen
  • Schnellstartleiste

    • BugFix
    • 19. März 2016 um 20:26

    Schau mal, ob dir das hier weiter hilft. Bitte beachte, dass die Objektnamen abhängig von der Sprachversion sind. Also unbedingt vorher die Namen auslesen.
    Es bezieht sich zwar auf Win7, aber die Mechanismen sind m.W. nicht verändert bei Win10.

  • WLAN-Adapter wird deaktiviert

    • BugFix
    • 19. März 2016 um 13:18
    Zitat von bazii

    Deinstallation des AV-Browserplugins von AVast

    Das Plugin ist nicht installiert.

    Zitat von UEZ

    Energie Optionen den WLAN Adapter nach 10 Minuten einfach abschalten

    Die Möglichkeit habe ich jetzt abgeschaltet. Der Adapter bleibt also dauerhaft angeschaltet.
    Damit lief jetzt auch bei mehrstündigen YT-Gucken alles ohne Probleme. Nur einmal ist das WLAN abgeschmiert - das war vermutlich ein Konfigurationsfehler. Ich habe meiner FritzBox eine Range an IP für DHCP gegeben und hatte eine dieser IPs als fixe IP für den WLAN-Adapter vergeben. Habe ich jetzt gefixed und (klopf-klopf) jetzt scheint alles i.O.

  • Größe von ComboBox einstellen nicht möglich? Height-Parameter ohne Funktion?

    • BugFix
    • 15. März 2016 um 09:48
    Zitat von Bioshade

    soweit ich weiß und hier nachstellen konnte - immer 8 Pixel

    Bei mir waren es 6 Pixel. Und da ich annahm, dass das vom WindowStyle (Fensterränder) abhängt, bin ich auf die variable Variante gewechselt.
    Besser ist es noch, den Workaround in eine Funktion auszulagern - sieht dann so aus:

    AutoIt
    #include <GUIConstantsEx.au3>
    #include <GuiComboBox.au3>
    
    
    Example()
    Func Example()
    	Local $hGUI = GUICreate("Example", 300, 200)
    	Local $idComboBox = GUICtrlCreateCombo("Item 1", 10, 10, 185)
    	GUICtrlSetData($idComboBox, "Item 2|Item 3", "Item 2")
    
    
    	; Äußere Höhe der eingeklappten ComboBox festlegen
    	_GuiCtrlComboBox_SetCtrlHeight($idComboBox, 40)
    	; Button in gleicher Höhe
    	Local $idClose = GUICtrlCreateButton("Close", 210, 10, 85, 40)
    
    
    	GUISetState(@SW_SHOW, $hGUI)
    	Local $sComboRead = ""
    	While 1
    		Switch GUIGetMsg()
    			Case $GUI_EVENT_CLOSE, $idClose
    				ExitLoop
    		EndSwitch
    	WEnd
    	GUIDelete($hGUI)
    EndFunc   ;==>Example
    
    
    
    
    ; Requires: #include <GuiComboBox.au3>
    Func _GuiCtrlComboBox_SetCtrlHeight($_iID_Hwnd, $_iHeight)
    	Local $hWnd = $_iID_Hwnd
    	If Not IsHWnd($hWnd) Then $hWnd = GUICtrlGetHandle($hWnd)
    	_GUICtrlComboBox_SetItemHeight($hWnd, $_iHeight)
    	Local $iHeightReal = (WinGetPos($hWnd))[3]
    	_GUICtrlComboBox_SetItemHeight($hWnd, $_iHeight-($iHeightReal-$_iHeight))
    EndFunc
    Alles anzeigen
  • Größe von ComboBox einstellen nicht möglich? Height-Parameter ohne Funktion?

    • BugFix
    • 15. März 2016 um 09:17

    Ich habe mal einen Workaround erstellt, wie du das Lösen kannst:

    AutoIt
    #include <GUIConstantsEx.au3>
    #include <GuiComboBox.au3>
    
    
    Example()
    Func Example()
    	Local $hGUI = GUICreate("Example", 300, 200)
    	Local $idComboBox = GUICtrlCreateCombo("Item 1", 10, 10, 185)
    	Local $hWnd = GUICtrlGetHandle($idComboBox)
    
    
    	; geplante Höhe für Box (eingeklappt) und Button daneben
    	Local $iBoxHeight = 40
    	; Höhe als Item-Höhe setzen (real etwas größer als die gewünschte Höhe, da Input ein Child ist)
    	_GUICtrlComboBox_SetItemHeight($hWnd, $iBoxHeight)
    	; reale Größe abfragen
    	$iHeightReal = (WinGetPos($hWnd))[3]
    	; Größe neu festlegen aus Abweichung
    	_GUICtrlComboBox_SetItemHeight($hWnd, $iBoxHeight-($iHeightReal-$iBoxHeight))
    	; Button in gleicher Höhe
    	Local $idClose = GUICtrlCreateButton("Close", 210, 10, 85, $iBoxHeight)
    
    
    	GUICtrlSetData($idComboBox, "Item 2|Item 3", "Item 2")
    	; Display the GUI.
    
    
    	GUISetState(@SW_SHOW, $hGUI)
    	Local $sComboRead = ""
    	; Loop until the user exits.
    	While 1
    		Switch GUIGetMsg()
    			Case $GUI_EVENT_CLOSE, $idClose
    				ExitLoop
    		EndSwitch
    	WEnd
    	; Delete the previous GUI and all controls.
    	GUIDelete($hGUI)
    EndFunc   ;==>Example
    Alles anzeigen
  • WLAN-Adapter wird deaktiviert

    • BugFix
    • 15. März 2016 um 08:21

    Kleiner Zwischenbericht, der mich noch mehr verwirrt:
    Ich habe zwei WLAN-Netze, eines von Router-A und das zweite als AccessPoint (Router-B hat Internet-Verbindung zu Router-A per LAN). Bisher war die Verbindung über WLAN-B, da gab es aber Geschwindigkeitsprobleme (älteres Router-Modell) und deshalb hatte sich meine Tochter jetzt mit WLAN-A verbunden.
    Also ein Abbrechen der Internetverbindung kann ich mir durchaus mal vorstellen - aber eine Deaktivierung des WLAN-Adapters ist für mich irgendwie surreal. Wenn ich das selbst machen möchte, muss ich entweder zum Wizard wechseln oder ein entsprechendes Skript schreiben. Von alleine kann sich doch Hardware nicht deaktivieren...
    Aber ich werde mal alle Punkte durchgehen, die bisher angesprochen wurden.

  • Größe von ComboBox einstellen nicht möglich? Height-Parameter ohne Funktion?

    • BugFix
    • 14. März 2016 um 21:47

    Mein Workaround:
    Hol dir das Handle des Inputs der Combo (haben wir im Forum schon mehrfach abgehandelt) und Resize dann die Größe mit WinMove.

  • WLAN-Adapter wird deaktiviert

    • BugFix
    • 14. März 2016 um 21:45

    Ich werde das mal Step-By-Step durchexerzieren, vielleicht kann ich die Ursache einkreisen. Gebe dann Bescheid.

  • Größe von ComboBox einstellen nicht möglich? Height-Parameter ohne Funktion?

    • BugFix
    • 14. März 2016 um 21:37

    Ich denke, du hast den Sinn des Height-Parameters falsch verstanden. Es ist nicht die Höhe der Box.

    Zitat von AutoIt-Hilfe

    Under Windows XP/2003 Windows will adjust the size of the opened combo. On other Windows versions you can define this size with the "height" parameter if the default value is not BIG enough to contain at least one line.

    Es geht um die Höhe der geöffneten Box.

  • WLAN-Adapter wird deaktiviert

    • BugFix
    • 14. März 2016 um 19:42

    Hi,
    ein seltsames Phänomen:
    Wenn meine Tochter auf dem Laptop das Internet nutzt - kein Problem bis zu dem Zeitpunkt, da sie Youtube schaut. Es vergehen ca. 10 min. und dann bricht die Internet-Verbindung ab, kein WLAN mehr. Der WLAN-Adapter kann auch nicht per Netzwerkreparatur zum Leben erweckt werden. Nur Neustarten hilft.
    Dieses Problem besteht erst, seit ich den Rechner neu installiert habe. Es wurden aber dieselben Treiber, wie vorher verwendet. Also Hardware und Software wie vorher.
    Stelle ich die Verbindung per LAN her gibt es keine Probleme.
    Kann sich jemand das irgendwie erklären?

  • TaskScheduler UDF Windows 2008R2 -- taskenabled

    • BugFix
    • 14. März 2016 um 13:34

    Probiere mal über WMI:

    AutoIt
    $sComputer = "."
    $objWMI = ObjGet("winmgmts:" & "{impersonationLevel=impersonate}!\\" & $sComputer & "\root\cimv2")
    $colScheduledJobs = $objWMI.ExecQuery ("Select * from Win32_ScheduledJob")
    For $objJob In $colScheduledJobs
        ConsoleWrite("Command: " & $objJob.Command & @LF _
        & "Days Of Month: " & $objJob.DaysOfMonth & @LF _
        & "Days Of Week: " & $objJob.DaysOfWeek & @LF _
        & "Description: " & $objJob.Description & @LF _
        & "Elapsed Time: " & $objJob.ElapsedTime & @LF _
        & "Install Date: " & $objJob.InstallDate & @LF _
        & "Interact with Desktop: " & $objJob.InteractWithDesktop & @LF _
        & "Job ID: " & $objJob.JobId & @LF _
        & "Job Status: " & $objJob.JobStatus & @LF _
        & "Name: " & $objJob.Name & @LF _
        & "Notify: " & $objJob.Notify & @LF _
        & "Owner: " & $objJob.Owner & @LF _
        & "Priority: " & $objJob.Priority & @LF _
        & "Run Repeatedly: " & $objJob.RunRepeatedly & @LF _
        & "Start Time: " & $objJob.StartTime & @LF _
        & "Status: " & $objJob.Status & @LF _
        & "Time Submitted: " & $objJob.TimeSubmitted & @LF _
        & "Until Time: " & $objJob.UntilTime & @LF)
    Next
    Alles anzeigen

    Edit:
    Funktioniert aber nicht, wenn der Task mit dem Wizard erstellt wurde: It cannot return information about jobs that are either created by or modified by the Scheduled Task wizard.

  • Gui Frage/Problem

    • BugFix
    • 13. März 2016 um 19:44

    In deiner Funktion start() ist eine Endlosschleife, somit kannst du nie mehr etwas anderes tun nach Aufruf der Funktion. :whistling:

  • For Next Schleife - Wert der Variablen

    • BugFix
    • 9. März 2016 um 21:18

    Also ich versteh die ganze Aufregung nicht. Auch wenn die Zählervariable nach der Schleife den Wert "Hundekuchen" hätte, wer die Welt noch in Ordnung. Das reguläre Leben der Zählervariable endet beim Austritt aus der Schleife, sie ist nämlich lokal und bedarf deshalb auch keiner Deklaration. Und aus diesem kühlen Grunde ist jede Diskussion über den Inhalt einer toten Variable aus meiner Sicht absolut überflüssig.

  • Meine Reaktion auf gewisse Nutzer ...

    • BugFix
    • 5. März 2016 um 09:08

    Damit niemand mehr auf die Idee kommt, noch weitere Ausführungen machen zu müssen, kommt jetzt das Schloß vor.

    [CLOSED]

  • SciTE Umlaufe in Console

    • BugFix
    • 5. März 2016 um 09:01

    Das Codepage Problem ist leider ein Mysterium, dass sich in irgendeiner Form durch alle Editoren zieht.
    Der sauberste Weg ist, in die erste Zeile eines jeden erstellten Skriptes die zu verwendende CP einzutragen (als Kommentar). Dann wird das auch von jedem Editor sauber interpretiert.

  • SciTE Umlaufe in Console

    • BugFix
    • 4. März 2016 um 21:11

    Also es gehört, wie du richtig gemacht hast, in die SciTEUser.properties. Diese überschreibt Einstellungen der globalen properties.
    Da "output.code.page" keine Wirkung hatte, war die Datei in einer anderen Kodierung als der Output. Das muss beides zusammen passen.
    Leider ist bei SciTE die Voreinstellung nicht UTF8. Somit sind die Skripte der Autoit - Gemeinde weltweit unterschiedlich kodiert, was sich aber nur in Kommentaren bemerkbar machen kann.

    Wen du für "output.code.page" und "code.page" denselben Wert verwendest, solltest du keine Probleme haben. Ausnahme: Eine Datei ist in anderer Kodierung gespeichert als in SciTE vorgegeben.

  • SciTE Umlaufe in Console

    • BugFix
    • 4. März 2016 um 14:39

    Dazu gibt es die Property output.code.page 
    Als Standard verwendet SciTE "0", d.h. die Systemeinstellung wird verwendet. Probleme tauchen in der Regel auf, wenn eine Datei explizit als UTF8 gespeichert wurde und daraus Inhalte ausgegeben werden. Obwohl UTF8 natürlich Umlaute darstellen kann, sind das nicht dieselben Werte, wie bei Win1252.
    Um UTF8 zu verwenden brauchst du 65001.
    Für ISO 8859-15 gilt: 1000.

  • Such es Dir selbst - Das ist doch einfach - deutsches Forum - englische Lösungen

    • BugFix
    • 1. März 2016 um 22:35

    @AutoMit
    DANKE, dass du so wohlwollend auf meine Bitte eingegangen bist!

    Ich habe somit den Kanal gestrichen voll und bin nicht gewillt auch nur noch einen Jota Zeit auf dich zu verschwenden. Egal was man dir an Hinweisen auf den Weg gibt, du nimmst es nicht ernst.

    Sollte ich in Zukunft keine Besserung in deinem Forenauftritt erkennen, werde ich mich mit dem Admin über deine Zukunft hier beraten.
    Ich bin nicht gewillt, das Forum zu einer von dir initiierten Neverending-Diskussionsrunde verkommen zu lassen!

    Und unterlasse BITTE jedweden Kommentar hierzu!

  • Such es Dir selbst - Das ist doch einfach - deutsches Forum - englische Lösungen

    • BugFix
    • 1. März 2016 um 20:47

    AutoMit: Sie das bitte auch als Antwort für deine Konversation an.

    Ich denke, es ist notwendig hier nochmal einige fundamentale Dinge, die eigentlich selbstverständlich sein sollten, zu klären.

    WAS ist ein Forum?
    In einem Forum finden sich Interessierte zu einem bestimmten Thema (in unserem Fall AutoIt) zusammen um sich auszutauschen.

    WIE ist die Struktur in einem Forum?
    Eindeutig auf gar keinen Fall demokratisch, sondern hierarchisch. Irgendwann hat sich jemand entschlossen ein Forum zu gründen, hat Geld in die Hand genommen für Hardware und Hosting, viel Zeit investiert um die Forumssoftware den Bedürfnissen anzupassen. Das ist der Admin - der Godfather des Forums, die unumstößliche Autorität. Was er sagt, ist Gesetz.
    Da ein Admin nicht ständig online sein kann, er aber auf Einhaltung der (von ihm zum Gesetz erklärten) Regeln achten muss, sind im Laufe der Zeit Moderatoren hinzugekommen. Diese haben eine gewisse Eigenständigkeit, werden aber nichts tun, was der Grundidee des Forums zuwider läuft.
    Dann gibt es noch die PowerUser. Forenmitglieder die nicht nur durch eine Vielzahl von Antworten in Erscheinung treten, sondern in erster Linie durch sehr qualifizierte Hilfe.
    Eines haben alle genannten gemeinsam: Sie opfern ihre Freizeit um anderen zu helfen.

    Es ist ein Irrtum zu glauben, dass ein Anrecht auf Hilfe besteht. Es gibt überhaupt nichts, auf das man in einem Forum Anspruch hätte. Ausgenommen natürlich die Nettiquette - aber man kann durch ungeschicktes Auftreten auch den ruhigsten Charakter mal zum Entgleisen bringen (nehme mich da nicht aus).

    Es gibt im Forum extra einen gepinnten Beitrag: Wie poste ich richtig.
    Und mehrfach haben User in deinen Threads aufgelistet, was ein Hilfeersuchen beinhalten muss, damit man darauf eingeht.

    Du siehst in jedem, der dir statt einer fertigen Lösung einen Link oder einen andersartigen Hinweis gibt, als "Gegner", der dir Böses will? Du solltest dringend deine Einstellung ändern. Und es ist nicht verwunderlich, dass vereinzelt die Antworten etwas pampig werden, wenn du nicht auf Lösungshinweise eingehst.

    Fazit:
    Dir will mit Sicherheit niemand was "Böses". Wie auch, wir kennen dich doch gar nicht als Mensch, du bist einfach ein User. Aber wenn du dich immer auf den Schlips getreten fühlst, ist das auch nicht förderlich.
    Ich möchte dich auch bitten, keinesfalls sofort auf diesen Post zu antworten, sondern erst mal eine Nacht drüber zu schlafen und ernsthaft nachzudenken.

  • Treeview in FireFox ansteuern - iMacros für FireFox - per Tastatur steuern

    • BugFix
    • 1. März 2016 um 18:32

    So - Es reicht!
    @AutoMit: Warum gibt es ein deutsches Forum? - Weil unsere Muttersprache deutsch ist. Zum Kommunizieren ist die Verwendung selbiger ein ungeheuerer Vorteil.
    Das ändert aber nichts daran, dass Programmiersprachen englisch sind und deshalb das Programmieren selbst auch über englisch abgewickelt wird.
    Alles andere wurde schon mindestens einmal von jedem Threadteilnehmer dargelegt.

    Eigentlich wollte ich diesen Thread schon nach deinem Startpost schließen. Deine Frage gehört zu 90% in ein Firefox-Forum. Das Aufrufen eines browsergebundenen Befehls per AutoIt ist nun nicht ernsthaft ein Grund diese Frage im AutoIt-Forum zu stellen.

    [CLOSED]

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™